On Sun, 10 Apr 2011 21:27:10 +0300 Laurynas Biveinis <laurynas.bivei...@gmail.com> wrote:
> 2011/4/9 Steven Bosscher <stevenb....@gmail.com>: > > 4. RTL per function. GCC expands one GIMPLE function at a time, and > > the idea is to initialize the RTL obstack once when expanding starts, > > let it grow until final, and blow it away after final. Unlike 20 years > > ago, this obstack is never rolled back during RTL passes. This relies > > on generating not too much garbage, but memory for per-function RTL > > should be dwarfed by per-translation unit GIMPLE anyway. > > Well, I have plans to see if it is worthwhile for pass like combine to > rollback the function obstack to do away with scratch RTL. Of course > this depends, on how much memory can be saved by doing this - in > comparison to current GC. I respect a lot Laurynas' work, but my general personal feeling & wish is on the contrary that in the long term, more GCC data should be garbage collected, and that GCC's garbage collector should be better. However, I tend to believe that Laurynas cleanup on RTL could be helpful. And in the long run, I would imagine that making RTL data garbage collectable again would just be a matter of adding GTY annotations somewhere. Regards. -- Basile STARYNKEVITCH http://starynkevitch.net/Basile/ email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359 8, rue de la Faiencerie, 92340 Bourg La Reine, France *** opinions {are only mine, sont seulement les miennes} ***