diff options
author | Douglas Wilson <douglas.wilson@gmail.com> | 2021-12-19 12:55:56 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-02-02 19:26:06 -0500 |
commit | 05548a2209f71b407028d42e1aad566697263199 (patch) | |
tree | 8b2220cc2134b9d711692a34d00b59fba54bae49 /rts/include | |
parent | 88fba8a4b3c22e953a634b81dd0b67ec66eb5e72 (diff) | |
download | haskell-05548a2209f71b407028d42e1aad566697263199.tar.gz |
rts: Address failures to inline
Diffstat (limited to 'rts/include')
-rw-r--r-- | rts/include/rts/storage/ClosureMacros.h | 61 |
1 files changed, 1 insertions, 60 deletions
diff --git a/rts/include/rts/storage/ClosureMacros.h b/rts/include/rts/storage/ClosureMacros.h index 393bee3a9f..2ba84d1279 100644 --- a/rts/include/rts/storage/ClosureMacros.h +++ b/rts/include/rts/storage/ClosureMacros.h @@ -353,67 +353,8 @@ EXTERN_INLINE StgWord compact_nfdata_full_sizeW ( StgCompactNFData *str ) * * (Also for 'closure_sizeW' below) */ -EXTERN_INLINE uint32_t +uint32_t closure_sizeW_ (const StgClosure *p, const StgInfoTable *info); -EXTERN_INLINE uint32_t -closure_sizeW_ (const StgClosure *p, const StgInfoTable *info) -{ - switch (info->type) { - case THUNK_0_1: - case THUNK_1_0: - return sizeofW(StgThunk) + 1; - case FUN_0_1: - case CONSTR_0_1: - case FUN_1_0: - case CONSTR_1_0: - return sizeofW(StgHeader) + 1; - case THUNK_0_2: - case THUNK_1_1: - case THUNK_2_0: - return sizeofW(StgThunk) + 2; - case FUN_0_2: - case CONSTR_0_2: - case FUN_1_1: - case CONSTR_1_1: - case FUN_2_0: - case CONSTR_2_0: - return sizeofW(StgHeader) + 2; - case THUNK: - return thunk_sizeW_fromITBL(info); - case THUNK_SELECTOR: - return THUNK_SELECTOR_sizeW(); - case AP_STACK: - return ap_stack_sizeW((StgAP_STACK *)p); - case AP: - return ap_sizeW((StgAP *)p); - case PAP: - return pap_sizeW((StgPAP *)p); - case IND: - return sizeofW(StgInd); - case ARR_WORDS: - return arr_words_sizeW((StgArrBytes *)p); - case MUT_ARR_PTRS_CLEAN: - case MUT_ARR_PTRS_DIRTY: - case MUT_ARR_PTRS_FROZEN_CLEAN: - case MUT_ARR_PTRS_FROZEN_DIRTY: - return mut_arr_ptrs_sizeW((StgMutArrPtrs*)p); - case SMALL_MUT_ARR_PTRS_CLEAN: - case SMALL_MUT_ARR_PTRS_DIRTY: - case SMALL_MUT_ARR_PTRS_FROZEN_CLEAN: - case SMALL_MUT_ARR_PTRS_FROZEN_DIRTY: - return small_mut_arr_ptrs_sizeW((StgSmallMutArrPtrs*)p); - case TSO: - return sizeofW(StgTSO); - case STACK: - return stack_sizeW((StgStack*)p); - case BCO: - return bco_sizeW((StgBCO *)p); - case TREC_CHUNK: - return sizeofW(StgTRecChunk); - default: - return sizeW_fromITBL(info); - } -} // The definitive way to find the size, in words, of a heap-allocated closure EXTERN_INLINE uint32_t closure_sizeW (const StgClosure *p); |