On Wed, Apr 16, 2008 at 02:19:42AM +0200, Jonathan Worthington wrote:
> I thought that detecting when the signature on the caller and callee 
> side were identical and fast-tracking that might help. I stuck in 
> something to count how many times this happened. It was the case in 23% 
> of calls while compiling Rakudo. So I did the optimisation in the 
> attached patch, which basically just copies arguments from one set of 
> registers to the other about as efficiently as I can see how to do it.
> 
> The end result? I can't actually detect enough of a difference to make 
> me think I've really improved anything. Not in the compilation time of 
> Rakudo's actions.pm, nor when I took a Perl 6 Ackerman's function 
> implementation and ran it under Rakudo.

FWIW, all of the regexes compiled by PGE end up with slurpy hashes
in their parameter list, so (IIUC from the earlier IRC discussion)
they aren't seeing any benefit from this optimization.

A similar situation applies for the methods in PCT -- most of them
also have slurpy hash parameters.  This is in order to be compatible
with Perl 6's default *%_ parameter in methods.

Pm

Reply via email to