summaryrefslogtreecommitdiff
path: root/rts/sm/MarkWeak.c
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2011-02-02 12:30:49 +0000
committerSimon Marlow <marlowsd@gmail.com>2011-02-02 12:30:49 +0000
commitbef3da1e26639303fccbf26c312d2833eedb486e (patch)
treeb1c8b91568eec0e0ba2ea448981d0e3f17eba741 /rts/sm/MarkWeak.c
parentc226846642a2201762ee34f6f71b42f13bc46629 (diff)
downloadhaskell-bef3da1e26639303fccbf26c312d2833eedb486e.tar.gz
A small GC optimisation
Store the *number* of the destination generation in the Bdescr struct, so that in evacuate() we don't have to deref gen to get it. This is another improvement ported over from my GC branch.
Diffstat (limited to 'rts/sm/MarkWeak.c')
-rw-r--r--rts/sm/MarkWeak.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/sm/MarkWeak.c b/rts/sm/MarkWeak.c
index 72f0ade797..f4b576ac73 100644
--- a/rts/sm/MarkWeak.c
+++ b/rts/sm/MarkWeak.c
@@ -110,7 +110,7 @@ traverseWeakPtrList(void)
/* doesn't matter where we evacuate values/finalizers to, since
* these pointers are treated as roots (iff the keys are alive).
*/
- gct->evac_gen = 0;
+ gct->evac_gen_no = 0;
last_w = &old_weak_ptr_list;
for (w = old_weak_ptr_list; w != NULL; w = next_w) {