Warning Police
[ghc-hetmet.git] / compiler / nativeGen / MachCodeGen.hs
index dc79d95..557278c 100644 (file)
@@ -42,7 +42,6 @@ import FastTypes      ( isFastTrue )
 import Constants       ( wORD_SIZE )
 
 #ifdef DEBUG
-import Outputable      ( assertPanic )
 import Debug.Trace     ( trace )
 #endif
 
@@ -62,7 +61,7 @@ import Data.Int
 
 type InstrBlock = OrdList Instr
 
-cmmTopCodeGen :: CmmTop -> NatM [NatCmmTop]
+cmmTopCodeGen :: RawCmmTop -> NatM [NatCmmTop]
 cmmTopCodeGen (CmmProc info lab params blocks) = do
   (nat_blocks,statics) <- mapAndUnzipM basicBlockCodeGen blocks
   picBaseMb <- getPicBaseMaybeNat
@@ -3182,13 +3181,13 @@ outOfLineFloatOp mop res args
         
       if localRegRep res == F64
         then
-          stmtToInstrs (CmmCall target [(res,FloatHint)] args NoC_SRT)
+          stmtToInstrs (CmmCall target [(res,FloatHint)] args CmmUnsafe)
         else do
           uq <- getUniqueNat
           let 
             tmp = LocalReg uq F64 KindNonPtr
           -- in
-          code1 <- stmtToInstrs (CmmCall target [(tmp,FloatHint)] args NoC_SRT)
+          code1 <- stmtToInstrs (CmmCall target [(tmp,FloatHint)] args CmmUnsafe)
           code2 <- stmtToInstrs (CmmAssign (CmmLocal res) (CmmReg (CmmLocal tmp)))
           return (code1 `appOL` code2)
   where
@@ -3323,8 +3322,8 @@ genCCall target dest_regs args = do
                F64 -> unitOL (MOV rep (OpReg xmm0) (OpReg r_dest))
                rep -> unitOL (MOV rep (OpReg rax) (OpReg r_dest))
          where 
-               rep = cmmRegRep dest
-               r_dest = getRegisterReg dest
+               rep = localRegRep dest
+               r_dest = getRegisterReg (CmmLocal dest)
        assign_code many = panic "genCCall.assign_code many"
 
     return (load_args_code     `appOL`