On Mon, 11 Jan 2016 13:51:25 -0700
Tom Tromey <t...@tromey.com> wrote:

> >>>>> "Michael" == Michael Matz <m...@suse.de> writes:  
> 
> Michael> Well, that's a hack.  A solution is to design something that
> Michael> works generally for garbage collected languages with such
> Michael> requirements instead of arbitrarily limiting transformations
> Michael> here and there.  It could be something like the notion of
> Michael> derived pointers, where the base pointer needs to stay alive
> Michael> as long as the derived pointers are.  
> 
> This was done once in GCC, for the Modula 3 compiler.
> There was a paper about it, but I can't find it any more.
> 
> The basic idea was to emit a description of the stack frame that their
> GC could read.  They had a moving GC that could use this information
> to rewrite the frame when moving objects.

This one perhaps?

https://www.cs.purdue.edu/homes/hosking/papers/ismm06.pdf

Julian

Reply via email to