live.fun question
Matthew Fluet
fluet@CS.Cornell.EDU
Sat, 22 Dec 2001 12:42:39 -0500 (EST)
> I am confused by the existence of line 249 of backend/live.fun, which
> contains the following
>
> val _ = List.push (link_defuse, Use b)
>
> I don't understand why we need to force a use of the link here. I
> understand that we need to force a use of the code because a pointer
> to it is stored in the globalExnStack and may be used by the callee.
> But the link is solely for use by the caller. If indeed the link is
> live, won't that be captured by a SetExnStackSlot somewhere down the
> control-flow path of the continuation?
Yes, that sounds right. For the most part, I was trying to deal with code
and link pointers the same way, but you are right that they are used
differently at this point.