Author: Whiteknight
Date: Wed Jul 23 17:39:05 2008
New Revision: 29713
Modified:
branches/gsoc_pdd09/src/gc/gc_it.c
Log:
[gsoc_pdd09] add additional trace checks in case items are added to the queue
post-trace but pre-sweep. doesn't fix any bad tests
Modified: branches/gsoc_pdd09/src/gc/gc_it.c
==============================================================================
--- branches/gsoc_pdd09/src/gc/gc_it.c (original)
+++ branches/gsoc_pdd09/src/gc/gc_it.c Wed Jul 23 17:39:05 2008
@@ -425,6 +425,8 @@
const Arenas * const arena_base = interp->arena_base;
Gc_it_data * const gc_priv_data = (Gc_it_data *)arena_base->gc_private;
+ if(gc_priv_data->queue)
+ gc_it_trace(interp);
gc_it_sweep_PMC_arenas(interp, gc_priv_data, arena_base->pmc_pool);
}
@@ -533,6 +535,8 @@
Gc_it_data * const gc_priv_data = (Gc_it_data *)arena_base->gc_private;
register INTVAL i;
+ if(gc_priv_data->queue)
+ gc_it_trace(interp);
for (i = arena_base->num_sized - 1; i >= 0; i--) {
Small_Object_Pool * const pool = arena_base->sized_header_pools[i];
if (pool)