summaryrefslogtreecommitdiff
path: root/rts/sm/GC.c
diff options
context:
space:
mode:
authorEdward Z. Yang <ezyang@cs.stanford.edu>2014-05-29 20:05:51 -0700
committerEdward Z. Yang <ezyang@cs.stanford.edu>2014-05-29 20:05:51 -0700
commit723095b0e4c5838c7eefd757af56ab2a7c614801 (patch)
tree1581da2255fe571fc567992feb3422cebf3f59c7 /rts/sm/GC.c
parent0c1974c8262f1609ecb7dec438d8cd167f788a5c (diff)
downloadhaskell-723095b0e4c5838c7eefd757af56ab2a7c614801.tar.gz
Per-capability nursery weak pointer lists, fixes #9075
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Diffstat (limited to 'rts/sm/GC.c')
-rw-r--r--rts/sm/GC.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/rts/sm/GC.c b/rts/sm/GC.c
index d22a31eccb..61432eabde 100644
--- a/rts/sm/GC.c
+++ b/rts/sm/GC.c
@@ -286,6 +286,9 @@ GarbageCollect (nat collect_gen,
memInventory(DEBUG_gc);
#endif
+ // do this *before* we start scavenging
+ collectFreshWeakPtrs();
+
// check sanity *before* GC
IF_DEBUG(sanity, checkSanity(rtsFalse /* before GC */, major_gc));