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.