Extend void list optimisation to two lexicals blead
authorFather Chrysostomos <sprout@cpan.org>
Fri, 24 Oct 2014 21:33:26 +0000 (14:33 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Fri, 24 Oct 2014 21:33:26 +0000 (14:33 -0700)
commit8c225ab79ea4360be9f3c8f4accb055adc2a9269
tree8a23584a3265c8f2292d637a1bcb6b95b7d3b5fa
parentb37c54af8999d4b762bc5532a5ded18c28f61270
Extend void list optimisation to two lexicals

The list+pushmark optimisation and the padrange optimisation conflict.
In void context, the former is avoided if it looks as though padrange
is possible (pushmark followed by lexical var), but now that padrange
happens only for two or more lexicals, we can check for that.  This
makes ‘my $a, our $b’ marginally faster.  (There are still cases where
this optimisation doesn’t happen though it could, but things would
get even more compilcated and we would only be optimising for rare
edge cases.)
op.c