Am Sonntag, 24. September 2006 03:43 schrieb Bob Rogers:
>    The attached patch creates a C<return_stack> in C<Parrot_Context> for
> the exclusive use of the C<bsr/jsr/ret> ops. herwise.  Is that right?

Separating stacks is a good thing, as code paths are simplified. 

Q: do we really want or need a return stack per context?

bsr/ret ought to be as slim as possible and it'll not mix with CPS anyway.

>    However, since C<return_stack> entries always contain a
> STACK_ENTRY_DESTINATION with STACK_CLEANUP_NULL, and are only ever
> referenced from their owning context, using a C<Stack_Chunk> to store
> them is way overkill.  Would it be better to design something more
> specific to return addresses so that it can be lighter in weight?

Indeed. One ResizableIntegerArray in interpreter would do it.

leo

Reply via email to