From 91109404b7acbb9cbec496e519a4fac3f51e4f22 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Wed, 31 Jul 2019 21:05:11 -0400 Subject: nonmoving: Trace GC preparation steps --- rts/sm/NonMoving.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'rts') diff --git a/rts/sm/NonMoving.c b/rts/sm/NonMoving.c index 9a6db9bd19..518b06bd19 100644 --- a/rts/sm/NonMoving.c +++ b/rts/sm/NonMoving.c @@ -819,6 +819,7 @@ void nonmovingCollect(StgWeak **dead_weaks, StgTSO **resurrected_threads) } #endif + trace(TRACE_nonmoving_gc, "Starting nonmoving GC preparation"); resizeGenerations(); nonmovingPrepareMark(); @@ -834,6 +835,7 @@ void nonmovingCollect(StgWeak **dead_weaks, StgTSO **resurrected_threads) current_mark_queue = mark_queue; // Mark roots + trace(TRACE_nonmoving_gc, "Marking roots for nonmoving GC"); markCAFs((evac_fn)markQueueAddRoot, mark_queue); for (unsigned int n = 0; n < n_capabilities; ++n) { markCapability((evac_fn)markQueueAddRoot, mark_queue, @@ -847,6 +849,7 @@ void nonmovingCollect(StgWeak **dead_weaks, StgTSO **resurrected_threads) for (StgTSO *tso = *resurrected_threads; tso != END_TSO_QUEUE; tso = tso->global_link) { markQueuePushClosure_(mark_queue, (StgClosure*)tso); } + trace(TRACE_nonmoving_gc, "Finished marking roots for nonmoving GC"); // Roots marked, mark threads and weak pointers @@ -869,6 +872,7 @@ void nonmovingCollect(StgWeak **dead_weaks, StgTSO **resurrected_threads) ASSERT(nonmoving_old_weak_ptr_list == NULL); nonmoving_old_weak_ptr_list = oldest_gen->weak_ptr_list; oldest_gen->weak_ptr_list = NULL; + trace(TRACE_nonmoving_gc, "Finished nonmoving GC preparation"); // We are now safe to start concurrent marking -- cgit v1.2.1