diff options
Diffstat (limited to 'compiler/codeGen')
-rw-r--r-- | compiler/codeGen/StgCmmClosure.hs | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/compiler/codeGen/StgCmmClosure.hs b/compiler/codeGen/StgCmmClosure.hs index 2501ec9cbd..1da1f707a2 100644 --- a/compiler/codeGen/StgCmmClosure.hs +++ b/compiler/codeGen/StgCmmClosure.hs @@ -361,18 +361,13 @@ type DynTag = Int -- The tag on a *pointer* isSmallFamily :: DynFlags -> Int -> Bool isSmallFamily dflags fam_size = fam_size <= mAX_PTR_TAG dflags --- | Faster version of isSmallFamily if you haven't computed the size yet. -isSmallFamilyTyCon :: DynFlags -> TyCon -> Bool -isSmallFamilyTyCon dflags tycon = - tyConFamilySizeAtMost tycon (mAX_PTR_TAG dflags) - tagForCon :: DynFlags -> DataCon -> DynTag tagForCon dflags con - | isSmallFamilyTyCon dflags tycon = con_tag - | otherwise = 1 + | isSmallFamily dflags fam_size = con_tag + | otherwise = 1 where con_tag = dataConTag con -- NB: 1-indexed - tycon = dataConTyCon con + fam_size = tyConFamilySize (dataConTyCon con) tagForArity :: DynFlags -> RepArity -> DynTag tagForArity dflags arity |