FIX #1910: fix code generated for GDTOI on x86_32
[ghc-hetmet.git] / compiler / nativeGen / RegCoalesce.hs
index f3b19ad..e64dc09 100644 (file)
@@ -1,4 +1,3 @@
-
 -- | Register coalescing.
 --
 
@@ -62,12 +61,12 @@ slurpJoinMovs :: LiveCmmTop -> Bag (Reg, Reg)
 slurpJoinMovs live
        = slurpCmm emptyBag live
  where 
-       slurpCmm   rs  CmmData{}                = rs
-       slurpCmm   rs (CmmProc _ _ _ blocks)    = foldl' slurpComp  rs blocks
-       slurpComp  rs (BasicBlock i blocks)     = foldl' slurpBlock rs blocks
-       slurpBlock rs (BasicBlock i instrs)     = foldl' slurpLI    rs instrs
-               
-       slurpLI    rs (Instr _  Nothing)        = rs
+       slurpCmm   rs  CmmData{}                         = rs
+       slurpCmm   rs (CmmProc _ _ _ (ListGraph blocks)) = foldl' slurpComp  rs blocks
+       slurpComp  rs (BasicBlock _ blocks)              = foldl' slurpBlock rs blocks
+        slurpBlock rs (BasicBlock _ instrs)              = foldl' slurpLI    rs instrs
+                
+        slurpLI    rs (Instr _ Nothing)                 = rs
        slurpLI    rs (Instr instr (Just live))
                | Just (r1, r2) <- isRegRegMove instr
                , elementOfUniqSet r1 $ liveDieRead live