summaryrefslogtreecommitdiff
path: root/compiler/codeGen/CgTicky.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/codeGen/CgTicky.hs')
-rw-r--r--compiler/codeGen/CgTicky.hs20
1 files changed, 9 insertions, 11 deletions
diff --git a/compiler/codeGen/CgTicky.hs b/compiler/codeGen/CgTicky.hs
index 629754fcb5..daeba9274b 100644
--- a/compiler/codeGen/CgTicky.hs
+++ b/compiler/codeGen/CgTicky.hs
@@ -85,8 +85,8 @@ emitTickyCounter :: ClosureInfo -> [Id] -> Int -> Code
emitTickyCounter cl_info args on_stk
= ifTicky $
do { mod_name <- getModuleName
- ; fun_descr_lit <- mkStringCLit (fun_descr mod_name)
- ; arg_descr_lit <- mkStringCLit arg_descr
+ ; fun_descr_lit <- newStringCLit (fun_descr mod_name)
+ ; arg_descr_lit <- newStringCLit arg_descr
; emitDataLits ticky_ctr_label -- Must match layout of StgEntCounter
-- krc: note that all the fields are I32 now; some were I16 before,
-- but the code generator wasn't handling that properly and it led to chaos,
@@ -246,18 +246,16 @@ tickyDynAlloc :: ClosureInfo -> Code
-- Called when doing a dynamic heap allocation
tickyDynAlloc cl_info
= ifTicky $
- case smRepClosureType (closureSMRep cl_info) of
- Just Constr -> tick_alloc_con
- Just ConstrNoCaf -> tick_alloc_con
- Just Fun -> tick_alloc_fun
- Just Thunk -> tick_alloc_thk
- Just ThunkSelector -> tick_alloc_thk
+ case closureLFInfo cl_info of
+ LFCon {} -> tick_alloc_con
+ LFReEntrant {} -> tick_alloc_fun
+ LFThunk {} -> tick_alloc_thk
-- black hole
- Nothing -> return ()
+ _ -> return ()
where
-- will be needed when we fill in stubs
- _cl_size = closureSize cl_info
- _slop_size = slopSize cl_info
+ _cl_size = closureSize cl_info
+-- _slop_size = slopSize cl_info
tick_alloc_thk
| closureUpdReqd cl_info = tick_alloc_up_thk