X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FcodeGen%2FSMRep.lhs;h=f323c1be1dd83e75a4ed84b2cb20ef5b7a47fcb4;hb=fe3321f99f4d9c9ff40429a7ac290f8ef7ca3297;hp=88a1cca731f448957a8e25ec1c1fcbfcf522fa2b;hpb=5ddee764beb312933256096d03df7c3ec47ac452;p=ghc-hetmet.git diff --git a/compiler/codeGen/SMRep.lhs b/compiler/codeGen/SMRep.lhs index 88a1cca..f323c1b 100644 --- a/compiler/codeGen/SMRep.lhs +++ b/compiler/codeGen/SMRep.lhs @@ -19,7 +19,7 @@ module SMRep ( CgRep(..), nonVoidArg, argMachRep, primRepToCgRep, primRepHint, isFollowableArg, isVoidArg, - isFloatingArg, isNonPtrArg, is64BitArg, + isFloatingArg, is64BitArg, separateByPtrFollowness, cgRepSizeW, cgRepSizeB, retAddrSizeW, @@ -33,7 +33,7 @@ module SMRep ( profHdrSize, thunkHdrSize, smRepClosureType, smRepClosureTypeInt, - rET_SMALL, rET_VEC_SMALL, rET_BIG, rET_VEC_BIG + rET_SMALL, rET_BIG ) where #include "HsVersions.h" @@ -200,11 +200,6 @@ isFloatingArg DoubleArg = True isFloatingArg FloatArg = True isFloatingArg _ = False -isNonPtrArg :: CgRep -> Bool --- Identify anything which is one word large and not a pointer. -isNonPtrArg NonPtrArg = True -isNonPtrArg other = False - is64BitArg :: CgRep -> Bool is64BitArg LongArg = True is64BitArg _ = False @@ -309,7 +304,7 @@ smRepClosureType :: SMRep -> Maybe ClosureType smRepClosureType (GenericRep _ _ _ ty) = Just ty smRepClosureType BlackHoleRep = Nothing -smRepClosureTypeInt :: SMRep -> Int +smRepClosureTypeInt :: SMRep -> StgHalfWord smRepClosureTypeInt (GenericRep False 1 0 Constr) = CONSTR_1_0 smRepClosureTypeInt (GenericRep False 0 1 Constr) = CONSTR_0_1 smRepClosureTypeInt (GenericRep False 2 0 Constr) = CONSTR_2_0 @@ -344,9 +339,7 @@ smRepClosureTypeInt rep = panic "smRepClosuretypeint" -- We export these ones -rET_SMALL = (RET_SMALL :: Int) -rET_VEC_SMALL = (RET_VEC_SMALL :: Int) -rET_BIG = (RET_BIG :: Int) -rET_VEC_BIG = (RET_VEC_BIG :: Int) +rET_SMALL = (RET_SMALL :: StgHalfWord) +rET_BIG = (RET_BIG :: StgHalfWord) \end{code}