[prev in list] [next in list] [prev in thread] [next in thread] 

List:       perl6-internals
Subject:    [perl #58414] [TODO] review calling conventions
From:       "Will Coleda via RT" <parrotbug-followup () parrotcode ! org>
Date:       2009-10-28 13:53:27
Message-ID: rt-3.6.HEAD-21418-1256738005-745.58414-15-0 () perl ! org
[Download RAW message or body]

On Wed Oct 28 06:23:29 2009, Whiteknight wrote:
> Following the pcc_reapply branch, the central calling mechanisms have
> been completely reviewed, redesigned, and reimplemented. I'm closing
> this ticket. For other issues:
> 
> > - VTABLE_invoke is inconsistent between different sub-like PMCs. For
> > most subs it simply sets up the environment for invocation, and 
selects
> > the first opcode instruction of the sub as the next 'opcode_t *' for
> > 'runops'. For NCI subs it actually invokes the function pointer. The
> > disjoint means that NCI subs can't be invoked from C argument lists 
the
> > same way as all the other subs (because the regular C argument list
> > passing can only happen *after* VTABLE_invoke has been called to set 
up
> > the environment, but NCI requires the arguments to be passed 
*before*
> > the call to VTABLE_invoke).
> 
> This issue is being followed on the Calling conventions tasklist on
> Trac: https://trac.parrot.org/parrot/wiki/CallingConventionsTasklist
> 
> > - Also, VTABLE_invoke can't really be overridden from PIR, because 
it
> > requires direct access to low-level interpreter data structures.
> 
> See Trac ticket https://trac.parrot.org/parrot/ticket/103
> 
> > - Standardize on PCC-style signature description strings throughout 
the
> > system (instead of different signature description strings for NCI, 
PCC,
> > and regular subs).
> 
> Issue listed on the calling conventions tasklist wiki page
> 
> > - Refactor to remove code duplication between the various dispatch
> systems.
> 
> Done.
> 
> > - Optimize PCC dispatch (refactor to slim down the code).
> 
> In process
> 
> > - Enable dispatching by CallSignature PMC everywhere.
> 
> Done.
> 

CC'ing list with final resolution comment.

-- 
Will "Coke" Coleda
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic