|Version 2 (modified by allison, 3 years ago)|
How-to merge Context and CallSignature.
- Merge those two PMC into single CallContext (done).
- Parrot_pcc_build_sigobject updated to create CallContext instead of CallSignature (done).
- Parrot_pcc_invoke_from_sigobject, op invoke, op invokecc should push CallContext created in step 2.
- Sub.invoke shouldn't push new CallContext, just allocate registers in CURRENT_CONTEXT.
- op tailcall should just merge two CallContext (parent and current) (same as in trunk).
Steps 3-5 are questionable and require review by allison.
To generalize, 3/4 is saying that "invoke" shouldn't create or install the context, the context should be created by whatever code is calling "invoke". Agreed, and this applies to all sub-like PMCs. --Allison
Did you have a suggestion for change in 5? If not, same as trunk is fine. --Allison