summaryrefslogtreecommitdiff
path: root/compiler/GHC/StgToCmm.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/StgToCmm.hs')
-rw-r--r--compiler/GHC/StgToCmm.hs20
1 files changed, 10 insertions, 10 deletions
diff --git a/compiler/GHC/StgToCmm.hs b/compiler/GHC/StgToCmm.hs
index 40a43b3e06..268a1a6a16 100644
--- a/compiler/GHC/StgToCmm.hs
+++ b/compiler/GHC/StgToCmm.hs
@@ -177,7 +177,7 @@ cgTopBinding dflags (StgTopStringLit id str) = do
BS.writeFile bFile str
return bFile
emitDecl decl
- addBindC (litIdInfo dflags id mkLFStringLit lit)
+ addBindC (litIdInfo (targetPlatform dflags) id mkLFStringLit lit)
cgTopRhs :: DynFlags -> RecFlag -> Id -> CgStgRhs -> (CgIdInfo, FCode ())
@@ -190,7 +190,7 @@ cgTopRhs dflags _rec bndr (StgRhsCon _cc con args)
cgTopRhs dflags rec bndr (StgRhsClosure fvs cc upd_flag args body)
= ASSERT(isEmptyDVarSet fvs) -- There should be no free variables
- cgTopRhsClosure dflags rec bndr cc upd_flag args body
+ cgTopRhsClosure (targetPlatform dflags) rec bndr cc upd_flag args body
---------------------------------------------------------------
@@ -216,28 +216,28 @@ mkModuleInit cost_centre_info this_mod hpc_info
cgEnumerationTyCon :: TyCon -> FCode ()
cgEnumerationTyCon tycon
- = do dflags <- getDynFlags
+ = do platform <- getPlatform
emitRODataLits (mkLocalClosureTableLabel (tyConName tycon) NoCafRefs)
[ CmmLabelOff (mkLocalClosureLabel (dataConName con) NoCafRefs)
- (tagForCon dflags con)
+ (tagForCon platform con)
| con <- tyConDataCons tycon]
-cgDataCon :: DataCon -> FCode ()
--- Generate the entry code, info tables, and (for niladic constructor)
+-- | Generate the entry code, info tables, and (for niladic constructor)
-- the static closure, for a constructor.
+cgDataCon :: DataCon -> FCode ()
cgDataCon data_con
- = do { dflags <- getDynFlags
+ = do { profile <- getProfile
; platform <- getPlatform
; let
(tot_wds, -- #ptr_wds + #nonptr_wds
ptr_wds) -- #ptr_wds
- = mkVirtConstrSizes dflags arg_reps
+ = mkVirtConstrSizes profile arg_reps
nonptr_wds = tot_wds - ptr_wds
dyn_info_tbl =
- mkDataConInfoTable dflags data_con False ptr_wds nonptr_wds
+ mkDataConInfoTable profile data_con False ptr_wds nonptr_wds
-- We're generating info tables, so we don't know and care about
-- what the actual arguments are. Using () here as the place holder.
@@ -257,7 +257,7 @@ cgDataCon data_con
do { tickyEnterDynCon
; ldvEnter (CmmReg nodeReg)
; tickyReturnOldCon (length arg_reps)
- ; void $ emitReturn [cmmOffsetB platform (CmmReg nodeReg) (tagForCon dflags data_con)]
+ ; void $ emitReturn [cmmOffsetB platform (CmmReg nodeReg) (tagForCon platform data_con)]
}
-- The case continuation code expects a tagged pointer
}