SSA
Matthew Fluet
fluet@CS.Cornell.EDU
Fri, 19 Oct 2001 09:08:24 -0400 (EDT)
> As to your idea for instead complicating the runtime and having it
> walk the handler stack, I think that would work too -- it seems harder
> to implement to me though.
I don't think it will work with the way the runtime is currently set up.
We know where the top of the cont stack is on a stack -- it's at the top
of the stack. We don't know where the top of the handler stack is on a
stack -- that's accessed through the exnStack element of a GC_thread
structure. We'll trace the stack after hitting it's GC_thread, but
there's no way to carry the exnStack to the walk of the stack.
We could (?) always put the exnStack element in a place relative to the
stack, say in the word immediately below stackBottom. (Although that sort
of messes with getting stacks mod 8 aligned.) The GC_thread struct
seems a little overly abstract -- it doesn't seem as though two threads
with different exnStacks could point to the same execution stack?