This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
eliminate cx->blk_sub.oldcomppad
authorDavid Mitchell <davem@iabyn.com>
Mon, 29 Jun 2015 11:02:18 +0000 (12:02 +0100)
committerDavid Mitchell <davem@iabyn.com>
Wed, 3 Feb 2016 08:59:33 +0000 (08:59 +0000)
commit41f96e1a89a5842483b2a12424693a876f5b57c0
tree3f72bd21072b975b798f6214146e30f4e94cdcd3
parent39de75fd8bd047dccbf78312638f43b5e8fe3d5c
eliminate cx->blk_sub.oldcomppad

In the CXt_SUB sub-struct of the context struct, there is a field
called oldcomppad. Despite the "old" in its name, this field actually
stores the value of PL_comppad of the new sub, not of the caller.

It's only use currently is in POPSUB() when abandoning a reified @_, to
locate PL_curpad[0] of the current sub in order to stick a new empty AV
there.  This is a relatively rare occurrence, and the pad slot can be
found (slightly less efficiently) from the saved CV and its depth.
cop.h
pp_ctl.c
pp_hot.c
pp_sort.c
sv.c