diff options
Diffstat (limited to 'rts/TraverseHeap.h')
-rw-r--r-- | rts/TraverseHeap.h | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/rts/TraverseHeap.h b/rts/TraverseHeap.h index cc217a8858..3855123323 100644 --- a/rts/TraverseHeap.h +++ b/rts/TraverseHeap.h @@ -18,12 +18,6 @@ void resetStaticObjectForProfiling(StgClosure *static_objects); -/* See Note [Profiling heap traversal visited bit]. */ -extern StgWord flip; - -#define isTravDataValid(c) \ - ((((StgWord)(c)->header.prof.hp.trav & 1) ^ flip) == 0) - typedef struct traverseState_ traverseState; typedef union stackData_ { @@ -128,6 +122,10 @@ typedef bool (*visitClosure_cb) ( stackAccum *accum, stackData *child_data); +StgWord getTravData(const StgClosure *c); +void setTravData(StgClosure *c, StgWord w); +bool isTravDataValid(const StgClosure *c); + void traverseWorkStack(traverseState *ts, visitClosure_cb visit_cb); void traversePushRoot(traverseState *ts, StgClosure *c, StgClosure *cp, stackData data); bool traverseMaybeInitClosureData(StgClosure *c); |