mirror of
https://github.com/ruby/ruby.git
synced 2026-01-27 04:24:23 +00:00
Add BOP_GTGT
This will help JITs (and maybe later the interpreter) optimize Integer#>>.
This commit is contained in:
parent
8aed311038
commit
a25196395e
Notes:
git
2025-12-01 23:20:19 +00:00
@ -24,6 +24,7 @@ enum ruby_basic_operators {
|
||||
BOP_SUCC,
|
||||
BOP_GT,
|
||||
BOP_GE,
|
||||
BOP_GTGT,
|
||||
BOP_NOT,
|
||||
BOP_NEQ,
|
||||
BOP_MATCH,
|
||||
|
||||
1
vm.c
1
vm.c
@ -2444,6 +2444,7 @@ vm_init_redefined_flag(void)
|
||||
OP(GT, GT), (C(Integer), C(Float));
|
||||
OP(GE, GE), (C(Integer), C(Float));
|
||||
OP(LTLT, LTLT), (C(String), C(Array));
|
||||
OP(GTGT, GTGT), (C(Integer));
|
||||
OP(AREF, AREF), (C(Array), C(Hash), C(Integer));
|
||||
OP(ASET, ASET), (C(Array), C(Hash));
|
||||
OP(Length, LENGTH), (C(Array), C(String), C(Hash));
|
||||
|
||||
33
yjit/src/cruby_bindings.inc.rs
generated
33
yjit/src/cruby_bindings.inc.rs
generated
@ -330,22 +330,23 @@ pub const BOP_NIL_P: ruby_basic_operators = 15;
|
||||
pub const BOP_SUCC: ruby_basic_operators = 16;
|
||||
pub const BOP_GT: ruby_basic_operators = 17;
|
||||
pub const BOP_GE: ruby_basic_operators = 18;
|
||||
pub const BOP_NOT: ruby_basic_operators = 19;
|
||||
pub const BOP_NEQ: ruby_basic_operators = 20;
|
||||
pub const BOP_MATCH: ruby_basic_operators = 21;
|
||||
pub const BOP_FREEZE: ruby_basic_operators = 22;
|
||||
pub const BOP_UMINUS: ruby_basic_operators = 23;
|
||||
pub const BOP_MAX: ruby_basic_operators = 24;
|
||||
pub const BOP_MIN: ruby_basic_operators = 25;
|
||||
pub const BOP_HASH: ruby_basic_operators = 26;
|
||||
pub const BOP_CALL: ruby_basic_operators = 27;
|
||||
pub const BOP_AND: ruby_basic_operators = 28;
|
||||
pub const BOP_OR: ruby_basic_operators = 29;
|
||||
pub const BOP_CMP: ruby_basic_operators = 30;
|
||||
pub const BOP_DEFAULT: ruby_basic_operators = 31;
|
||||
pub const BOP_PACK: ruby_basic_operators = 32;
|
||||
pub const BOP_INCLUDE_P: ruby_basic_operators = 33;
|
||||
pub const BOP_LAST_: ruby_basic_operators = 34;
|
||||
pub const BOP_GTGT: ruby_basic_operators = 19;
|
||||
pub const BOP_NOT: ruby_basic_operators = 20;
|
||||
pub const BOP_NEQ: ruby_basic_operators = 21;
|
||||
pub const BOP_MATCH: ruby_basic_operators = 22;
|
||||
pub const BOP_FREEZE: ruby_basic_operators = 23;
|
||||
pub const BOP_UMINUS: ruby_basic_operators = 24;
|
||||
pub const BOP_MAX: ruby_basic_operators = 25;
|
||||
pub const BOP_MIN: ruby_basic_operators = 26;
|
||||
pub const BOP_HASH: ruby_basic_operators = 27;
|
||||
pub const BOP_CALL: ruby_basic_operators = 28;
|
||||
pub const BOP_AND: ruby_basic_operators = 29;
|
||||
pub const BOP_OR: ruby_basic_operators = 30;
|
||||
pub const BOP_CMP: ruby_basic_operators = 31;
|
||||
pub const BOP_DEFAULT: ruby_basic_operators = 32;
|
||||
pub const BOP_PACK: ruby_basic_operators = 33;
|
||||
pub const BOP_INCLUDE_P: ruby_basic_operators = 34;
|
||||
pub const BOP_LAST_: ruby_basic_operators = 35;
|
||||
pub type ruby_basic_operators = u32;
|
||||
pub type rb_serial_t = ::std::os::raw::c_ulonglong;
|
||||
pub const imemo_env: imemo_type = 0;
|
||||
|
||||
33
zjit/src/cruby_bindings.inc.rs
generated
33
zjit/src/cruby_bindings.inc.rs
generated
@ -392,22 +392,23 @@ pub const BOP_NIL_P: ruby_basic_operators = 15;
|
||||
pub const BOP_SUCC: ruby_basic_operators = 16;
|
||||
pub const BOP_GT: ruby_basic_operators = 17;
|
||||
pub const BOP_GE: ruby_basic_operators = 18;
|
||||
pub const BOP_NOT: ruby_basic_operators = 19;
|
||||
pub const BOP_NEQ: ruby_basic_operators = 20;
|
||||
pub const BOP_MATCH: ruby_basic_operators = 21;
|
||||
pub const BOP_FREEZE: ruby_basic_operators = 22;
|
||||
pub const BOP_UMINUS: ruby_basic_operators = 23;
|
||||
pub const BOP_MAX: ruby_basic_operators = 24;
|
||||
pub const BOP_MIN: ruby_basic_operators = 25;
|
||||
pub const BOP_HASH: ruby_basic_operators = 26;
|
||||
pub const BOP_CALL: ruby_basic_operators = 27;
|
||||
pub const BOP_AND: ruby_basic_operators = 28;
|
||||
pub const BOP_OR: ruby_basic_operators = 29;
|
||||
pub const BOP_CMP: ruby_basic_operators = 30;
|
||||
pub const BOP_DEFAULT: ruby_basic_operators = 31;
|
||||
pub const BOP_PACK: ruby_basic_operators = 32;
|
||||
pub const BOP_INCLUDE_P: ruby_basic_operators = 33;
|
||||
pub const BOP_LAST_: ruby_basic_operators = 34;
|
||||
pub const BOP_GTGT: ruby_basic_operators = 19;
|
||||
pub const BOP_NOT: ruby_basic_operators = 20;
|
||||
pub const BOP_NEQ: ruby_basic_operators = 21;
|
||||
pub const BOP_MATCH: ruby_basic_operators = 22;
|
||||
pub const BOP_FREEZE: ruby_basic_operators = 23;
|
||||
pub const BOP_UMINUS: ruby_basic_operators = 24;
|
||||
pub const BOP_MAX: ruby_basic_operators = 25;
|
||||
pub const BOP_MIN: ruby_basic_operators = 26;
|
||||
pub const BOP_HASH: ruby_basic_operators = 27;
|
||||
pub const BOP_CALL: ruby_basic_operators = 28;
|
||||
pub const BOP_AND: ruby_basic_operators = 29;
|
||||
pub const BOP_OR: ruby_basic_operators = 30;
|
||||
pub const BOP_CMP: ruby_basic_operators = 31;
|
||||
pub const BOP_DEFAULT: ruby_basic_operators = 32;
|
||||
pub const BOP_PACK: ruby_basic_operators = 33;
|
||||
pub const BOP_INCLUDE_P: ruby_basic_operators = 34;
|
||||
pub const BOP_LAST_: ruby_basic_operators = 35;
|
||||
pub type ruby_basic_operators = u32;
|
||||
pub type rb_serial_t = ::std::os::raw::c_ulonglong;
|
||||
#[repr(C)]
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user