Dan Sugalski <[EMAIL PROTECTED]> wrote:

> User stack entries are different from backing stack frames. They need
> to be treated differently, and as such aren't under consideration
> here.

They are in the continuation context too. While the user stack may be
freshly allocated in a sub the control stack can't. It's one stack. As
COW is abandoned now, how different are stacks handled in stacks.c (User,
Control, and Pad).

Just saying "that's wrong" isn't really helpful.

And finally WRT variable sized frames: It was discussed to save only
used registers. When only P16..P19 registers are to be preserved we
could just move these 4 pointers into a chunk. When this is happening a
lot, we are wasting much memory with fixed sized frames.
Investigating that isn't a bad idea - it might not work though.

Changing the internals to use malloced memory is simple. It's all in one
subroutine. I see the point with GC, but please lets do one step and
then the next.

leo

Reply via email to