> === Approach: Use the Boehm collector. > > The general approach is to define allocation and deallocation > functions to the Boehm collector that handle memory within the > PCH range. We would also provide a class to register global > roots at the point of declaration of those roots. We would likely > configure the collector to collect only on command, not > automatically. Laurynas says previous efforts showed > that the peak memory usage was slightly higher that with the > existing collectors due to Boehm's conservativeness. The run time > was comparable.
Yes. To be certain one would have to update Boehm's GC branch to the current GCC and re-test. Barring any unknown unknowns, it requires relatively little implementation effort. > === Approach: Move RTL back to obstacks. > > Laurynas started this in 2011. I'm not sure what the status of > this is. Laurynas? Curently it's abandoned. I started it based on Bernd Schmidt's experimental patch. I had good progress but could not (and still cannot) allocate the time required to finish it. I think this project is a good idea regardless of overall memory management strategy chosen. -- Laurynas