debase-ruby_core_source 3.2.3 → 3.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/Rakefile +2 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ccan/list/list.h +4 -2
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/dln.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/eval_intern.h +4 -2
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/insns.inc +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/insns_info.inc +269 -187
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/class.h +46 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/cont.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/encoding.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/error.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/gc.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/object.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/random.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/string.h +0 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/symbol.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/thread.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/transcode.h +3 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/variable.h +5 -3
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/vm.h +5 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/iseq.h +5 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/method.h +0 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/optunifs.inc +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/parse.h +2 -2
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/ast.h +4612 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/defines.h +94 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/diagnostic.h +297 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/encoding.h +248 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/extension.h +18 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/node.h +57 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/options.h +204 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/pack.h +152 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/parser.h +716 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/prettyprint.h +26 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/prism.h +272 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/regexp.h +33 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_buffer.h +146 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_char.h +205 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_constant_pool.h +191 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_list.h +97 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_memchr.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_newline_list.h +104 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_state_stack.h +42 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_string.h +150 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_string_list.h +44 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_strncasecmp.h +32 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/util/pm_strpbrk.h +43 -0
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/prism/version.h +29 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/prism_compile.h +12 -1
- data/lib/debase/ruby_core_source/ruby-3.3.0-p0/revision.h +5 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/rjit.h +6 -8
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/rjit_c.h +0 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/rubyparser.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/shape.h +2 -12
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/thread_pthread.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/variable.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/version.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm.inc +189 -136
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_callinfo.h +8 -1
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_core.h +64 -5
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_insnhelper.h +4 -14
- data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vmtc.inc +2 -0
- data/lib/debase/ruby_core_source/version.rb +1 -1
- metadata +148 -124
- data/lib/debase/ruby_core_source/ruby-3.3.0-preview3/revision.h +0 -5
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/addr2line.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/builtin.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ccan/check_type/check_type.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ccan/container_of/container_of.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ccan/str/str.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/constant.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/darray.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/debug_counter.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/encindex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/hrtime.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/id.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/id_table.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/array.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/basic_operators.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/bignum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/bits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/cmdlineopt.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/compar.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/compile.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/compilers.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/complex.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/dir.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/enc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/enum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/enumerator.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/eval.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/file.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/fixnum.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/hash.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/imemo.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/inits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/io.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/load.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/loadpath.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/math.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/missing.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/numeric.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/parse.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/proc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/process.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/ractor.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/range.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/rational.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/re.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/ruby_parser.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/sanitizers.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/serial.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/signal.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/static_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/struct.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/time.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/util.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal/warnings.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/internal.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/known_errors.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/node_name.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/optinsn.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/parser_bits.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/parser_node.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/parser_st.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/parser_value.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/probes_helper.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ractor_core.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/regenc.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/regint.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/regparse.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ruby_assert.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/ruby_atomic.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/siphash.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/symbol.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/thread_none.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/thread_win32.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/timev.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/transcode_data.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_call_iseq_optimized.inc +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_debug.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_exec.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_opts.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/vm_sync.h +0 -0
- /data/lib/debase/ruby_core_source/{ruby-3.3.0-preview3 → ruby-3.3.0-p0}/yjit.h +0 -0
@@ -118,6 +118,7 @@ const char rb_vm_insn_name_base[] =
|
|
118
118
|
"expandarray" "\0"
|
119
119
|
"concatarray" "\0"
|
120
120
|
"splatarray" "\0"
|
121
|
+
"splatkw" "\0"
|
121
122
|
"newhash" "\0"
|
122
123
|
"newrange" "\0"
|
123
124
|
"pop" "\0"
|
@@ -219,6 +220,7 @@ const char rb_vm_insn_name_base[] =
|
|
219
220
|
"trace_expandarray" "\0"
|
220
221
|
"trace_concatarray" "\0"
|
221
222
|
"trace_splatarray" "\0"
|
223
|
+
"trace_splatkw" "\0"
|
222
224
|
"trace_newhash" "\0"
|
223
225
|
"trace_newrange" "\0"
|
224
226
|
"trace_pop" "\0"
|
@@ -292,21 +294,21 @@ const char rb_vm_insn_name_base[] =
|
|
292
294
|
const unsigned short rb_vm_insn_name_offset[] = {
|
293
295
|
0, 4, 13, 22, 36, 50, 69, 80, 91, 111, 131, 148,
|
294
296
|
165, 186, 198, 210, 220, 230, 237, 245, 255, 272, 282, 296,
|
295
|
-
308, 317, 324, 333, 349, 358, 366, 378, 390, 401, 409,
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
793, 801,
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
297
|
+
308, 317, 324, 333, 349, 358, 366, 378, 390, 401, 409, 417,
|
298
|
+
426, 430, 434, 439, 444, 456, 461, 466, 478, 486, 498, 509,
|
299
|
+
522, 532, 544, 557, 571, 576, 599, 611, 626, 636, 651, 669,
|
300
|
+
681, 693, 699, 705, 710, 719, 732, 742, 747, 765, 774, 784,
|
301
|
+
793, 801, 809, 816, 824, 831, 838, 845, 852, 861, 869, 876,
|
302
|
+
885, 894, 908, 922, 933, 942, 954, 963, 971, 988, 1002, 1029,
|
303
|
+
1062, 1076, 1090, 1104, 1118, 1139, 1160, 1170, 1185, 1200, 1220, 1240,
|
304
|
+
1265, 1282, 1299, 1325, 1351, 1374, 1397, 1424, 1442, 1460, 1476, 1492,
|
305
|
+
1505, 1519, 1535, 1558, 1574, 1594, 1612, 1627, 1640, 1655, 1677, 1692,
|
306
|
+
1706, 1724, 1742, 1759, 1773, 1787, 1802, 1812, 1822, 1833, 1844, 1862,
|
307
|
+
1873, 1884, 1902, 1916, 1934, 1951, 1970, 1986, 2004, 2023, 2043, 2054,
|
308
|
+
2083, 2101, 2122, 2138, 2159, 2183, 2201, 2219, 2231, 2243, 2254, 2269,
|
309
|
+
2288, 2304, 2315, 2339, 2354, 2370, 2385, 2399, 2413, 2426, 2440, 2453,
|
310
|
+
2466, 2479, 2492, 2507, 2521, 2534, 2549, 2564, 2584, 2604, 2621, 2636,
|
311
|
+
2654, 2669, 2683, 2706, 2726, 2759, 2798, 2818, 2838, 2858, 2878, 2905,
|
310
312
|
};
|
311
313
|
|
312
314
|
ASSERT_VM_INSTRUCTION_SIZE(rb_vm_insn_name_offset);
|
@@ -327,14 +329,14 @@ RUBY_SYMBOL_EXPORT_END
|
|
327
329
|
#ifdef RUBY_VM_INSNS_INFO
|
328
330
|
const uint8_t rb_vm_insn_len_info[] = {
|
329
331
|
1, 3, 3, 3, 3, 3, 3, 2, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2,
|
330
|
-
1, 3, 1, 2, 2, 2, 2, 3, 1, 2, 2, 2, 1, 1, 2, 1, 2, 2, 2, 2, 4, 4,
|
331
|
-
3, 2, 4, 3, 3, 3, 2, 2, 3, 2, 3, 3, 3, 2, 1, 2, 2, 2, 2, 2, 3, 3,
|
332
|
-
2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 2,
|
333
|
-
2, 3, 3, 2, 2, 2, 2, 1, 1, 1, 3, 3, 3, 3, 3, 3, 2, 3, 3, 3, 3, 2,
|
334
|
-
2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 3, 1, 2, 2, 2, 2, 3, 1, 2,
|
335
|
-
2, 1, 2, 2, 2, 2, 4, 4, 2, 3, 2, 4, 3, 3, 3, 2, 2, 3, 2, 3, 3,
|
336
|
-
1, 2, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2,
|
337
|
-
2, 3, 3, 2, 2, 2, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 1, 1,
|
332
|
+
1, 3, 1, 2, 2, 2, 2, 3, 1, 2, 1, 2, 2, 1, 1, 2, 1, 2, 2, 2, 2, 4, 4,
|
333
|
+
2, 3, 2, 4, 3, 3, 3, 2, 2, 3, 2, 3, 3, 3, 2, 1, 2, 2, 2, 2, 2, 3, 3,
|
334
|
+
2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 2,
|
335
|
+
2, 2, 3, 3, 2, 2, 2, 2, 1, 1, 1, 3, 3, 3, 3, 3, 3, 2, 3, 3, 3, 3, 2,
|
336
|
+
2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 3, 1, 2, 2, 2, 2, 3, 1, 2, 1, 2, 2,
|
337
|
+
1, 1, 2, 1, 2, 2, 2, 2, 4, 4, 2, 3, 2, 4, 3, 3, 3, 2, 2, 3, 2, 3, 3,
|
338
|
+
3, 2, 1, 2, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2,
|
339
|
+
2, 2, 2, 3, 3, 2, 2, 2, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 1, 1,
|
338
340
|
};
|
339
341
|
|
340
342
|
ASSERT_VM_INSTRUCTION_SIZE(rb_vm_insn_len_info);
|
@@ -362,27 +364,7 @@ const char rb_vm_insn_op_base[] =
|
|
362
364
|
"I" "\0" "I" "\0" "" "\0" "" "\0" "V" "\0"
|
363
365
|
"N" "\0" "V" "\0" "N" "\0" "" "\0" "NN" "\0"
|
364
366
|
"" "\0" "N" "\0" "N" "\0" "V" "\0" "V" "\0"
|
365
|
-
"NN" "\0" "" "\0" "V" "\0" "
|
366
|
-
"" "\0" "" "\0" "N" "\0" "" "\0" "N" "\0"
|
367
|
-
"N" "\0" "N" "\0" "N" "\0" "NVV" "\0" "IAV" "\0"
|
368
|
-
"N" "\0" "LL" "\0" "N" "\0" "ISN" "\0" "IS" "\0"
|
369
|
-
"IS" "\0" "CS" "\0" "C" "\0" "C" "\0" "VC" "\0"
|
370
|
-
"C" "\0" "VC" "\0" "NI" "\0" "CS" "\0" "C" "\0"
|
371
|
-
"" "\0" "N" "\0" "O" "\0" "O" "\0" "O" "\0"
|
372
|
-
"O" "\0" "ST" "\0" "HO" "\0" "C" "\0" "C" "\0"
|
373
|
-
"C" "\0" "C" "\0" "C" "\0" "C" "\0" "CC" "\0"
|
374
|
-
"C" "\0" "C" "\0" "C" "\0" "C" "\0" "C" "\0"
|
375
|
-
"C" "\0" "C" "\0" "C" "\0" "C" "\0" "VC" "\0"
|
376
|
-
"VC" "\0" "C" "\0" "C" "\0" "C" "\0" "C" "\0"
|
377
|
-
"C" "\0" "C" "\0" "R" "\0" "RN" "\0" "RN" "\0"
|
378
|
-
"L" "\0" "L" "\0" "L" "\0" "L" "\0" "" "\0"
|
379
|
-
"" "\0" "" "\0" "LN" "\0" "LN" "\0" "LN" "\0"
|
380
|
-
"LN" "\0" "LN" "\0" "NN" "\0" "N" "\0" "IA" "\0"
|
381
|
-
"IA" "\0" "IJ" "\0" "IJ" "\0" "K" "\0" "I" "\0"
|
382
|
-
"I" "\0" "I" "\0" "I" "\0" "" "\0" "" "\0"
|
383
|
-
"V" "\0" "N" "\0" "V" "\0" "N" "\0" "" "\0"
|
384
|
-
"NN" "\0" "" "\0" "N" "\0" "N" "\0" "V" "\0"
|
385
|
-
"V" "\0" "NN" "\0" "" "\0" "V" "\0" "N" "\0"
|
367
|
+
"NN" "\0" "" "\0" "V" "\0" "" "\0" "N" "\0"
|
386
368
|
"N" "\0" "" "\0" "" "\0" "N" "\0" "" "\0"
|
387
369
|
"N" "\0" "N" "\0" "N" "\0" "N" "\0" "NVV" "\0"
|
388
370
|
"IAV" "\0" "N" "\0" "LL" "\0" "N" "\0" "ISN" "\0"
|
@@ -396,27 +378,47 @@ const char rb_vm_insn_op_base[] =
|
|
396
378
|
"VC" "\0" "VC" "\0" "C" "\0" "C" "\0" "C" "\0"
|
397
379
|
"C" "\0" "C" "\0" "C" "\0" "R" "\0" "RN" "\0"
|
398
380
|
"RN" "\0" "L" "\0" "L" "\0" "L" "\0" "L" "\0"
|
399
|
-
"" "\0" "" "\0"
|
381
|
+
"" "\0" "" "\0" "" "\0" "LN" "\0" "LN" "\0"
|
382
|
+
"LN" "\0" "LN" "\0" "LN" "\0" "NN" "\0" "N" "\0"
|
383
|
+
"IA" "\0" "IA" "\0" "IJ" "\0" "IJ" "\0" "K" "\0"
|
384
|
+
"I" "\0" "I" "\0" "I" "\0" "I" "\0" "" "\0"
|
385
|
+
"" "\0" "V" "\0" "N" "\0" "V" "\0" "N" "\0"
|
386
|
+
"" "\0" "NN" "\0" "" "\0" "N" "\0" "N" "\0"
|
387
|
+
"V" "\0" "V" "\0" "NN" "\0" "" "\0" "V" "\0"
|
388
|
+
"" "\0" "N" "\0" "N" "\0" "" "\0" "" "\0"
|
389
|
+
"N" "\0" "" "\0" "N" "\0" "N" "\0" "N" "\0"
|
390
|
+
"N" "\0" "NVV" "\0" "IAV" "\0" "N" "\0" "LL" "\0"
|
391
|
+
"N" "\0" "ISN" "\0" "IS" "\0" "IS" "\0" "CS" "\0"
|
392
|
+
"C" "\0" "C" "\0" "VC" "\0" "C" "\0" "VC" "\0"
|
393
|
+
"NI" "\0" "CS" "\0" "C" "\0" "" "\0" "N" "\0"
|
394
|
+
"O" "\0" "O" "\0" "O" "\0" "O" "\0" "ST" "\0"
|
395
|
+
"HO" "\0" "C" "\0" "C" "\0" "C" "\0" "C" "\0"
|
396
|
+
"C" "\0" "C" "\0" "CC" "\0" "C" "\0" "C" "\0"
|
397
|
+
"C" "\0" "C" "\0" "C" "\0" "C" "\0" "C" "\0"
|
398
|
+
"C" "\0" "C" "\0" "VC" "\0" "VC" "\0" "C" "\0"
|
399
|
+
"C" "\0" "C" "\0" "C" "\0" "C" "\0" "C" "\0"
|
400
|
+
"R" "\0" "RN" "\0" "RN" "\0" "L" "\0" "L" "\0"
|
401
|
+
"L" "\0" "L" "\0" "" "\0" "" "\0"
|
400
402
|
;
|
401
403
|
|
402
404
|
const unsigned short rb_vm_insn_op_offset[] = {
|
403
405
|
0, 1, 4, 7, 10, 13, 16, 19, 21, 24, 27, 30,
|
404
406
|
33, 35, 37, 39, 41, 43, 44, 45, 47, 49, 51, 53,
|
405
|
-
54, 57, 58, 60, 62, 64, 66, 69, 70, 72,
|
406
|
-
77, 78,
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
268,
|
414
|
-
|
415
|
-
312,
|
416
|
-
|
417
|
-
|
418
|
-
400, 402, 404, 406, 408, 410,
|
419
|
-
426, 428, 430,
|
407
|
+
54, 57, 58, 60, 62, 64, 66, 69, 70, 72, 73, 75,
|
408
|
+
77, 78, 79, 81, 82, 84, 86, 88, 90, 94, 98, 100,
|
409
|
+
103, 105, 109, 112, 115, 118, 120, 122, 125, 127, 130, 133,
|
410
|
+
136, 138, 139, 141, 143, 145, 147, 149, 152, 155, 157, 159,
|
411
|
+
161, 163, 165, 167, 170, 172, 174, 176, 178, 180, 182, 184,
|
412
|
+
186, 188, 191, 194, 196, 198, 200, 202, 204, 206, 208, 211,
|
413
|
+
214, 216, 218, 220, 222, 223, 224, 225, 228, 231, 234, 237,
|
414
|
+
240, 243, 245, 248, 251, 254, 257, 259, 261, 263, 265, 267,
|
415
|
+
268, 269, 271, 273, 275, 277, 278, 281, 282, 284, 286, 288,
|
416
|
+
290, 293, 294, 296, 297, 299, 301, 302, 303, 305, 306, 308,
|
417
|
+
310, 312, 314, 318, 322, 324, 327, 329, 333, 336, 339, 342,
|
418
|
+
344, 346, 349, 351, 354, 357, 360, 362, 363, 365, 367, 369,
|
419
|
+
371, 373, 376, 379, 381, 383, 385, 387, 389, 391, 394, 396,
|
420
|
+
398, 400, 402, 404, 406, 408, 410, 412, 415, 418, 420, 422,
|
421
|
+
424, 426, 428, 430, 432, 435, 438, 440, 442, 444, 446, 447,
|
420
422
|
};
|
421
423
|
|
422
424
|
ASSERT_VM_INSTRUCTION_SIZE(rb_vm_insn_op_offset);
|
@@ -484,7 +486,7 @@ leafness_of_checkmatch(rb_num_t flag)
|
|
484
486
|
return false;
|
485
487
|
}
|
486
488
|
}
|
487
|
-
#line
|
489
|
+
#line 490 "insns_info.inc"
|
488
490
|
|
489
491
|
#line 10 "tool/ruby_vm/views/_sp_inc_helpers.erb"
|
490
492
|
|
@@ -514,7 +516,7 @@ sp_inc_of_invokeblock(const struct rb_callinfo *ci)
|
|
514
516
|
* instructions, except that it does not pop receiver. */
|
515
517
|
return sp_inc_of_sendish(ci) + 1;
|
516
518
|
}
|
517
|
-
#line
|
519
|
+
#line 520 "insns_info.inc"
|
518
520
|
|
519
521
|
#ifndef RUBY_VM_EXEC_H
|
520
522
|
/* can't #include "vm_exec.h" here... */
|
@@ -821,6 +823,15 @@ PUREFUNC(MAYBE_UNUSED(static rb_num_t attr_popn_splatarray(VALUE flag)));
|
|
821
823
|
PUREFUNC(MAYBE_UNUSED(static rb_num_t attr_retn_splatarray(VALUE flag)));
|
822
824
|
PUREFUNC(MAYBE_UNUSED(static rb_snum_t attr_sp_inc_splatarray(VALUE flag)));
|
823
825
|
PUREFUNC(MAYBE_UNUSED(static rb_num_t attr_width_splatarray(VALUE flag)));
|
826
|
+
PUREFUNC(MAYBE_UNUSED(static enum ruby_vminsn_type attr_bin_splatkw(void)));
|
827
|
+
PUREFUNC(MAYBE_UNUSED(static bool attr_handles_sp_splatkw(void)));
|
828
|
+
PUREFUNC(MAYBE_UNUSED(static bool attr_leaf_splatkw(void)));
|
829
|
+
PUREFUNC(MAYBE_UNUSED(static const char* attr_name_splatkw(void)));
|
830
|
+
PUREFUNC(MAYBE_UNUSED(static rb_num_t attr_open_splatkw(void)));
|
831
|
+
PUREFUNC(MAYBE_UNUSED(static rb_num_t attr_popn_splatkw(void)));
|
832
|
+
PUREFUNC(MAYBE_UNUSED(static rb_num_t attr_retn_splatkw(void)));
|
833
|
+
PUREFUNC(MAYBE_UNUSED(static rb_snum_t attr_sp_inc_splatkw(void)));
|
834
|
+
PUREFUNC(MAYBE_UNUSED(static rb_num_t attr_width_splatkw(void)));
|
824
835
|
PUREFUNC(MAYBE_UNUSED(static enum ruby_vminsn_type attr_bin_newhash(rb_num_t num)));
|
825
836
|
PUREFUNC(MAYBE_UNUSED(static bool attr_handles_sp_newhash(rb_num_t num)));
|
826
837
|
PUREFUNC(MAYBE_UNUSED(static bool attr_leaf_newhash(rb_num_t num)));
|
@@ -1982,7 +1993,7 @@ attr_leaf_getspecial(
|
|
1982
1993
|
return
|
1983
1994
|
#line 192 "insns.def"
|
1984
1995
|
(type == 0) ? true : false;
|
1985
|
-
#line
|
1996
|
+
#line 1997 "insns_info.inc"
|
1986
1997
|
}
|
1987
1998
|
|
1988
1999
|
/* attr const char* name @ getspecial(key, type)()(val) */
|
@@ -2138,7 +2149,7 @@ attr_leaf_getinstancevariable(
|
|
2138
2149
|
return
|
2139
2150
|
#line 214 "insns.def"
|
2140
2151
|
false;
|
2141
|
-
#line
|
2152
|
+
#line 2153 "insns_info.inc"
|
2142
2153
|
}
|
2143
2154
|
|
2144
2155
|
/* attr const char* name @ getinstancevariable(id, ic)()(val) */
|
@@ -2231,7 +2242,7 @@ attr_leaf_setinstancevariable(
|
|
2231
2242
|
return
|
2232
2243
|
#line 225 "insns.def"
|
2233
2244
|
false;
|
2234
|
-
#line
|
2245
|
+
#line 2246 "insns_info.inc"
|
2235
2246
|
}
|
2236
2247
|
|
2237
2248
|
/* attr const char* name @ setinstancevariable(id, ic)(val)() */
|
@@ -2324,7 +2335,7 @@ attr_leaf_getclassvariable(
|
|
2324
2335
|
return
|
2325
2336
|
#line 237 "insns.def"
|
2326
2337
|
false;
|
2327
|
-
#line
|
2338
|
+
#line 2339 "insns_info.inc"
|
2328
2339
|
}
|
2329
2340
|
|
2330
2341
|
/* attr const char* name @ getclassvariable(id, ic)()(val) */
|
@@ -2417,7 +2428,7 @@ attr_leaf_setclassvariable(
|
|
2417
2428
|
return
|
2418
2429
|
#line 250 "insns.def"
|
2419
2430
|
false;
|
2420
|
-
#line
|
2431
|
+
#line 2432 "insns_info.inc"
|
2421
2432
|
}
|
2422
2433
|
|
2423
2434
|
/* attr const char* name @ setclassvariable(id, ic)(val)() */
|
@@ -2501,7 +2512,7 @@ attr_leaf_opt_getconstant_path(MAYBE_UNUSED(IC ic))
|
|
2501
2512
|
return
|
2502
2513
|
#line 261 "insns.def"
|
2503
2514
|
false;
|
2504
|
-
#line
|
2515
|
+
#line 2516 "insns_info.inc"
|
2505
2516
|
}
|
2506
2517
|
|
2507
2518
|
/* attr const char* name @ opt_getconstant_path(ic)()(val) */
|
@@ -2567,7 +2578,7 @@ attr_leaf_getconstant(MAYBE_UNUSED(ID id))
|
|
2567
2578
|
return
|
2568
2579
|
#line 276 "insns.def"
|
2569
2580
|
false;
|
2570
|
-
#line
|
2581
|
+
#line 2582 "insns_info.inc"
|
2571
2582
|
}
|
2572
2583
|
|
2573
2584
|
/* attr const char* name @ getconstant(id)(klass, allow_nil)(val) */
|
@@ -2633,7 +2644,7 @@ attr_leaf_setconstant(MAYBE_UNUSED(ID id))
|
|
2633
2644
|
return
|
2634
2645
|
#line 292 "insns.def"
|
2635
2646
|
false;
|
2636
|
-
#line
|
2647
|
+
#line 2648 "insns_info.inc"
|
2637
2648
|
}
|
2638
2649
|
|
2639
2650
|
/* attr const char* name @ setconstant(id)(val, cbase)() */
|
@@ -2699,7 +2710,7 @@ attr_leaf_getglobal(MAYBE_UNUSED(ID gid))
|
|
2699
2710
|
return
|
2700
2711
|
#line 305 "insns.def"
|
2701
2712
|
false;
|
2702
|
-
#line
|
2713
|
+
#line 2714 "insns_info.inc"
|
2703
2714
|
}
|
2704
2715
|
|
2705
2716
|
/* attr const char* name @ getglobal(gid)()(val) */
|
@@ -2765,7 +2776,7 @@ attr_leaf_setglobal(MAYBE_UNUSED(ID gid))
|
|
2765
2776
|
return
|
2766
2777
|
#line 316 "insns.def"
|
2767
2778
|
false;
|
2768
|
-
#line
|
2779
|
+
#line 2780 "insns_info.inc"
|
2769
2780
|
}
|
2770
2781
|
|
2771
2782
|
/* attr const char* name @ setglobal(gid)(val)() */
|
@@ -3020,7 +3031,7 @@ attr_leaf_putspecialobject(MAYBE_UNUSED(rb_num_t value_type))
|
|
3020
3031
|
return
|
3021
3032
|
#line 363 "insns.def"
|
3022
3033
|
(value_type == VM_SPECIAL_OBJECT_VMCORE);
|
3023
|
-
#line
|
3034
|
+
#line 3035 "insns_info.inc"
|
3024
3035
|
}
|
3025
3036
|
|
3026
3037
|
/* attr const char* name @ putspecialobject(value_type)()(val) */
|
@@ -3149,7 +3160,7 @@ attr_leaf_concatstrings(MAYBE_UNUSED(rb_num_t num))
|
|
3149
3160
|
return
|
3150
3161
|
#line 389 "insns.def"
|
3151
3162
|
false;
|
3152
|
-
#line
|
3163
|
+
#line 3164 "insns_info.inc"
|
3153
3164
|
}
|
3154
3165
|
|
3155
3166
|
/* attr const char* name @ concatstrings(num)(...)(val) */
|
@@ -3187,7 +3198,7 @@ attr_sp_inc_concatstrings(MAYBE_UNUSED(rb_num_t num))
|
|
3187
3198
|
return
|
3188
3199
|
#line 390 "insns.def"
|
3189
3200
|
1 - (rb_snum_t)num;
|
3190
|
-
#line
|
3201
|
+
#line 3202 "insns_info.inc"
|
3191
3202
|
}
|
3192
3203
|
|
3193
3204
|
/* attr rb_num_t width @ concatstrings(num)(...)(val) */
|
@@ -3290,7 +3301,7 @@ attr_leaf_toregexp(
|
|
3290
3301
|
return
|
3291
3302
|
#line 416 "insns.def"
|
3292
3303
|
false;
|
3293
|
-
#line
|
3304
|
+
#line 3305 "insns_info.inc"
|
3294
3305
|
}
|
3295
3306
|
|
3296
3307
|
/* attr const char* name @ toregexp(opt, cnt)(...)(val) */
|
@@ -3343,7 +3354,7 @@ attr_sp_inc_toregexp(
|
|
3343
3354
|
return
|
3344
3355
|
#line 417 "insns.def"
|
3345
3356
|
1 - (rb_snum_t)cnt;
|
3346
|
-
#line
|
3357
|
+
#line 3358 "insns_info.inc"
|
3347
3358
|
}
|
3348
3359
|
|
3349
3360
|
/* attr rb_num_t width @ toregexp(opt, cnt)(...)(val) */
|
@@ -3475,7 +3486,7 @@ attr_sp_inc_newarray(MAYBE_UNUSED(rb_num_t num))
|
|
3475
3486
|
return
|
3476
3487
|
#line 440 "insns.def"
|
3477
3488
|
1 - (rb_snum_t)num;
|
3478
|
-
#line
|
3489
|
+
#line 3490 "insns_info.inc"
|
3479
3490
|
}
|
3480
3491
|
|
3481
3492
|
/* attr rb_num_t width @ newarray(num)(...)(val) */
|
@@ -3541,7 +3552,7 @@ attr_sp_inc_newarraykwsplat(MAYBE_UNUSED(rb_num_t num))
|
|
3541
3552
|
return
|
3542
3553
|
#line 455 "insns.def"
|
3543
3554
|
1 - (rb_snum_t)num;
|
3544
|
-
#line
|
3555
|
+
#line 3556 "insns_info.inc"
|
3545
3556
|
}
|
3546
3557
|
|
3547
3558
|
/* attr rb_num_t width @ newarraykwsplat(num)(...)(val) */
|
@@ -3694,7 +3705,10 @@ attr_handles_sp_expandarray(
|
|
3694
3705
|
MAYBE_UNUSED(rb_num_t flag)
|
3695
3706
|
)
|
3696
3707
|
{
|
3697
|
-
return
|
3708
|
+
return
|
3709
|
+
#line 501 "insns.def"
|
3710
|
+
true;
|
3711
|
+
#line 3712 "insns_info.inc"
|
3698
3712
|
}
|
3699
3713
|
|
3700
3714
|
/* attr bool leaf @ expandarray(num, flag)(..., ary)(...) */
|
@@ -3705,9 +3719,9 @@ attr_leaf_expandarray(
|
|
3705
3719
|
)
|
3706
3720
|
{
|
3707
3721
|
return
|
3708
|
-
#line
|
3722
|
+
#line 502 "insns.def"
|
3709
3723
|
false;
|
3710
|
-
#line
|
3724
|
+
#line 3725 "insns_info.inc"
|
3711
3725
|
}
|
3712
3726
|
|
3713
3727
|
/* attr const char* name @ expandarray(num, flag)(..., ary)(...) */
|
@@ -3758,9 +3772,9 @@ attr_sp_inc_expandarray(
|
|
3758
3772
|
)
|
3759
3773
|
{
|
3760
3774
|
return
|
3761
|
-
#line
|
3775
|
+
#line 503 "insns.def"
|
3762
3776
|
(rb_snum_t)num - 1 + (flag & 1 ? 1 : 0);
|
3763
|
-
#line
|
3777
|
+
#line 3778 "insns_info.inc"
|
3764
3778
|
}
|
3765
3779
|
|
3766
3780
|
/* attr rb_num_t width @ expandarray(num, flag)(..., ary)(...) */
|
@@ -3792,9 +3806,9 @@ bool
|
|
3792
3806
|
attr_leaf_concatarray(void)
|
3793
3807
|
{
|
3794
3808
|
return
|
3795
|
-
#line
|
3809
|
+
#line 514 "insns.def"
|
3796
3810
|
false;
|
3797
|
-
#line
|
3811
|
+
#line 3812 "insns_info.inc"
|
3798
3812
|
}
|
3799
3813
|
|
3800
3814
|
/* attr const char* name @ concatarray()(ary1, ary2)(ary) */
|
@@ -3858,9 +3872,9 @@ bool
|
|
3858
3872
|
attr_leaf_splatarray(MAYBE_UNUSED(VALUE flag))
|
3859
3873
|
{
|
3860
3874
|
return
|
3861
|
-
#line
|
3875
|
+
#line 525 "insns.def"
|
3862
3876
|
false;
|
3863
|
-
#line
|
3877
|
+
#line 3878 "insns_info.inc"
|
3864
3878
|
}
|
3865
3879
|
|
3866
3880
|
/* attr const char* name @ splatarray(flag)(ary)(obj) */
|
@@ -3905,6 +3919,72 @@ attr_width_splatarray(MAYBE_UNUSED(VALUE flag))
|
|
3905
3919
|
return 2;
|
3906
3920
|
}
|
3907
3921
|
|
3922
|
+
/* attr enum ruby_vminsn_type bin @ splatkw()(hash, block)(obj, block) */
|
3923
|
+
enum ruby_vminsn_type
|
3924
|
+
attr_bin_splatkw(void)
|
3925
|
+
{
|
3926
|
+
return BIN(splatkw);
|
3927
|
+
}
|
3928
|
+
|
3929
|
+
/* attr bool handles_sp @ splatkw()(hash, block)(obj, block) */
|
3930
|
+
bool
|
3931
|
+
attr_handles_sp_splatkw(void)
|
3932
|
+
{
|
3933
|
+
return false;
|
3934
|
+
}
|
3935
|
+
|
3936
|
+
/* attr bool leaf @ splatkw()(hash, block)(obj, block) */
|
3937
|
+
bool
|
3938
|
+
attr_leaf_splatkw(void)
|
3939
|
+
{
|
3940
|
+
return
|
3941
|
+
#line 536 "insns.def"
|
3942
|
+
false;
|
3943
|
+
#line 3944 "insns_info.inc"
|
3944
|
+
}
|
3945
|
+
|
3946
|
+
/* attr const char* name @ splatkw()(hash, block)(obj, block) */
|
3947
|
+
const char*
|
3948
|
+
attr_name_splatkw(void)
|
3949
|
+
{
|
3950
|
+
return insn_name(BIN(splatkw));
|
3951
|
+
}
|
3952
|
+
|
3953
|
+
/* attr rb_num_t open @ splatkw()(hash, block)(obj, block) */
|
3954
|
+
rb_num_t
|
3955
|
+
attr_open_splatkw(void)
|
3956
|
+
{
|
3957
|
+
return 0;
|
3958
|
+
}
|
3959
|
+
|
3960
|
+
/* attr rb_num_t popn @ splatkw()(hash, block)(obj, block) */
|
3961
|
+
rb_num_t
|
3962
|
+
attr_popn_splatkw(void)
|
3963
|
+
{
|
3964
|
+
return 2;
|
3965
|
+
}
|
3966
|
+
|
3967
|
+
/* attr rb_num_t retn @ splatkw()(hash, block)(obj, block) */
|
3968
|
+
rb_num_t
|
3969
|
+
attr_retn_splatkw(void)
|
3970
|
+
{
|
3971
|
+
return 2;
|
3972
|
+
}
|
3973
|
+
|
3974
|
+
/* attr rb_snum_t sp_inc @ splatkw()(hash, block)(obj, block) */
|
3975
|
+
rb_snum_t
|
3976
|
+
attr_sp_inc_splatkw(void)
|
3977
|
+
{
|
3978
|
+
return 0;
|
3979
|
+
}
|
3980
|
+
|
3981
|
+
/* attr rb_num_t width @ splatkw()(hash, block)(obj, block) */
|
3982
|
+
rb_num_t
|
3983
|
+
attr_width_splatkw(void)
|
3984
|
+
{
|
3985
|
+
return 1;
|
3986
|
+
}
|
3987
|
+
|
3908
3988
|
/* attr enum ruby_vminsn_type bin @ newhash(num)(...)(val) */
|
3909
3989
|
enum ruby_vminsn_type
|
3910
3990
|
attr_bin_newhash(MAYBE_UNUSED(rb_num_t num))
|
@@ -3924,9 +4004,9 @@ bool
|
|
3924
4004
|
attr_leaf_newhash(MAYBE_UNUSED(rb_num_t num))
|
3925
4005
|
{
|
3926
4006
|
return
|
3927
|
-
#line
|
4007
|
+
#line 547 "insns.def"
|
3928
4008
|
false;
|
3929
|
-
#line
|
4009
|
+
#line 4010 "insns_info.inc"
|
3930
4010
|
}
|
3931
4011
|
|
3932
4012
|
/* attr const char* name @ newhash(num)(...)(val) */
|
@@ -3962,9 +4042,9 @@ rb_snum_t
|
|
3962
4042
|
attr_sp_inc_newhash(MAYBE_UNUSED(rb_num_t num))
|
3963
4043
|
{
|
3964
4044
|
return
|
3965
|
-
#line
|
4045
|
+
#line 548 "insns.def"
|
3966
4046
|
1 - (rb_snum_t)num;
|
3967
|
-
#line
|
4047
|
+
#line 4048 "insns_info.inc"
|
3968
4048
|
}
|
3969
4049
|
|
3970
4050
|
/* attr rb_num_t width @ newhash(num)(...)(val) */
|
@@ -3993,9 +4073,9 @@ bool
|
|
3993
4073
|
attr_leaf_newrange(MAYBE_UNUSED(rb_num_t flag))
|
3994
4074
|
{
|
3995
4075
|
return
|
3996
|
-
#line
|
4076
|
+
#line 568 "insns.def"
|
3997
4077
|
false;
|
3998
|
-
#line
|
4078
|
+
#line 4079 "insns_info.inc"
|
3999
4079
|
}
|
4000
4080
|
|
4001
4081
|
/* attr const char* name @ newrange(flag)(low, high)(val) */
|
@@ -4220,9 +4300,9 @@ rb_snum_t
|
|
4220
4300
|
attr_sp_inc_dupn(MAYBE_UNUSED(rb_num_t n))
|
4221
4301
|
{
|
4222
4302
|
return
|
4223
|
-
#line
|
4303
|
+
#line 604 "insns.def"
|
4224
4304
|
n;
|
4225
|
-
#line
|
4305
|
+
#line 4306 "insns_info.inc"
|
4226
4306
|
}
|
4227
4307
|
|
4228
4308
|
/* attr rb_num_t width @ dupn(n)(...)(...) */
|
@@ -4349,9 +4429,9 @@ rb_snum_t
|
|
4349
4429
|
attr_sp_inc_opt_reverse(MAYBE_UNUSED(rb_num_t n))
|
4350
4430
|
{
|
4351
4431
|
return
|
4352
|
-
#line
|
4432
|
+
#line 628 "insns.def"
|
4353
4433
|
0;
|
4354
|
-
#line
|
4434
|
+
#line 4435 "insns_info.inc"
|
4355
4435
|
}
|
4356
4436
|
|
4357
4437
|
/* attr rb_num_t width @ opt_reverse(n)(...)(...) */
|
@@ -4415,9 +4495,9 @@ rb_snum_t
|
|
4415
4495
|
attr_sp_inc_topn(MAYBE_UNUSED(rb_num_t n))
|
4416
4496
|
{
|
4417
4497
|
return
|
4418
|
-
#line
|
4498
|
+
#line 658 "insns.def"
|
4419
4499
|
1;
|
4420
|
-
#line
|
4500
|
+
#line 4501 "insns_info.inc"
|
4421
4501
|
}
|
4422
4502
|
|
4423
4503
|
/* attr rb_num_t width @ topn(n)(...)(val) */
|
@@ -4481,9 +4561,9 @@ rb_snum_t
|
|
4481
4561
|
attr_sp_inc_setn(MAYBE_UNUSED(rb_num_t n))
|
4482
4562
|
{
|
4483
4563
|
return
|
4484
|
-
#line
|
4564
|
+
#line 669 "insns.def"
|
4485
4565
|
0;
|
4486
|
-
#line
|
4566
|
+
#line 4567 "insns_info.inc"
|
4487
4567
|
}
|
4488
4568
|
|
4489
4569
|
/* attr rb_num_t width @ setn(n)(..., val)(val) */
|
@@ -4547,9 +4627,9 @@ rb_snum_t
|
|
4547
4627
|
attr_sp_inc_adjuststack(MAYBE_UNUSED(rb_num_t n))
|
4548
4628
|
{
|
4549
4629
|
return
|
4550
|
-
#line
|
4630
|
+
#line 680 "insns.def"
|
4551
4631
|
-(rb_snum_t)n;
|
4552
|
-
#line
|
4632
|
+
#line 4633 "insns_info.inc"
|
4553
4633
|
}
|
4554
4634
|
|
4555
4635
|
/* attr rb_num_t width @ adjuststack(n)(...)(...) */
|
@@ -4590,9 +4670,9 @@ attr_leaf_defined(
|
|
4590
4670
|
)
|
4591
4671
|
{
|
4592
4672
|
return
|
4593
|
-
#line
|
4673
|
+
#line 695 "insns.def"
|
4594
4674
|
leafness_of_defined(op_type);
|
4595
|
-
#line
|
4675
|
+
#line 4676 "insns_info.inc"
|
4596
4676
|
}
|
4597
4677
|
|
4598
4678
|
/* attr const char* name @ defined(op_type, obj, pushval)(v)(val) */
|
@@ -4692,9 +4772,9 @@ attr_leaf_definedivar(
|
|
4692
4772
|
)
|
4693
4773
|
{
|
4694
4774
|
return
|
4695
|
-
#line
|
4775
|
+
#line 709 "insns.def"
|
4696
4776
|
false;
|
4697
|
-
#line
|
4777
|
+
#line 4778 "insns_info.inc"
|
4698
4778
|
}
|
4699
4779
|
|
4700
4780
|
/* attr const char* name @ definedivar(id, ic, pushval)()(val) */
|
@@ -4782,9 +4862,9 @@ bool
|
|
4782
4862
|
attr_leaf_checkmatch(MAYBE_UNUSED(rb_num_t flag))
|
4783
4863
|
{
|
4784
4864
|
return
|
4785
|
-
#line
|
4865
|
+
#line 729 "insns.def"
|
4786
4866
|
leafness_of_checkmatch(flag);
|
4787
|
-
#line
|
4867
|
+
#line 4868 "insns_info.inc"
|
4788
4868
|
}
|
4789
4869
|
|
4790
4870
|
/* attr const char* name @ checkmatch(flag)(target, pattern)(result) */
|
@@ -5279,9 +5359,9 @@ attr_comptime_sp_inc_send(
|
|
5279
5359
|
)
|
5280
5360
|
{
|
5281
5361
|
return
|
5282
|
-
#line
|
5362
|
+
#line 811 "insns.def"
|
5283
5363
|
sp_inc_of_sendish(ci);
|
5284
|
-
#line
|
5364
|
+
#line 5365 "insns_info.inc"
|
5285
5365
|
}
|
5286
5366
|
|
5287
5367
|
/* attr bool handles_sp @ send(cd, blockiseq)(...)(val) */
|
@@ -5352,9 +5432,9 @@ attr_sp_inc_send(
|
|
5352
5432
|
)
|
5353
5433
|
{
|
5354
5434
|
return
|
5355
|
-
#line
|
5435
|
+
#line 810 "insns.def"
|
5356
5436
|
sp_inc_of_sendish(cd->ci);
|
5357
|
-
#line
|
5437
|
+
#line 5438 "insns_info.inc"
|
5358
5438
|
}
|
5359
5439
|
|
5360
5440
|
/* attr rb_num_t width @ send(cd, blockiseq)(...)(val) */
|
@@ -5379,9 +5459,9 @@ rb_snum_t
|
|
5379
5459
|
attr_comptime_sp_inc_opt_send_without_block(MAYBE_UNUSED(CALL_INFO ci))
|
5380
5460
|
{
|
5381
5461
|
return
|
5382
|
-
#line
|
5462
|
+
#line 831 "insns.def"
|
5383
5463
|
sp_inc_of_sendish(ci);
|
5384
|
-
#line
|
5464
|
+
#line 5465 "insns_info.inc"
|
5385
5465
|
}
|
5386
5466
|
|
5387
5467
|
/* attr bool handles_sp @ opt_send_without_block(cd)(...)(val) */
|
@@ -5389,9 +5469,9 @@ bool
|
|
5389
5469
|
attr_handles_sp_opt_send_without_block(MAYBE_UNUSED(CALL_DATA cd))
|
5390
5470
|
{
|
5391
5471
|
return
|
5392
|
-
#line
|
5472
|
+
#line 829 "insns.def"
|
5393
5473
|
true;
|
5394
|
-
#line
|
5474
|
+
#line 5475 "insns_info.inc"
|
5395
5475
|
}
|
5396
5476
|
|
5397
5477
|
/* attr bool leaf @ opt_send_without_block(cd)(...)(val) */
|
@@ -5434,9 +5514,9 @@ rb_snum_t
|
|
5434
5514
|
attr_sp_inc_opt_send_without_block(MAYBE_UNUSED(CALL_DATA cd))
|
5435
5515
|
{
|
5436
5516
|
return
|
5437
|
-
#line
|
5517
|
+
#line 830 "insns.def"
|
5438
5518
|
sp_inc_of_sendish(cd->ci);
|
5439
|
-
#line
|
5519
|
+
#line 5520 "insns_info.inc"
|
5440
5520
|
}
|
5441
5521
|
|
5442
5522
|
/* attr rb_num_t width @ opt_send_without_block(cd)(...)(val) */
|
@@ -5465,9 +5545,9 @@ bool
|
|
5465
5545
|
attr_leaf_objtostring(MAYBE_UNUSED(CALL_DATA cd))
|
5466
5546
|
{
|
5467
5547
|
return
|
5468
|
-
#line
|
5548
|
+
#line 849 "insns.def"
|
5469
5549
|
false;
|
5470
|
-
#line
|
5550
|
+
#line 5551 "insns_info.inc"
|
5471
5551
|
}
|
5472
5552
|
|
5473
5553
|
/* attr const char* name @ objtostring(cd)(recv)(val) */
|
@@ -5773,9 +5853,9 @@ attr_comptime_sp_inc_opt_newarray_send(
|
|
5773
5853
|
)
|
5774
5854
|
{
|
5775
5855
|
return
|
5776
|
-
#line
|
5856
|
+
#line 911 "insns.def"
|
5777
5857
|
1 - (rb_snum_t)num;
|
5778
|
-
#line
|
5858
|
+
#line 5859 "insns_info.inc"
|
5779
5859
|
}
|
5780
5860
|
|
5781
5861
|
/* attr bool handles_sp @ opt_newarray_send(num, method)(...)(val) */
|
@@ -5796,9 +5876,9 @@ attr_leaf_opt_newarray_send(
|
|
5796
5876
|
)
|
5797
5877
|
{
|
5798
5878
|
return
|
5799
|
-
#line
|
5879
|
+
#line 909 "insns.def"
|
5800
5880
|
false;
|
5801
|
-
#line
|
5881
|
+
#line 5882 "insns_info.inc"
|
5802
5882
|
}
|
5803
5883
|
|
5804
5884
|
/* attr const char* name @ opt_newarray_send(num, method)(...)(val) */
|
@@ -5849,9 +5929,9 @@ attr_sp_inc_opt_newarray_send(
|
|
5849
5929
|
)
|
5850
5930
|
{
|
5851
5931
|
return
|
5852
|
-
#line
|
5932
|
+
#line 910 "insns.def"
|
5853
5933
|
1 - (rb_snum_t)num;
|
5854
|
-
#line
|
5934
|
+
#line 5935 "insns_info.inc"
|
5855
5935
|
}
|
5856
5936
|
|
5857
5937
|
/* attr rb_num_t width @ opt_newarray_send(num, method)(...)(val) */
|
@@ -5882,9 +5962,9 @@ attr_comptime_sp_inc_invokesuper(
|
|
5882
5962
|
)
|
5883
5963
|
{
|
5884
5964
|
return
|
5885
|
-
#line
|
5965
|
+
#line 935 "insns.def"
|
5886
5966
|
sp_inc_of_sendish(ci);
|
5887
|
-
#line
|
5967
|
+
#line 5968 "insns_info.inc"
|
5888
5968
|
}
|
5889
5969
|
|
5890
5970
|
/* attr bool handles_sp @ invokesuper(cd, blockiseq)(...)(val) */
|
@@ -5955,9 +6035,9 @@ attr_sp_inc_invokesuper(
|
|
5955
6035
|
)
|
5956
6036
|
{
|
5957
6037
|
return
|
5958
|
-
#line
|
6038
|
+
#line 934 "insns.def"
|
5959
6039
|
sp_inc_of_sendish(cd->ci);
|
5960
|
-
#line
|
6040
|
+
#line 6041 "insns_info.inc"
|
5961
6041
|
}
|
5962
6042
|
|
5963
6043
|
/* attr rb_num_t width @ invokesuper(cd, blockiseq)(...)(val) */
|
@@ -5982,9 +6062,9 @@ rb_snum_t
|
|
5982
6062
|
attr_comptime_sp_inc_invokeblock(MAYBE_UNUSED(CALL_INFO ci))
|
5983
6063
|
{
|
5984
6064
|
return
|
5985
|
-
#line
|
6065
|
+
#line 955 "insns.def"
|
5986
6066
|
sp_inc_of_invokeblock(ci);
|
5987
|
-
#line
|
6067
|
+
#line 6068 "insns_info.inc"
|
5988
6068
|
}
|
5989
6069
|
|
5990
6070
|
/* attr bool handles_sp @ invokeblock(cd)(...)(val) */
|
@@ -5992,9 +6072,9 @@ bool
|
|
5992
6072
|
attr_handles_sp_invokeblock(MAYBE_UNUSED(CALL_DATA cd))
|
5993
6073
|
{
|
5994
6074
|
return
|
5995
|
-
#line
|
6075
|
+
#line 953 "insns.def"
|
5996
6076
|
true;
|
5997
|
-
#line
|
6077
|
+
#line 6078 "insns_info.inc"
|
5998
6078
|
}
|
5999
6079
|
|
6000
6080
|
/* attr bool leaf @ invokeblock(cd)(...)(val) */
|
@@ -6037,9 +6117,9 @@ rb_snum_t
|
|
6037
6117
|
attr_sp_inc_invokeblock(MAYBE_UNUSED(CALL_DATA cd))
|
6038
6118
|
{
|
6039
6119
|
return
|
6040
|
-
#line
|
6120
|
+
#line 954 "insns.def"
|
6041
6121
|
sp_inc_of_invokeblock(cd->ci);
|
6042
|
-
#line
|
6122
|
+
#line 6123 "insns_info.inc"
|
6043
6123
|
}
|
6044
6124
|
|
6045
6125
|
/* attr rb_num_t width @ invokeblock(cd)(...)(val) */
|
@@ -6061,9 +6141,9 @@ bool
|
|
6061
6141
|
attr_handles_sp_leave(void)
|
6062
6142
|
{
|
6063
6143
|
return
|
6064
|
-
#line
|
6144
|
+
#line 977 "insns.def"
|
6065
6145
|
true;
|
6066
|
-
#line
|
6146
|
+
#line 6147 "insns_info.inc"
|
6067
6147
|
}
|
6068
6148
|
|
6069
6149
|
/* attr bool leaf @ leave()(val)(val) */
|
@@ -6071,9 +6151,9 @@ bool
|
|
6071
6151
|
attr_leaf_leave(void)
|
6072
6152
|
{
|
6073
6153
|
return
|
6074
|
-
#line
|
6154
|
+
#line 976 "insns.def"
|
6075
6155
|
false;
|
6076
|
-
#line
|
6156
|
+
#line 6157 "insns_info.inc"
|
6077
6157
|
}
|
6078
6158
|
|
6079
6159
|
/* attr const char* name @ leave()(val)(val) */
|
@@ -6137,9 +6217,9 @@ bool
|
|
6137
6217
|
attr_leaf_throw(MAYBE_UNUSED(rb_num_t throw_state))
|
6138
6218
|
{
|
6139
6219
|
return
|
6140
|
-
#line
|
6220
|
+
#line 1010 "insns.def"
|
6141
6221
|
false;
|
6142
|
-
#line
|
6222
|
+
#line 6223 "insns_info.inc"
|
6143
6223
|
}
|
6144
6224
|
|
6145
6225
|
/* attr const char* name @ throw(throw_state)(throwobj)(val) */
|
@@ -6203,9 +6283,9 @@ bool
|
|
6203
6283
|
attr_leaf_jump(MAYBE_UNUSED(OFFSET dst))
|
6204
6284
|
{
|
6205
6285
|
return
|
6206
|
-
#line
|
6286
|
+
#line 1028 "insns.def"
|
6207
6287
|
leafness_of_check_ints;
|
6208
|
-
#line
|
6288
|
+
#line 6289 "insns_info.inc"
|
6209
6289
|
}
|
6210
6290
|
|
6211
6291
|
/* attr const char* name @ jump(dst)()() */
|
@@ -6269,9 +6349,9 @@ bool
|
|
6269
6349
|
attr_leaf_branchif(MAYBE_UNUSED(OFFSET dst))
|
6270
6350
|
{
|
6271
6351
|
return
|
6272
|
-
#line
|
6352
|
+
#line 1041 "insns.def"
|
6273
6353
|
leafness_of_check_ints;
|
6274
|
-
#line
|
6354
|
+
#line 6355 "insns_info.inc"
|
6275
6355
|
}
|
6276
6356
|
|
6277
6357
|
/* attr const char* name @ branchif(dst)(val)() */
|
@@ -6335,9 +6415,9 @@ bool
|
|
6335
6415
|
attr_leaf_branchunless(MAYBE_UNUSED(OFFSET dst))
|
6336
6416
|
{
|
6337
6417
|
return
|
6338
|
-
#line
|
6418
|
+
#line 1056 "insns.def"
|
6339
6419
|
leafness_of_check_ints;
|
6340
|
-
#line
|
6420
|
+
#line 6421 "insns_info.inc"
|
6341
6421
|
}
|
6342
6422
|
|
6343
6423
|
/* attr const char* name @ branchunless(dst)(val)() */
|
@@ -6401,9 +6481,9 @@ bool
|
|
6401
6481
|
attr_leaf_branchnil(MAYBE_UNUSED(OFFSET dst))
|
6402
6482
|
{
|
6403
6483
|
return
|
6404
|
-
#line
|
6484
|
+
#line 1071 "insns.def"
|
6405
6485
|
leafness_of_check_ints;
|
6406
|
-
#line
|
6486
|
+
#line 6487 "insns_info.inc"
|
6407
6487
|
}
|
6408
6488
|
|
6409
6489
|
/* attr const char* name @ branchnil(dst)(val)() */
|
@@ -6616,9 +6696,9 @@ attr_sp_inc_opt_case_dispatch(
|
|
6616
6696
|
)
|
6617
6697
|
{
|
6618
6698
|
return
|
6619
|
-
#line
|
6699
|
+
#line 1099 "insns.def"
|
6620
6700
|
-1;
|
6621
|
-
#line
|
6701
|
+
#line 6702 "insns_info.inc"
|
6622
6702
|
}
|
6623
6703
|
|
6624
6704
|
/* attr rb_num_t width @ opt_case_dispatch(hash, else_offset)(..., key)() */
|
@@ -6839,9 +6919,9 @@ bool
|
|
6839
6919
|
attr_leaf_opt_div(MAYBE_UNUSED(CALL_DATA cd))
|
6840
6920
|
{
|
6841
6921
|
return
|
6842
|
-
#line
|
6922
|
+
#line 1160 "insns.def"
|
6843
6923
|
false;
|
6844
|
-
#line
|
6924
|
+
#line 6925 "insns_info.inc"
|
6845
6925
|
}
|
6846
6926
|
|
6847
6927
|
/* attr const char* name @ opt_div(cd)(recv, obj)(val) */
|
@@ -6905,9 +6985,9 @@ bool
|
|
6905
6985
|
attr_leaf_opt_mod(MAYBE_UNUSED(CALL_DATA cd))
|
6906
6986
|
{
|
6907
6987
|
return
|
6908
|
-
#line
|
6988
|
+
#line 1176 "insns.def"
|
6909
6989
|
false;
|
6910
|
-
#line
|
6990
|
+
#line 6991 "insns_info.inc"
|
6911
6991
|
}
|
6912
6992
|
|
6913
6993
|
/* attr const char* name @ opt_mod(cd)(recv, obj)(val) */
|
@@ -7376,9 +7456,9 @@ bool
|
|
7376
7456
|
attr_leaf_opt_ltlt(MAYBE_UNUSED(CALL_DATA cd))
|
7377
7457
|
{
|
7378
7458
|
return
|
7379
|
-
#line
|
7459
|
+
#line 1278 "insns.def"
|
7380
7460
|
false;
|
7381
|
-
#line
|
7461
|
+
#line 7462 "insns_info.inc"
|
7382
7462
|
}
|
7383
7463
|
|
7384
7464
|
/* attr const char* name @ opt_ltlt(cd)(recv, obj)(val) */
|
@@ -7568,9 +7648,9 @@ bool
|
|
7568
7648
|
attr_leaf_opt_aref(MAYBE_UNUSED(CALL_DATA cd))
|
7569
7649
|
{
|
7570
7650
|
return
|
7571
|
-
#line
|
7651
|
+
#line 1325 "insns.def"
|
7572
7652
|
false;
|
7573
|
-
#line
|
7653
|
+
#line 7654 "insns_info.inc"
|
7574
7654
|
}
|
7575
7655
|
|
7576
7656
|
/* attr const char* name @ opt_aref(cd)(recv, obj)(val) */
|
@@ -7634,9 +7714,9 @@ bool
|
|
7634
7714
|
attr_leaf_opt_aset(MAYBE_UNUSED(CALL_DATA cd))
|
7635
7715
|
{
|
7636
7716
|
return
|
7637
|
-
#line
|
7717
|
+
#line 1342 "insns.def"
|
7638
7718
|
false;
|
7639
|
-
#line
|
7719
|
+
#line 7720 "insns_info.inc"
|
7640
7720
|
}
|
7641
7721
|
|
7642
7722
|
/* attr const char* name @ opt_aset(cd)(recv, obj, set)(val) */
|
@@ -7709,9 +7789,9 @@ attr_leaf_opt_aset_with(
|
|
7709
7789
|
)
|
7710
7790
|
{
|
7711
7791
|
return
|
7712
|
-
#line
|
7792
|
+
#line 1358 "insns.def"
|
7713
7793
|
false;
|
7714
|
-
#line
|
7794
|
+
#line 7795 "insns_info.inc"
|
7715
7795
|
}
|
7716
7796
|
|
7717
7797
|
/* attr const char* name @ opt_aset_with(key, cd)(recv, val)(val) */
|
@@ -7802,9 +7882,9 @@ attr_leaf_opt_aref_with(
|
|
7802
7882
|
)
|
7803
7883
|
{
|
7804
7884
|
return
|
7805
|
-
#line
|
7885
|
+
#line 1379 "insns.def"
|
7806
7886
|
false;
|
7807
|
-
#line
|
7887
|
+
#line 7888 "insns_info.inc"
|
7808
7888
|
}
|
7809
7889
|
|
7810
7890
|
/* attr const char* name @ opt_aref_with(key, cd)(recv)(val) */
|
@@ -8201,9 +8281,9 @@ bool
|
|
8201
8281
|
attr_leaf_opt_regexpmatch2(MAYBE_UNUSED(CALL_DATA cd))
|
8202
8282
|
{
|
8203
8283
|
return
|
8204
|
-
#line
|
8284
|
+
#line 1465 "insns.def"
|
8205
8285
|
false;
|
8206
|
-
#line
|
8286
|
+
#line 8287 "insns_info.inc"
|
8207
8287
|
}
|
8208
8288
|
|
8209
8289
|
/* attr const char* name @ opt_regexpmatch2(cd)(obj2, obj1)(val) */
|
@@ -8267,9 +8347,9 @@ bool
|
|
8267
8347
|
attr_leaf_invokebuiltin(MAYBE_UNUSED(RB_BUILTIN bf))
|
8268
8348
|
{
|
8269
8349
|
return
|
8270
|
-
#line
|
8350
|
+
#line 1480 "insns.def"
|
8271
8351
|
false;
|
8272
|
-
#line
|
8352
|
+
#line 8353 "insns_info.inc"
|
8273
8353
|
}
|
8274
8354
|
|
8275
8355
|
/* attr const char* name @ invokebuiltin(bf)(...)(val) */
|
@@ -8305,9 +8385,9 @@ rb_snum_t
|
|
8305
8385
|
attr_sp_inc_invokebuiltin(MAYBE_UNUSED(RB_BUILTIN bf))
|
8306
8386
|
{
|
8307
8387
|
return
|
8308
|
-
#line
|
8388
|
+
#line 1481 "insns.def"
|
8309
8389
|
1 - bf->argc;
|
8310
|
-
#line
|
8390
|
+
#line 8391 "insns_info.inc"
|
8311
8391
|
}
|
8312
8392
|
|
8313
8393
|
/* attr rb_num_t width @ invokebuiltin(bf)(...)(val) */
|
@@ -8345,9 +8425,9 @@ attr_leaf_opt_invokebuiltin_delegate(
|
|
8345
8425
|
)
|
8346
8426
|
{
|
8347
8427
|
return
|
8348
|
-
#line
|
8428
|
+
#line 1492 "insns.def"
|
8349
8429
|
false;
|
8350
|
-
#line
|
8430
|
+
#line 8431 "insns_info.inc"
|
8351
8431
|
}
|
8352
8432
|
|
8353
8433
|
/* attr const char* name @ opt_invokebuiltin_delegate(bf, index)()(val) */
|
@@ -8438,9 +8518,9 @@ attr_leaf_opt_invokebuiltin_delegate_leave(
|
|
8438
8518
|
)
|
8439
8519
|
{
|
8440
8520
|
return
|
8441
|
-
#line
|
8521
|
+
#line 1503 "insns.def"
|
8442
8522
|
false;
|
8443
|
-
#line
|
8523
|
+
#line 8524 "insns_info.inc"
|
8444
8524
|
}
|
8445
8525
|
|
8446
8526
|
/* attr const char* name @ opt_invokebuiltin_delegate_leave(bf, index)()(val) */
|
@@ -8892,15 +8972,15 @@ comptime_insn_stack_increase_dispatch(enum ruby_vminsn_type insn, const VALUE *o
|
|
8892
8972
|
1, -1, 1, -1, 1, -1, -2, 1,
|
8893
8973
|
-1, 1, 1, 1, 1, 1, -127, -1,
|
8894
8974
|
-127, 0, -127, -127, 1, 1, -127, -1,
|
8895
|
-
0, -127, -1, -1, 1, -127, 0,
|
8896
|
-
-127, -127, -127, 0, 1, -1, 1,
|
8897
|
-
|
8898
|
-
1, -127, -127, -127, 0, 0, 0,
|
8899
|
-
-1, -1, 1, -127, -1, -1, -1,
|
8975
|
+
0, 0, -127, -1, -1, 1, -127, 0,
|
8976
|
+
-127, -127, -127, -127, 0, 1, -1, 1,
|
8977
|
+
0, -1, 0, -1, -127, -127, 0, 1,
|
8978
|
+
0, 1, -127, -127, -127, 0, 0, 0,
|
8979
|
+
-1, -1, -1, 1, -127, -1, -1, -1,
|
8900
8980
|
-1, -1, -1, -1, -1, -1, -1, -1,
|
8901
|
-
-1, -1, -1, -2, -1, 0, 0,
|
8902
|
-
0, 0, 0, -1, -127, 1, 1,
|
8903
|
-
1, -1, -1, 1, 1, 0, 0,
|
8981
|
+
-1, -1, -1, -1, -2, -1, 0, 0,
|
8982
|
+
0, 0, 0, 0, -1, -127, 1, 1,
|
8983
|
+
1, 1, -1, -1, 1, 1, 0, 0,
|
8904
8984
|
0, 0, 0, 0, 0, 0, 0, 0,
|
8905
8985
|
0, 0, 0, 0, 0, 0, 0, 0,
|
8906
8986
|
0, 0, 0, 0, 0, 0, 0, 0,
|
@@ -8913,7 +8993,7 @@ comptime_insn_stack_increase_dispatch(enum ruby_vminsn_type insn, const VALUE *o
|
|
8913
8993
|
0, 0, 0, 0, 0, 0, 0, 0,
|
8914
8994
|
0, 0, 0, 0, 0, 0, 0, 0,
|
8915
8995
|
0, 0, 0, 0, 0, 0, 0, 0,
|
8916
|
-
0, 0,
|
8996
|
+
0, 0, 0, 0,
|
8917
8997
|
};
|
8918
8998
|
signed char c = t[insn];
|
8919
8999
|
|
@@ -8992,6 +9072,7 @@ insn_may_depend_on_sp_or_pc(int insn, const VALUE *opes)
|
|
8992
9072
|
case BIN(expandarray):
|
8993
9073
|
case BIN(concatarray):
|
8994
9074
|
case BIN(splatarray):
|
9075
|
+
case BIN(splatkw):
|
8995
9076
|
case BIN(newhash):
|
8996
9077
|
case BIN(newrange):
|
8997
9078
|
case BIN(defined):
|
@@ -9057,6 +9138,7 @@ insn_may_depend_on_sp_or_pc(int insn, const VALUE *opes)
|
|
9057
9138
|
case BIN(trace_expandarray):
|
9058
9139
|
case BIN(trace_concatarray):
|
9059
9140
|
case BIN(trace_splatarray):
|
9141
|
+
case BIN(trace_splatkw):
|
9060
9142
|
case BIN(trace_newhash):
|
9061
9143
|
case BIN(trace_newrange):
|
9062
9144
|
case BIN(trace_pop):
|