X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2FcodeGen%2FCgCon.lhs;h=89a4e84400be7b40fe0c31edf43463d93aaafba8;hp=0fb90b0d77c663e5f8ec93d4bc1a0d34b48fe02a;hb=a02e7f40afc1aab7fe466f949f505c1d7250713d;hpb=f8f4cb3f3a46e0495917a927cefe906531b7b38e diff --git a/compiler/codeGen/CgCon.lhs b/compiler/codeGen/CgCon.lhs index 0fb90b0..89a4e84 100644 --- a/compiler/codeGen/CgCon.lhs +++ b/compiler/codeGen/CgCon.lhs @@ -46,10 +46,9 @@ import PrelInfo import Outputable import ListSetOps import Util +import Module import FastString import StaticFlags - -import Control.Monad \end{code} @@ -172,7 +171,7 @@ buildDynCon binder _ con [arg_amode] , (_, CmmLit (CmmInt val _)) <- arg_amode , let val_int = (fromIntegral val) :: Int , val_int <= mAX_INTLIKE && val_int >= mIN_INTLIKE - = do { let intlike_lbl = mkRtsGcPtrLabel (sLit "stg_INTLIKE_closure") + = do { let intlike_lbl = mkCmmGcPtrLabel rtsPackageId (fsLit "stg_INTLIKE_closure") offsetW = (val_int - mIN_INTLIKE) * (fixedHdrSize + 1) -- INTLIKE closures consist of a header and one word payload intlike_amode = CmmLit (cmmLabelOffW intlike_lbl offsetW) @@ -183,7 +182,7 @@ buildDynCon binder _ con [arg_amode] , (_, CmmLit (CmmInt val _)) <- arg_amode , let val_int = (fromIntegral val) :: Int , val_int <= mAX_CHARLIKE && val_int >= mIN_CHARLIKE - = do { let charlike_lbl = mkRtsGcPtrLabel (sLit "stg_CHARLIKE_closure") + = do { let charlike_lbl = mkCmmGcPtrLabel rtsPackageId (fsLit "stg_CHARLIKE_closure") offsetW = (val_int - mIN_CHARLIKE) * (fixedHdrSize + 1) -- CHARLIKE closures consist of a header and one word payload charlike_amode = CmmLit (cmmLabelOffW charlike_lbl offsetW) @@ -439,7 +438,7 @@ cgDataCon data_con = do { code_blks <- getCgStmts the_code ; emitClosureCodeAndInfoTable cl_info [] code_blks } where - the_code = do { ticky_code + the_code = do { _ <- ticky_code ; ldvEnter (CmmReg nodeReg) ; body_code }