[Vm-dev] JIT stack discipline from caller's POV
siguctua at gmail.com
Thu Mar 21 14:19:20 UTC 2013
Hi, Eliot & all
i just want to summarize the SimpleStackBasedCogIt stack discipline,
please correct me if i wrong.
If number of arguments is 0 or 1 (just receiver or receiver + 1 arg),
caller uses registers to pass them:
EDX for receiver
ESI for arg1
If number of arguments is > 1
then caller pushes all arguments on stack.
- caller expecting result in EDX
- the stack is cleaned by callee (by popping args from stack), but
only for those which was pushed (so in case of <=1 arguments there's
nothing to pop)
Am i correct?
More information about the Vm-dev