diff options
author | Daniel Gröber <dxld@darkboxed.org> | 2019-07-16 15:59:34 +0200 |
---|---|---|
committer | Daniel Gröber <dxld@darkboxed.org> | 2019-09-22 15:18:10 +0200 |
commit | 39f2878c587927c5bb69f7ab26b5d09fb3cf2cc4 (patch) | |
tree | 2525dad114576cd9503ac75d3b7aa5be57f15be7 /rts | |
parent | fd213d177cc9f3818babccf8df623e23dc10799e (diff) | |
download | haskell-39f2878c587927c5bb69f7ab26b5d09fb3cf2cc4.tar.gz |
rts: retainer: Move actual 'flip' bit flip to generic traversal code
Diffstat (limited to 'rts')
-rw-r--r-- | rts/RetainerProfile.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/rts/RetainerProfile.c b/rts/RetainerProfile.c index 32ea5493a7..7e169260d0 100644 --- a/rts/RetainerProfile.c +++ b/rts/RetainerProfile.c @@ -1450,6 +1450,9 @@ traverseWorkStack(traverseState *ts, visitClosure_cb visit_cb) stackData data, child_data; StgWord typeOfc; + // Now we flip the flip bit. + flip = flip ^ 1; + // c = Current closure (possibly tagged) // cp = Current closure's Parent (NOT tagged) // data = current closures' associated data (NOT tagged) @@ -1696,6 +1699,8 @@ computeRetainerSet( traverseState *ts ) // Remember old stable name addresses. rememberOldStableNameAddresses (); + + // TODO: Move this code to traverseWorkStack // The following code resets the rs field of each unvisited mutable // object. for (g = 0; g < RtsFlags.GcFlags.generations; g++) { @@ -1796,9 +1801,6 @@ retainerProfile(void) { stat_startRP(); - // Now we flips flip. - flip = flip ^ 1; - numObjectVisited = 0; timesAnyObjectVisited = 0; |