SSA
Stephen Weeks
MLton@sourcelight.com
Tue, 23 Oct 2001 10:29:25 -0700
> Given a list of continuations (with distinct handlers and sizes reflecting
> the pairing), how does the frame allocator use this information to actually
> allocate space for the continuation?
The conts list
conts: {handler: Ssa.Label.t option,
live: Machine.Operand.t list,
size: int} list
is associated with a single label used at possibly many nontail
calls. Each element corresponds to a distinct stub continuation with
its own size and liveness info.
> What is the relationship (if any) between handler inference and
> frame allocation?
None. The IL explicitly states the desired handler at each nontail
call as a SSa.Label.t option. Some other pass is responsible to make
sure the correct handler is instaled, but the register allocator and
liveness don't have to worry about this.