This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
padcv op type
authorFather Chrysostomos <sprout@cpan.org>
Sun, 1 Jul 2012 05:29:28 +0000 (22:29 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Sun, 16 Sep 2012 05:44:52 +0000 (22:44 -0700)
opcode.h
opnames.h
pp.c
pp_proto.h
regen/opcodes

index aeee45c..0d28351 100644 (file)
--- a/opcode.h
+++ b/opcode.h
@@ -521,6 +521,7 @@ EXTCONST char* const PL_op_name[] = {
        "coreargs",
        "runcv",
        "fc",
+       "padcv",
        "freed",
 };
 #endif
@@ -902,6 +903,7 @@ EXTCONST char* const PL_op_desc[] = {
        "CORE:: subroutine",
        "__SUB__",
        "fc",
+       "private subroutine",
        "freed op",
 };
 #endif
@@ -1297,6 +1299,7 @@ EXT Perl_ppaddr_t PL_ppaddr[] /* or perlvars.h */
        Perl_pp_coreargs,
        Perl_pp_runcv,
        Perl_pp_fc,
+       Perl_pp_padcv,
 }
 #endif
 #ifdef PERL_PPADDR_INITED
@@ -1688,6 +1691,7 @@ EXT Perl_check_t PL_check[] /* or perlvars.h */
        Perl_ck_null,           /* coreargs */
        Perl_ck_null,           /* runcv */
        Perl_ck_fun,            /* fc */
+       Perl_ck_null,           /* padcv */
 }
 #endif
 #ifdef PERL_CHECK_INITED
@@ -2073,6 +2077,7 @@ EXTCONST U32 PL_opargs[] = {
        0x00000600,     /* coreargs */
        0x00000004,     /* runcv */
        0x00009b8e,     /* fc */
+       0x00000040,     /* padcv */
 };
 #endif
 
index 53699fd..d8c9f64 100644 (file)
--- a/opnames.h
+++ b/opnames.h
@@ -387,10 +387,11 @@ typedef enum opcode {
        OP_COREARGS      = 370,
        OP_RUNCV         = 371,
        OP_FC            = 372,
+       OP_PADCV         = 373,
        OP_max          
 } opcode;
 
-#define MAXO 373
+#define MAXO 374
 #define OP_FREED MAXO
 
 /* the OP_IS_* macros are optimized to a simple range check because
diff --git a/pp.c b/pp.c
index 171201d..0c62fae 100644 (file)
--- a/pp.c
+++ b/pp.c
@@ -144,6 +144,11 @@ PP(pp_padhv)
     RETURN;
 }
 
+PP(pp_padcv)
+{
+    DIE(aTHX_ "panic: padcv");
+}
+
 /* Translations. */
 
 static const char S_no_symref_sv[] =
index 833738d..2cdaf3a 100644 (file)
@@ -163,6 +163,7 @@ PERL_CALLCONV OP *Perl_pp_or(pTHX);
 PERL_CALLCONV OP *Perl_pp_ord(pTHX);
 PERL_CALLCONV OP *Perl_pp_pack(pTHX);
 PERL_CALLCONV OP *Perl_pp_padav(pTHX);
+PERL_CALLCONV OP *Perl_pp_padcv(pTHX);
 PERL_CALLCONV OP *Perl_pp_padhv(pTHX);
 PERL_CALLCONV OP *Perl_pp_padsv(pTHX);
 PERL_CALLCONV OP *Perl_pp_pipe_op(pTHX);
index ad10c17..117566b 100644 (file)
@@ -546,3 +546,5 @@ runcv               __SUB__                 ck_null         s0
 
 # fc and \F
 fc             fc                      ck_fun          fstu%   S?
+
+padcv          private subroutine      ck_null         d0