summaryrefslogtreecommitdiff
path: root/sv.c
diff options
context:
space:
mode:
authorDavid Mitchell <davem@iabyn.com>2015-06-29 12:02:18 +0100
committerDavid Mitchell <davem@iabyn.com>2016-02-03 08:59:33 +0000
commit41f96e1a89a5842483b2a12424693a876f5b57c0 (patch)
tree3f72bd21072b975b798f6214146e30f4e94cdcd3 /sv.c
parent39de75fd8bd047dccbf78312638f43b5e8fe3d5c (diff)
downloadperl-41f96e1a89a5842483b2a12424693a876f5b57c0.tar.gz
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.
Diffstat (limited to 'sv.c')
-rw-r--r--sv.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/sv.c b/sv.c
index 94f23ea0b4..ac64dfb61a 100644
--- a/sv.c
+++ b/sv.c
@@ -13950,8 +13950,6 @@ Perl_cx_dup(pTHX_ PERL_CONTEXT *cxs, I32 ix, I32 max, CLONE_PARAMS* param)
ncx->blk_sub.argarray = NULL;
ncx->blk_sub.savearray = NULL;
}
- ncx->blk_sub.oldcomppad = (PAD*)ptr_table_fetch(PL_ptr_table,
- ncx->blk_sub.oldcomppad);
ncx->blk_sub.prevcomppad = (PAD*)ptr_table_fetch(PL_ptr_table,
ncx->blk_sub.prevcomppad);
break;