[Vm-dev] Re: Getting back to push/pop remappable oop
andreas.raab at gmx.de
Tue Nov 11 15:59:59 UTC 2008
Igor Stasenko wrote:
> - there was no need in having these methods from the very start.
> Any oop at any time can be temporary pushed on stack and then popped
> back again using #pop:/#push: methods.
> Of course, primitives need to be careful to not override the
> arguments, which can be reused in method when primitive fails - so
> they should push values past the arguments.
This won't work. Stack frames are limited in size and sized in the image
based on however much space is required by the byte codes without any
regards of potential additional space needed by primitives (which is
variable). And, since primitives are executed before activation (meaning
that the "primitive stack" would have to share the frame with the caller
method) every frame would have to reserve the maximum additional stack
space any single primitive might require.
More information about the Vm-dev