Speeding up GC
Richard Henderson
rth@redhat.com
Mon Jun 3 18:10:00 GMT 2002
On Mon, Jun 03, 2002 at 03:25:05PM +0200, Martin v. Löwis wrote:
> While it is, in general, not possible to determine whether an object
> has changed, I believe that for certain objects (in particular DECL
> nodes), there is a point in time when they are "frozen", meaning that
> they won't change anymore. I suggest to record this fact in the
> object (with the opportunity to unfreeze the object).
A better way to do this is to actually compact the GC arena
and mark the pages read-only. If the objects are modified,
the SIGSEGV handler marks the page read-write again and flags
the page as having been modified.
This is called "generational GC". It has been discussed on
the list off and on.
It's on-hold waiting for Geoff Keating's GC rewrite, since
at the moment we can't compact the GC arena.
r~
More information about the Gcc
mailing list