From: Simon Marlow Date: Wed, 9 Jan 2008 14:49:37 +0000 (+0000) Subject: Fix bug: eval_thunk_selector was calling the unlocked evacuate() X-Git-Tag: Before_cabalised-GHC~265 X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=e5601110f37f48771b9e62296770a29e79d96e28 Fix bug: eval_thunk_selector was calling the unlocked evacuate() --- diff --git a/rts/sm/Evac.c-inc b/rts/sm/Evac.c-inc index 7e10452..4fe9d5d 100644 --- a/rts/sm/Evac.c-inc +++ b/rts/sm/Evac.c-inc @@ -39,6 +39,7 @@ copy_tag(StgClosure **p, StgClosure *src, nat size, step *stp, StgWord tag) return evacuate(p); // does the failed_to_evac stuff } #else + ASSERT(n_gc_threads == 1); info = (W_)src->header.info; src->header.info = &stg_EVACUATED_info; #endif @@ -563,3 +564,8 @@ loop: barf("evacuate"); } + +#undef copy +#undef copy_tag +#undef copyPart +#undef evacuate diff --git a/rts/sm/Scav.c-inc b/rts/sm/Scav.c-inc index 2206dd3..e9aeb2c 100644 --- a/rts/sm/Scav.c-inc +++ b/rts/sm/Scav.c-inc @@ -20,6 +20,7 @@ #else #undef scavenge_block #undef evacuate +#undef recordMutableGen_GC #endif static void scavenge_block (bdescr *bd, StgPtr scan);