X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FnativeGen%2FRegArchX86.hs;h=c6c3050a647986c504d9948aa0e296db7d638a9c;hb=97169c5dd31537b28f5f8ad08cd6cdf82c1ecefd;hp=bba1458bd70205aa9028dca7502dc51bbb934c12;hpb=ad94d40948668032189ad22a0ad741ac1f645f50;p=ghc-hetmet.git diff --git a/compiler/nativeGen/RegArchX86.hs b/compiler/nativeGen/RegArchX86.hs index bba1458..c6c3050 100644 --- a/compiler/nativeGen/RegArchX86.hs +++ b/compiler/nativeGen/RegArchX86.hs @@ -6,13 +6,6 @@ -- See MachRegs.hs for the actual trivColorable function used in GHC. -- -{-# OPTIONS -w #-} --- The above warning supression flag is a temporary kludge. --- While working on this module you are encouraged to remove it and fix --- any warnings in the module. See --- http://hackage.haskell.org/trac/ghc/wiki/CodingStyle#Warnings --- for details - module RegArchX86 ( classOfReg, regsOfClass, @@ -30,11 +23,11 @@ import UniqSet classOfReg :: Reg -> RegClass classOfReg reg = case reg of - Reg c i -> c + Reg c _ -> c - RegSub SubL16 r -> ClassG16 - RegSub SubL8 r -> ClassG8 - RegSub SubL8H r -> ClassG8 + RegSub SubL16 _ -> ClassG16 + RegSub SubL8 _ -> ClassG8 + RegSub SubL8H _ -> ClassG8 -- | Determine all the regs that make up a certain class. @@ -96,18 +89,18 @@ regAlias reg -- 16 bit subregs alias the whole reg - RegSub SubL16 r@(Reg ClassG32 i) + RegSub SubL16 r@(Reg ClassG32 _) -> regAlias r -- 8 bit subregs alias the 32 and 16, but not the other 8 bit subreg - RegSub SubL8 r@(Reg ClassG32 i) + RegSub SubL8 r@(Reg ClassG32 _) -> mkUniqSet $ [ r, RegSub SubL16 r, RegSub SubL8 r ] - RegSub SubL8H r@(Reg ClassG32 i) + RegSub SubL8H r@(Reg ClassG32 _) -> mkUniqSet $ [ r, RegSub SubL16 r, RegSub SubL8H r ] -- fp - Reg ClassF64 i + Reg ClassF64 _ -> unitUniqSet reg _ -> error "regAlias: invalid register"