X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fcmm%2FCmm.hs;h=0d1876e0e61068db72f6c8c766dc48b1d08c4a72;hb=d5e821c43df34fa228727e7f4e9453d0fde39fb6;hp=d3bdeada1e2890404cb0baeccec8d1351d044926;hpb=c614ed092823906e3e71421f3767facd7a83a6cc;p=ghc-hetmet.git diff --git a/compiler/cmm/Cmm.hs b/compiler/cmm/Cmm.hs index d3bdead..0d1876e 100644 --- a/compiler/cmm/Cmm.hs +++ b/compiler/cmm/Cmm.hs @@ -17,10 +17,10 @@ module Cmm ( CmmReg(..), cmmRegRep, CmmLit(..), cmmLitRep, LocalReg(..), localRegRep, - BlockId(..), + BlockId(..), BlockEnv, GlobalReg(..), globalRegRep, - node, nodeReg, spReg, hpReg, + node, nodeReg, spReg, hpReg, spLimReg ) where #include "HsVersions.h" @@ -29,6 +29,7 @@ import MachOp import CLabel import ForeignCall import Unique +import UniqFM import FastString import Data.Word @@ -275,6 +276,8 @@ newtype BlockId = BlockId Unique instance Uniquable BlockId where getUnique (BlockId u) = u +type BlockEnv a = UniqFM {- BlockId -} a + ----------------------------------------------------------------------------- -- Static Data ----------------------------------------------------------------------------- @@ -351,9 +354,10 @@ data GlobalReg ) -- convenient aliases -spReg, hpReg, nodeReg :: CmmReg +spReg, hpReg, spLimReg, nodeReg :: CmmReg spReg = CmmGlobal Sp hpReg = CmmGlobal Hp +spLimReg = CmmGlobal SpLim nodeReg = CmmGlobal node node :: GlobalReg