SPARC NCG: Do general 64 bit addition and conversion
[ghc-hetmet.git] / compiler / nativeGen / NCGMonad.hs
index e5da5a5..98bffb6 100644 (file)
@@ -1,10 +1,3 @@
-{-# 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/Commentary/CodingStyle#Warnings
--- for details
-
 -- -----------------------------------------------------------------------------
 --
 -- (c) The University of Glasgow 1993-2004
@@ -28,7 +21,6 @@ module NCGMonad (
 import BlockId
 import CLabel          ( CLabel, mkAsmTempLabel )
 import MachRegs
-import MachOp          ( MachRep )
 import UniqSupply
 import Unique          ( Unique )
 import DynFlags
@@ -43,6 +35,7 @@ data NatM_State = NatM_State {
 
 newtype NatM result = NatM (NatM_State -> (result, NatM_State))
 
+unNat :: NatM a -> NatM_State -> (a, NatM_State)
 unNat (NatM a) = a
 
 mkNatM_State :: UniqSupply -> Int -> DynFlags -> NatM_State
@@ -68,7 +61,7 @@ mapAccumLNat :: (acc -> x -> NatM (acc, y))
                -> [x]
                -> NatM (acc, [y])
 
-mapAccumLNat f b []
+mapAccumLNat _ b []
   = return (b, [])
 mapAccumLNat f b (x:xs)
   = do (b__2, x__2)  <- f b x
@@ -102,10 +95,10 @@ getBlockIdNat = do u <- getUniqueNat; return (BlockId u)
 getNewLabelNat :: NatM CLabel
 getNewLabelNat = do u <- getUniqueNat; return (mkAsmTempLabel u)
 
-getNewRegNat :: MachRep -> NatM Reg
+getNewRegNat :: Size -> NatM Reg
 getNewRegNat rep = do u <- getUniqueNat; return (mkVReg u rep)
 
-getNewRegPairNat :: MachRep -> NatM (Reg,Reg)
+getNewRegPairNat :: Size -> NatM (Reg,Reg)
 getNewRegPairNat rep = do 
   u <- getUniqueNat
   let lo = mkVReg u rep; hi = getHiVRegFromLo lo
@@ -114,7 +107,7 @@ getNewRegPairNat rep = do
 getPicBaseMaybeNat :: NatM (Maybe Reg)
 getPicBaseMaybeNat = NatM (\state -> (natm_pic state, state))
 
-getPicBaseNat :: MachRep -> NatM Reg
+getPicBaseNat :: Size -> NatM Reg
 getPicBaseNat rep = do
   mbPicBase <- getPicBaseMaybeNat
   case mbPicBase of