diff options
author | Simon Marlow <simonmar@microsoft.com> | 2007-10-31 14:45:42 +0000 |
---|---|---|
committer | Simon Marlow <simonmar@microsoft.com> | 2007-10-31 14:45:42 +0000 |
commit | cacd714cd545bc3bd07882904055cfee162bd7de (patch) | |
tree | 8bf670e81476c6941b1250e09afc43c6866a8989 /rts/sm/GC.h | |
parent | c357244371ca5eeaa0d56a6bd349e26a3b16b7dc (diff) | |
download | haskell-cacd714cd545bc3bd07882904055cfee162bd7de.tar.gz |
Remove the optimisation of avoiding scavenging for certain objects
Some objects don't need to be scavenged, in particular if they have no
pointers. This seems like an obvious optimisation, but in fact it
only accounts for about 1% of objects (in GHC, for example), and the
extra complication means it probably isn't worth doing.
Diffstat (limited to 'rts/sm/GC.h')
-rw-r--r-- | rts/sm/GC.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/rts/sm/GC.h b/rts/sm/GC.h index d45efb96e4..488a2db8cf 100644 --- a/rts/sm/GC.h +++ b/rts/sm/GC.h @@ -88,11 +88,7 @@ typedef struct step_workspace_ { // where large objects to be scavenged go bdescr * todo_large_objects; - // Objects that need not be, or have already been, scavenged. The - // block at the front of the list is special: objects that don't - // need to be scavenged are copied directly to this block. - // Completed scan blocks also go on this list; but we put them - // after the head block. + // Objects that need not be, or have already been, scavenged. bdescr * scavd_list; lnat n_scavd_blocks; // count of blocks in this list |