diff options
author | Father Chrysostomos <sprout@cpan.org> | 2015-01-03 18:50:35 -0800 |
---|---|---|
committer | Father Chrysostomos <sprout@cpan.org> | 2015-01-31 22:03:50 -0800 |
commit | 5d01050abccabc9ab4309d80d4b603d68575e0a8 (patch) | |
tree | cfb8704e39b55834345de342d99972ce1ea26d52 /regen | |
parent | 7dd648412d5aa4efd8fb68cc6d58d99d867af2a2 (diff) | |
download | perl-5d01050abccabc9ab4309d80d4b603d68575e0a8.tar.gz |
Add string- and number-specific bitop types
and also implement the pp functions, though nothing compiles to
these ops yet.
Diffstat (limited to 'regen')
-rwxr-xr-x | regen/opcode.pl | 2 | ||||
-rw-r--r-- | regen/opcodes | 8 |
2 files changed, 10 insertions, 0 deletions
diff --git a/regen/opcode.pl b/regen/opcode.pl index 327e45eda1..765816fd50 100755 --- a/regen/opcode.pl +++ b/regen/opcode.pl @@ -122,6 +122,8 @@ my @raw_alias = ( Perl_pp_shift => ['pop'], Perl_pp_sin => [qw(cos exp log sqrt)], Perl_pp_bit_or => ['bit_xor'], + Perl_pp_nbit_or => ['nbit_xor'], + Perl_pp_sbit_or => ['sbit_xor'], Perl_pp_rv2av => ['rv2hv'], Perl_pp_akeys => ['avalues'], Perl_pp_rkeys => [qw(rvalues reach)], diff --git a/regen/opcodes b/regen/opcodes index 3061d33efb..614a54c439 100644 --- a/regen/opcodes +++ b/regen/opcodes @@ -165,11 +165,19 @@ scmp string comparison (cmp) ck_null ifsT2 S S bit_and bitwise and (&) ck_bitop fst2 S S bit_xor bitwise xor (^) ck_bitop fst2 S S bit_or bitwise or (|) ck_bitop fst2 S S +nbit_and numeric bitiwse and (&) ck_bitop fsT2 S S +nbit_xor numeric bitwise xor (^) ck_bitop fsT2 S S +nbit_or numeric bitwise or (|) ck_bitop fsT2 S S +sbit_and string bitiwse and (&) ck_bitop fst2 S S +sbit_xor string bitwise xor (^) ck_bitop fst2 S S +sbit_or string bitwise or (|) ck_bitop fst2 S S negate negation (-) ck_null Ifst1 S i_negate integer negation (-) ck_null ifst1 S not not ck_null ifs1 S complement 1's complement (~) ck_bitop fsT1 S +ncomplement numeric 1's complement (~) ck_bitop fsT1 S +scomplement string 1's complement (~) ck_null fsT1 S smartmatch smart match ck_smartmatch s2 |