[gclist] Stack scanning & callee-save registers
Wed, 06 Sep 2000 00:01:07 -0400
At 11:55 PM 9/5/00 +0000, email@example.com wrote:
>I think it should be possible to do the scanning in one pass even if
>we have callee-save registers. Does anyone know if this has been
Yes, this is possible. At the youngest frame, spill the
registers, and initialize an array of pointers to register spill
memory to point to that. As you unwind the stack, update the elements
of that array to refer to the (callee's) spill locations for the
spilled registers. References to "register X" in a given frame
look up the address into which X was spilled and use that to locate,
and potentially update, register X.
Yes, we've also implemented this.