From d2068cc2b6aed19a1755c6641271a08f65452b82 Mon Sep 17 00:00:00 2001 From: Max Bolingbroke Date: Thu, 28 Jul 2011 23:57:55 +0100 Subject: Eliminate localiseLabel --- compiler/codeGen/StgCmmClosure.hs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'compiler/codeGen/StgCmmClosure.hs') diff --git a/compiler/codeGen/StgCmmClosure.hs b/compiler/codeGen/StgCmmClosure.hs index cbcdaab058..2492bafc6c 100644 --- a/compiler/codeGen/StgCmmClosure.hs +++ b/compiler/codeGen/StgCmmClosure.hs @@ -90,8 +90,6 @@ import Outputable import Constants import DynFlags -import Control.Arrow ((***)) - ----------------------------------------------------------------------------- -- Representations ----------------------------------------------------------------------------- @@ -1003,7 +1001,7 @@ labelsFromCI :: ClosureInfo -> (CLabel, CLabel) -- (Info, Entry) labelsFromCI cl@(ClosureInfo { closureName = name, closureLFInfo = lf_info, closureInfLcl = is_lcl }) - = (if is_lcl then (localiseLabel *** localiseLabel) else id) $ case lf_info of + = case lf_info of LFBlackHole -> (mkCAFBlackHoleInfoTableLabel, mkCAFBlackHoleEntryLabel) LFThunk _ _ upd_flag (SelectorThunk offset) _ -> @@ -1012,11 +1010,12 @@ labelsFromCI cl@(ClosureInfo { closureName = name, LFThunk _ _ upd_flag (ApThunk arity) _ -> bothL (mkApInfoTableLabel, mkApEntryLabel) upd_flag arity - LFThunk{} -> bothL (mkInfoTableLabel, mkEntryLabel) name $ clHasCafRefs cl + LFThunk{} -> bothL std_mk_lbls name $ clHasCafRefs cl - LFReEntrant _ _ _ _ -> bothL (mkInfoTableLabel, mkEntryLabel) name $ clHasCafRefs cl + LFReEntrant _ _ _ _ -> bothL std_mk_lbls name $ clHasCafRefs cl _other -> panic "labelsFromCI" + where std_mk_lbls = if is_lcl then (mkLocalInfoTableLabel, mkLocalEntryLabel) else (mkInfoTableLabel, mkEntryLabel) labelsFromCI cl@(ConInfo { closureCon = con, closureSMRep = rep }) | isStaticRep rep = bothL (mkStaticInfoTableLabel, mkStaticConEntryLabel) name $ clHasCafRefs cl -- cgit v1.2.1