diff options
| author | simonmar <unknown> | 2003-09-23 15:31:02 +0000 |
|---|---|---|
| committer | simonmar <unknown> | 2003-09-23 15:31:02 +0000 |
| commit | 69373e1efb0acf58d793c2fd8d3416decbd1a571 (patch) | |
| tree | ab6eed4e90fae6e523c1b6fbcacdeeef5a07ec9e | |
| parent | 6d4932994d5a99d0ec7ea707e213b68328fa68a6 (diff) | |
| download | haskell-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.c | 4 |
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 |
