diff options
Diffstat (limited to 'compiler/main/StaticPtrTable.hs')
-rw-r--r-- | compiler/main/StaticPtrTable.hs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/compiler/main/StaticPtrTable.hs b/compiler/main/StaticPtrTable.hs index ecc937665a..81a72230f3 100644 --- a/compiler/main/StaticPtrTable.hs +++ b/compiler/main/StaticPtrTable.hs @@ -178,6 +178,7 @@ sptCreateStaticBinds hsc_env this_mod binds go (reverse fps' ++ fps) (bnd' : bs) xs' dflags = hsc_dflags hsc_env + platform = targetPlatform dflags -- Generates keys and replaces 'makeStatic' with 'StaticPtr'. -- @@ -219,8 +220,8 @@ sptCreateStaticBinds hsc_env this_mod binds staticPtrDataCon <- lift $ lookupDataConHscEnv staticPtrDataConName return (fp, mkConApp staticPtrDataCon [ Type t - , mkWord64LitWordRep dflags w0 - , mkWord64LitWordRep dflags w1 + , mkWord64LitWordRep platform w0 + , mkWord64LitWordRep platform w1 , info , e ]) @@ -233,10 +234,10 @@ sptCreateStaticBinds hsc_env this_mod binds -- Choose either 'Word64#' or 'Word#' to represent the arguments of the -- 'Fingerprint' data constructor. - mkWord64LitWordRep dflags = - case platformWordSize (targetPlatform dflags) of + mkWord64LitWordRep platform = + case platformWordSize platform of PW4 -> mkWord64LitWord64 - PW8 -> mkWordLit dflags . toInteger + PW8 -> mkWordLit platform . toInteger lookupIdHscEnv :: Name -> IO Id lookupIdHscEnv n = lookupTypeHscEnv hsc_env n >>= |