From mboxrd@z Thu Jan 1 00:00:00 1970 From: Richard Henderson To: John Carr Cc: Richard Henderson , egcs@cygnus.com Subject: Re: an experiment with garbage collection Date: Sat, 09 May 1998 16:35:00 -0000 Message-id: <19980509154259.19062@dot.cygnus.com> References: <19980509012500.06283@dot.cygnus.com> <199805092232.SAA26244@jfc.> X-SW-Source: 1998-05/msg00335.html On Sat, May 09, 1998 at 06:32:24PM -0400, John Carr wrote: > Can you guess how much work it would take to be able to run a > not-conservative GC in the middle of compiling a function? That is what I am doing, actually. The only thing extra you would need from the information I am collecting now is the address of the pointers. This could be trivially gotten with #define ggc_mark_rtx(x) ggc_mark_rtxp (&(x)) or similar. > Even if you don't like obstack semantics, I think it is still useful to > have a special allocator for rtl to avoid malloc overhead (both memory and > time). At least special-case the smallest, most common size: 8 bytes (16 > on 64 bit systems). This is something I planned to look into after it works. Oh, I've been able to do some more testing. GC is currently eating about 15% of the run time, which is a bit more than I expected. No data on size reduction yet. r~