summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsimonmar <unknown>2003-09-23 15:31:02 +0000
committersimonmar <unknown>2003-09-23 15:31:02 +0000
commit69373e1efb0acf58d793c2fd8d3416decbd1a571 (patch)
treeab6eed4e90fae6e523c1b6fbcacdeeef5a07ec9e
parent6d4932994d5a99d0ec7ea707e213b68328fa68a6 (diff)
downloadhaskell-69373e1efb0acf58d793c2fd8d3416decbd1a571.tar.gz
[project @ 2003-09-23 15:31:02 by simonmar]
Fix for clearing the evacuated flag on a block: don't throw away other flag settings in the process.
-rw-r--r--ghc/rts/GC.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ghc/rts/GC.c b/ghc/rts/GC.c
index f3a161020e..f127808628 100644
--- a/ghc/rts/GC.c
+++ b/ghc/rts/GC.c
@@ -1,5 +1,5 @@
/* -----------------------------------------------------------------------------
- * $Id: GC.c,v 1.159 2003/08/26 12:12:49 simonmar Exp $
+ * $Id: GC.c,v 1.160 2003/09/23 15:31:02 simonmar Exp $
*
* (c) The GHC Team 1998-2003
*
@@ -422,7 +422,7 @@ GarbageCollect ( void (*get_roots)(evac_fn), rtsBool force_major_gc )
// mark the large objects as not evacuated yet
for (bd = stp->large_objects; bd; bd = bd->link) {
- bd->flags = BF_LARGE;
+ bd->flags &= ~BF_EVACUATED;
}
// for a compacted step, we need to allocate the bitmap