summaryrefslogtreecommitdiff
path: root/rts/ProfHeap.c
diff options
context:
space:
mode:
authorDaniel Gröber <dxld@darkboxed.org>2019-06-14 18:01:59 +0200
committerDaniel Gröber <dxld@darkboxed.org>2019-09-22 15:18:10 +0200
commit2f2f6dd5b708eae4888782ca3eb555152b64ee90 (patch)
tree31b7e16d658dec5c706d6dd74c101d99b987f1a2 /rts/ProfHeap.c
parentf083358b177fad4d5f0325d3cc099eeed64e7f54 (diff)
downloadhaskell-2f2f6dd5b708eae4888782ca3eb555152b64ee90.tar.gz
rts: Generalise profiling heap traversal flip bit handling
This commit starts renaming some flip bit related functions for the generalised heap traversal code and adds provitions for sharing the per-closure profiling header field currently used exclusively for retainer profiling with other heap traversal profiling modes.
Diffstat (limited to 'rts/ProfHeap.c')
-rw-r--r--rts/ProfHeap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/ProfHeap.c b/rts/ProfHeap.c
index 55541f70cc..77e0e6962a 100644
--- a/rts/ProfHeap.c
+++ b/rts/ProfHeap.c
@@ -130,7 +130,7 @@ closureIdentity( const StgClosure *p )
case HEAP_BY_RETAINER:
// AFAIK, the only closures in the heap which might not have a
// valid retainer set are DEAD_WEAK closures.
- if (isRetainerSetFieldValid(p))
+ if (isTravDataValid(p))
return retainerSetOf(p);
else
return NULL;
@@ -638,7 +638,7 @@ closureSatisfiesConstraints( const StgClosure* p )
// reason it might not be valid is if this closure is a
// a newly deceased weak pointer (i.e. a DEAD_WEAK), since
// these aren't reached by the retainer profiler's traversal.
- if (isRetainerSetFieldValid((StgClosure *)p)) {
+ if (isTravDataValid((StgClosure *)p)) {
rs = retainerSetOf((StgClosure *)p);
if (rs != NULL) {
for (i = 0; i < rs->num; i++) {