diff options
Diffstat (limited to 'compiler/GHC/CmmToAsm/SPARC/CodeGen/Gen32.hs')
-rw-r--r-- | compiler/GHC/CmmToAsm/SPARC/CodeGen/Gen32.hs | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/compiler/GHC/CmmToAsm/SPARC/CodeGen/Gen32.hs b/compiler/GHC/CmmToAsm/SPARC/CodeGen/Gen32.hs index ee67bd4a9d..8d2c6c33f6 100644 --- a/compiler/GHC/CmmToAsm/SPARC/CodeGen/Gen32.hs +++ b/compiler/GHC/CmmToAsm/SPARC/CodeGen/Gen32.hs @@ -26,7 +26,6 @@ import GHC.Platform.Reg import GHC.Cmm import Control.Monad (liftM) -import GHC.Driver.Session import OrdList import Outputable @@ -49,14 +48,13 @@ getSomeReg expr = do getRegister :: CmmExpr -> NatM Register getRegister (CmmReg reg) - = do dflags <- getDynFlags - let platform = targetPlatform dflags - return (Fixed (cmmTypeFormat (cmmRegType dflags reg)) + = do platform <- getPlatform + return (Fixed (cmmTypeFormat (cmmRegType platform reg)) (getRegisterReg platform reg) nilOL) getRegister tree@(CmmRegOff _ _) - = do dflags <- getDynFlags - getRegister (mangleIndexTree dflags tree) + = do platform <- getPlatform + getRegister (mangleIndexTree platform tree) getRegister (CmmMachOp (MO_UU_Conv W64 W32) [CmmMachOp (MO_U_Shr W64) [x,CmmLit (CmmInt 32 _)]]) = do @@ -483,15 +481,15 @@ trivialFCode -> NatM Register trivialFCode pk instr x y = do - dflags <- getDynFlags + platform <- getPlatform (src1, code1) <- getSomeReg x (src2, code2) <- getSomeReg y tmp <- getNewRegNat FF64 let promote x = FxTOy FF32 FF64 x tmp - pk1 = cmmExprType dflags x - pk2 = cmmExprType dflags y + pk1 = cmmExprType platform x + pk2 = cmmExprType platform y code__2 dst = if pk1 `cmmEqType` pk2 then |