This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
use LOOP struct for entergiven op
[perl5.git] / regen / opcodes
index 6ad9c62..b60eda0 100644 (file)
@@ -57,8 +57,6 @@ padav         private array           ck_null         d0
 padhv          private hash            ck_null         d0
 padany         private value           ck_null         d0
 
-pushre         push regexp             ck_null         d/
-
 # References and stuff.
 
 rv2gv          ref-to-glob cast        ck_rvconst      ds1     
@@ -133,6 +131,7 @@ i_add               integer addition (+)    ck_null         ifsT2   S S
 subtract       subtraction (-)         ck_null         IfsT2   S S
 i_subtract     integer subtraction (-) ck_null         ifsT2   S S
 concat         concatenation (.) or string     ck_concat       fsT2    S S
+multiconcat    concatenation (.) or string     ck_null sT+
 stringify      string                  ck_stringify    fsT@    S
 
 left_shift     left bitshift (<<)      ck_bitop        fsT2    S S
@@ -146,10 +145,10 @@ le                numeric le (<=)         ck_cmp          Iifs2   S S<
 i_le           integer le (<=)         ck_cmp          ifs2    S S<
 ge             numeric ge (>=)         ck_cmp          Iifs2   S S<
 i_ge           integer ge (>=)         ck_cmp          ifs2    S S<
-eq             numeric eq (==)         ck_null         Iifs2   S S<
-i_eq           integer eq (==)         ck_null         ifs2    S S<
-ne             numeric ne (!=)         ck_null         Iifs2   S S<
-i_ne           integer ne (!=)         ck_null         ifs2    S S<
+eq             numeric eq (==)         ck_cmp          Iifs2   S S<
+i_eq           integer eq (==)         ck_cmp          ifs2    S S<
+ne             numeric ne (!=)         ck_cmp          Iifs2   S S<
+i_ne           integer ne (!=)         ck_cmp          ifs2    S S<
 ncmp           numeric comparison (<=>)        ck_null         Iifst2  S S<
 i_ncmp         integer comparison (<=>)        ck_null         ifst2   S S<
 
@@ -180,7 +179,7 @@ ncomplement numeric 1's complement (~)      ck_bitop        fsT1    S
 # warning is gone, this can change to ck_null.
 scomplement    string 1's complement (~)       ck_bitop        fsT1    S
 
-smartmatch     smart match             ck_smartmatch   s2
+smartmatch     smart match             ck_null         ifs2    S S
 
 # High falutin' math.
 
@@ -240,7 +239,7 @@ values              values                  ck_each         dt%     H
 keys           keys                    ck_each         t%      H
 delete         delete                  ck_delete       %       S
 exists         exists                  ck_exists       is%     S
-rv2hv          hash dereference        ck_rvconst      d     
+rv2hv          hash dereference        ck_rvconst      dt1     
 helem          hash element            ck_null         s2      H S
 hslice         hash slice              ck_null         m@      H L
 kvhslice       key/value hash slice    ck_null         m@      H L
@@ -253,7 +252,7 @@ multideref  array or hash lookup    ck_null         ds+
 
 unpack         unpack                  ck_fun          u@      S S?
 pack           pack                    ck_fun          fmst@   S L
-split          split                   ck_split        t@      S S S
+split          split                   ck_split        t/      S S S
 join           join or string          ck_join         fmst@   S L
 
 # List operators.
@@ -294,7 +293,6 @@ andassign   logical and assignment (&&=)    ck_null         s|
 orassign       logical or assignment (||=)     ck_null         s|      
 dorassign      defined or assignment (//=)     ck_null         s|
 
-method         method lookup           ck_method       d.
 entersub       subroutine entry        ck_subr         dm1     L
 leavesub       subroutine exit         ck_null         1       
 leavesublv     lvalue subroutine return        ck_null         1       
@@ -324,12 +322,13 @@ redo              redo                    ck_null         s}
 dump           dump                    ck_null         ds}     
 goto           goto                    ck_null         s}      
 exit           exit                    ck_fun          s%      S?
+method         method lookup           ck_method       d.
 method_named   method with known name  ck_null         d.
 method_super   super with known name   ck_null         d.
 method_redir   redirect method with known name ck_null d.
 method_redir_super     redirect super method with known name   ck_null d.
 
-entergiven     given()                 ck_null         d|
+entergiven     given()                 ck_null         d{
 leavegiven     leave given block       ck_null         1
 enterwhen      when()                  ck_null         d|
 leavewhen      leave when block        ck_null         1