X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fcmm%2FCmmInfo.hs;h=3f458b53518f199912a59c505792c0e4844120a9;hp=5937dd4fb9debf2acb72124bc6bc8e61829693ff;hb=f47653a986cd329dc9159906432f2ed7819a4043;hpb=f672e79d632ade7238d51fc8da4283da71bea9a4 diff --git a/compiler/cmm/CmmInfo.hs b/compiler/cmm/CmmInfo.hs index 5937dd4..3f458b5 100644 --- a/compiler/cmm/CmmInfo.hs +++ b/compiler/cmm/CmmInfo.hs @@ -85,12 +85,12 @@ mkInfoTable uniq (CmmProc info entry_label arguments blocks) = where fun_extra_bits = [packHalfWordsCLit fun_type fun_arity] ++ - srt_label ++ case pap_bitmap of ArgGen liveness -> + (if null srt_label then [mkIntCLit 0] else srt_label) ++ [makeRelativeRefTo info_label $ mkLivenessCLit liveness, makeRelativeRefTo info_label slow_entry] - _ -> [] + _ -> srt_label std_info = mkStdInfoTable ty_prof cl_prof type_tag srt_bitmap layout info_label = entryLblToInfoLbl entry_label (srt_label, srt_bitmap) = mkSRTLit info_label srt @@ -121,12 +121,11 @@ mkInfoTable uniq (CmmProc info entry_label arguments blocks) = -- | A selector thunk. CmmInfo (ProfilingInfo ty_prof cl_prof) _ type_tag (ThunkSelectorInfo offset srt) -> - mkInfoTableAndCode info_label std_info srt_label entry_label + mkInfoTableAndCode info_label std_info [{- no SRT -}] entry_label arguments blocks where - std_info = mkStdInfoTable ty_prof cl_prof type_tag srt_bitmap (mkWordCLit offset) + std_info = mkStdInfoTable ty_prof cl_prof type_tag 0 (mkWordCLit offset) info_label = entryLblToInfoLbl entry_label - (srt_label, srt_bitmap) = mkSRTLit info_label srt -- A continuation/return-point. CmmInfo (ProfilingInfo ty_prof cl_prof) _ type_tag (ContInfo stack_layout srt) ->