new register allocator and calling convention

Suresh Jagannathan suresh@research.nj.nec.com
Fri, 3 Dec 1999 12:30:04 -0500


Steve,

A couple of questions about the new layout: 

 (1) I assume that the reason why you moved stacks onto
the heap would be to support multiple stacks, one for
each thread.  Of course, the alternative would have been
to still retain one stack, marshalling it out to the heap
whenever a context-switch occurs.  Was this option discarded
for a particular reason?

 (2) Your rule on where stacks go implies that a variable 
declared outside a loop header, but used inside will go into
a stack slot, correct?  Doesn't this seem overly restrictive?
(Although, I can't think of any easy way offhand to avoid this.)

 (3) Is your idea to express threads just using call/cc, or are
you thinking of introducing a new primitive thread type?

    -- sj