Commit 02038ff3 authored by simonmar@microsoft.com's avatar simonmar@microsoft.com
Browse files

count the number of todo blocks, and add a trace

parent 8425e6e5
......@@ -17,6 +17,7 @@
#include "GC.h"
#include "GCUtils.h"
#include "Printer.h"
#include "Trace.h"
#ifdef THREADED_RTS
SpinLock gc_alloc_block_sync;
......@@ -57,6 +58,7 @@ grab_todo_block (step_workspace *ws)
if (stp->todos) {
bd = stp->todos;
stp->todos = bd->link;
stp->n_todos--;
bd->link = NULL;
}
RELEASE_SPIN_LOCK(&stp->sync_todo);
......@@ -70,6 +72,8 @@ push_todo_block (bdescr *bd, step *stp)
ACQUIRE_SPIN_LOCK(&stp->sync_todo);
bd->link = stp->todos;
stp->todos = bd;
stp->n_todos++;
trace(TRACE_gc, "step %d, n_todos: %d", stp->abs_no, stp->n_todos);
RELEASE_SPIN_LOCK(&stp->sync_todo);
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment