summaryrefslogtreecommitdiff
path: root/tool/rjit
diff options
context:
space:
mode:
authorTakashi Kokubun <takashikkbn@gmail.com>2023-03-11 21:02:06 -0800
committerTakashi Kokubun <takashikkbn@gmail.com>2023-03-11 21:26:40 -0800
commit47a6cfca720729d1ae3af534521cbe2a2f93cd50 (patch)
treee30167083cf09cd62d3c1d77c8ab04f5f216436c /tool/rjit
parent2570374bc8779a923f3bc42fe1731eefbb743edf (diff)
downloadruby-47a6cfca720729d1ae3af534521cbe2a2f93cd50.tar.gz
RJIT: Use as the largest type as possible
to just import stuff easily
Diffstat (limited to 'tool/rjit')
-rwxr-xr-xtool/rjit/bindgen.rb86
1 files changed, 41 insertions, 45 deletions
diff --git a/tool/rjit/bindgen.rb b/tool/rjit/bindgen.rb
index d4712c416a..499443af7a 100755
--- a/tool/rjit/bindgen.rb
+++ b/tool/rjit/bindgen.rb
@@ -343,14 +343,16 @@ nodes = HeaderParser.new(File.join(src_dir, 'rjit_c.h'), cflags: cflags).parse
generator = BindingGenerator.new(
src_path: src_path,
values: {
- INT: %w[
- VM_ENV_DATA_INDEX_SPECVAL
+ LONG: %w[
VM_ENV_DATA_INDEX_ME_CREF
+ VM_ENV_DATA_INDEX_SPECVAL
],
- UINT: %w[
+ SIZET: %w[
+ ARRAY_REDEFINED_OP_FLAG
BOP_AND
BOP_AREF
BOP_EQ
+ BOP_FREEZE
BOP_GE
BOP_GT
BOP_LE
@@ -359,31 +361,48 @@ generator = BindingGenerator.new(
BOP_MOD
BOP_OR
BOP_PLUS
- BOP_FREEZE
- ARRAY_REDEFINED_OP_FLAG
HASH_REDEFINED_OP_FLAG
INTEGER_REDEFINED_OP_FLAG
- STRING_REDEFINED_OP_FLAG
+ INVALID_SHAPE_ID
METHOD_VISI_PRIVATE
METHOD_VISI_PROTECTED
METHOD_VISI_PUBLIC
- OPTIMIZED_METHOD_TYPE_SEND
- OPTIMIZED_METHOD_TYPE_CALL
+ OBJ_TOO_COMPLEX_SHAPE_ID
OPTIMIZED_METHOD_TYPE_BLOCK_CALL
+ OPTIMIZED_METHOD_TYPE_CALL
+ OPTIMIZED_METHOD_TYPE_SEND
OPTIMIZED_METHOD_TYPE_STRUCT_AREF
OPTIMIZED_METHOD_TYPE_STRUCT_ASET
- ROBJECT_EMBED
RARRAY_EMBED_FLAG
+ RARRAY_EMBED_LEN_MASK
+ RARRAY_EMBED_LEN_SHIFT
+ RMODULE_IS_REFINEMENT
+ ROBJECT_EMBED
+ RSTRUCT_EMBED_LEN_MASK
RUBY_EVENT_CLASS
RUBY_EVENT_C_CALL
RUBY_EVENT_C_RETURN
+ RUBY_FIXNUM_FLAG
+ RUBY_FLONUM_FLAG
+ RUBY_FLONUM_MASK
+ RUBY_FL_SINGLETON
+ RUBY_IMMEDIATE_MASK
+ RUBY_SPECIAL_SHIFT
+ RUBY_SYMBOL_FLAG
+ RUBY_T_ARRAY
+ RUBY_T_ICLASS
+ RUBY_T_MASK
+ RUBY_T_MODULE
+ RUBY_T_STRING
SHAPE_CAPACITY_CHANGE
SHAPE_FLAG_SHIFT
SHAPE_FROZEN
SHAPE_ID_NUM_BITS
SHAPE_INITIAL_CAPACITY
SHAPE_IVAR
+ SHAPE_MASK
SHAPE_ROOT
+ STRING_REDEFINED_OP_FLAG
T_OBJECT
VM_BLOCK_HANDLER_NONE
VM_CALL_ARGS_BLOCKARG
@@ -392,65 +411,42 @@ generator = BindingGenerator.new(
VM_CALL_KWARG
VM_CALL_KW_SPLAT
VM_CALL_KW_SPLAT_bit
+ VM_CALL_OPT_SEND
VM_CALL_TAILCALL
VM_CALL_TAILCALL_bit
- VM_CALL_OPT_SEND
VM_ENV_DATA_INDEX_FLAGS
VM_ENV_DATA_SIZE
VM_ENV_FLAG_LOCAL
VM_ENV_FLAG_WB_REQUIRED
- VM_FRAME_MAGIC_METHOD
- VM_FRAME_MAGIC_CFUNC
- VM_FRAME_MAGIC_BLOCK
VM_FRAME_FLAG_BMETHOD
- VM_FRAME_FLAG_LAMBDA
VM_FRAME_FLAG_CFRAME
VM_FRAME_FLAG_CFRAME_KW
+ VM_FRAME_FLAG_LAMBDA
VM_FRAME_FLAG_MODIFIED_BLOCK_PARAM
- VM_METHOD_TYPE_ISEQ
- VM_METHOD_TYPE_NOTIMPLEMENTED
- VM_METHOD_TYPE_CFUNC
+ VM_FRAME_MAGIC_BLOCK
+ VM_FRAME_MAGIC_CFUNC
+ VM_FRAME_MAGIC_METHOD
+ VM_METHOD_TYPE_ALIAS
VM_METHOD_TYPE_ATTRSET
+ VM_METHOD_TYPE_BMETHOD
+ VM_METHOD_TYPE_CFUNC
+ VM_METHOD_TYPE_ISEQ
VM_METHOD_TYPE_IVAR
VM_METHOD_TYPE_MISSING
- VM_METHOD_TYPE_BMETHOD
- VM_METHOD_TYPE_ALIAS
+ VM_METHOD_TYPE_NOTIMPLEMENTED
VM_METHOD_TYPE_OPTIMIZED
+ VM_METHOD_TYPE_REFINED
VM_METHOD_TYPE_UNDEF
VM_METHOD_TYPE_ZSUPER
- VM_METHOD_TYPE_REFINED
- imemo_iseq
block_type_iseq
- ],
- ULONG: %w[
- INVALID_SHAPE_ID
- OBJ_TOO_COMPLEX_SHAPE_ID
- RUBY_FIXNUM_FLAG
- RUBY_FLONUM_FLAG
- RUBY_FLONUM_MASK
- RUBY_SYMBOL_FLAG
- RUBY_SPECIAL_SHIFT
- RUBY_IMMEDIATE_MASK
- RARRAY_EMBED_LEN_MASK
- RARRAY_EMBED_LEN_SHIFT
- SHAPE_MASK
- RUBY_T_ARRAY
- RUBY_T_MASK
- RUBY_T_ICLASS
- RUBY_T_MODULE
- RUBY_T_STRING
- RMODULE_IS_REFINEMENT
- RUBY_FL_SINGLETON
- RSTRUCT_EMBED_LEN_MASK
- ],
- SIZET: %w[
+ imemo_iseq
+ rb_block_param_proxy
rb_cFalseClass
rb_cFloat
rb_cInteger
rb_cNilClass
rb_cSymbol
rb_cTrueClass
- rb_block_param_proxy
],
},
types: %w[