datadog-ruby_core_source 3.3.6 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.datadog.md +12 -1
- data/datadog-ruby_core_source.gemspec +7 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/id.h +5 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/basic_operators.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/bits.h +82 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/encoding.h +2 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/error.h +26 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/fixnum.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/gc.h +14 -6
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/imemo.h +6 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/io.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/parse.h +2 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/proc.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ractor.h +4 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/sanitizers.h +31 -39
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/string.h +22 -10
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/thread.h +23 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/vm.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/method.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/ast.h +427 -3
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/defines.h +8 -7
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/diagnostic.h +1 -0
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/extension.h +1 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prism.h +47 -11
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/version.h +2 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism_compile.h +5 -5
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/ractor_core.h +6 -6
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/rubyparser.h +3 -2
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/thread_pthread.h +0 -1
- data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/vm_core.h +40 -12
- data/lib/datadog/ruby_core_source/version.rb +1 -1
- data/lib/datadog/ruby_core_source.rb +14 -1
- metadata +110 -476
- data/.github/workflows/publish.yml +0 -18
- data/.gitignore +0 -7
- data/.idea/vcs.xml +0 -28
- data/CHANGELOG.md +0 -284
- data/CONTRIBUTING.md +0 -2
- data/Gemfile +0 -4
- data/Rakefile +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/addr2line.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/constant.h +0 -50
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/debug_counter.h +0 -109
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/dln.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/encindex.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/eval_intern.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/gc.h +0 -116
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/id_table.h +0 -31
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns.inc +0 -217
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/insns_info.inc +0 -1570
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/known_errors.inc +0 -746
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/node_name.inc +0 -198
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/opt_sc.inc +0 -1601
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optinsn.inc +0 -103
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/optunifs.inc +0 -61
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/parse.h +0 -206
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/probes_helper.h +0 -43
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regint.h +0 -938
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/regparse.h +0 -370
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/revision.h +0 -1
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/symbol.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/thread_win32.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/timev.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/transcode_data.h +0 -139
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/version.h +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm.inc +0 -3667
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_call_iseq_optimized.inc +0 -213
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_exec.h +0 -192
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vm_insnhelper.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-2.5.0-p0/vmtc.inc +0 -214
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/addr2line.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/constant.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/debug_counter.h +0 -109
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/dln.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/encindex.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/eval_intern.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/gc.h +0 -116
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/id_table.h +0 -31
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns.inc +0 -217
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/insns_info.inc +0 -1570
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/known_errors.inc +0 -746
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/node_name.inc +0 -198
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/opt_sc.inc +0 -1601
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optinsn.inc +0 -103
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/optunifs.inc +0 -61
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/parse.h +0 -206
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/probes_helper.h +0 -43
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regint.h +0 -938
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/regparse.h +0 -370
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/revision.h +0 -1
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/symbol.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/thread_win32.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/timev.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/transcode_data.h +0 -139
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/version.h +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm.inc +0 -3667
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_call_iseq_optimized.inc +0 -213
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_exec.h +0 -192
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vm_insnhelper.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-2.5.1-p57/vmtc.inc +0 -214
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/addr2line.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/constant.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/debug_counter.h +0 -109
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/dln.h +0 -51
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/encindex.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/eval_intern.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/gc.h +0 -116
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/id_table.h +0 -31
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns.inc +0 -217
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/insns_info.inc +0 -1570
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/known_errors.inc +0 -746
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/node_name.inc +0 -198
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/opt_sc.inc +0 -1601
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optinsn.inc +0 -103
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/optunifs.inc +0 -61
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/parse.h +0 -200
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/probes_helper.h +0 -43
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regint.h +0 -938
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/regparse.h +0 -370
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/revision.h +0 -1
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/symbol.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/thread_win32.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/timev.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/transcode_data.h +0 -139
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/version.h +0 -73
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm.inc +0 -3667
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_call_iseq_optimized.inc +0 -213
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_exec.h +0 -192
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vm_insnhelper.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-2.5.4-p155/vmtc.inc +0 -214
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/builtin.h +0 -117
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/darray.h +0 -246
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/dln.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/eval_intern.h +0 -343
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/hrtime.h +0 -227
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns.inc +0 -251
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/insns_info.inc +0 -9215
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/known_errors.inc +0 -791
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/node_name.inc +0 -212
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parse.h +0 -243
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regint.h +0 -1004
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/rjit_c.h +0 -164
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/symbol.h +0 -118
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm.inc +0 -5436
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_callinfo.h +0 -619
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_insnhelper.h +0 -261
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/vmtc.inc +0 -245
- data/lib/datadog/ruby_core_source/ruby-3.3.0-p0/yjit.h +0 -72
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/builtin.h +0 -117
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/darray.h +0 -246
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/dln.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/eval_intern.h +0 -343
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/hrtime.h +0 -227
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns.inc +0 -251
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/insns_info.inc +0 -9215
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/known_errors.inc +0 -791
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/node_name.inc +0 -212
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parse.h +0 -243
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regint.h +0 -1006
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/rjit_c.h +0 -164
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/symbol.h +0 -118
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm.inc +0 -5436
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_callinfo.h +0 -614
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_insnhelper.h +0 -261
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/vmtc.inc +0 -245
- data/lib/datadog/ruby_core_source/ruby-3.3.5-p100/yjit.h +0 -72
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/builtin.h +0 -119
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/darray.h +0 -191
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/dln.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/eval_intern.h +0 -324
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/hrtime.h +0 -237
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/id.h +0 -343
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns.inc +0 -259
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/insns_info.inc +0 -9530
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/array.h +0 -151
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/basic_operators.h +0 -63
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/bits.h +0 -568
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/class.h +0 -283
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/error.h +0 -216
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/fixnum.h +0 -184
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/gc.h +0 -334
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/hash.h +0 -191
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/imemo.h +0 -260
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/io.h +0 -140
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/parse.h +0 -117
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/sanitizers.h +0 -297
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/string.h +0 -182
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/thread.h +0 -79
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/internal/vm.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/known_errors.inc +0 -1419
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/node_name.inc +0 -224
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parse.h +0 -243
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/ast.h +0 -6245
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/defines.h +0 -206
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/diagnostic.h +0 -433
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/extension.h +0 -19
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/node.h +0 -150
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/options.h +0 -305
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/parser.h +0 -891
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/regexp.h +0 -33
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/static_literals.h +0 -120
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_char.h +0 -205
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_constant_pool.h +0 -226
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_integer.h +0 -119
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_newline_list.h +0 -102
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string.h +0 -174
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/util/pm_string_list.h +0 -44
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism/version.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/prism_compile.h +0 -88
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/ractor_core.h +0 -393
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regint.h +0 -1010
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rjit_c.h +0 -165
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/rubyparser.h +0 -1430
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/shape.h +0 -233
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/symbol.h +0 -118
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_pthread.h +0 -166
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm.inc +0 -5643
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_callinfo.h +0 -605
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_core.h +0 -2236
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_insnhelper.h +0 -272
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/vmtc.inc +0 -253
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview1/yjit.h +0 -79
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +0 -22
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/builtin.h +0 -119
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/build_assert/build_assert.h +0 -40
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/check_type/check_type.h +0 -63
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/container_of/container_of.h +0 -142
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/list/list.h +0 -791
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ccan/str/str.h +0 -17
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/constant.h +0 -53
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/darray.h +0 -209
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/debug_counter.h +0 -423
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/dln.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/encindex.h +0 -70
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +0 -324
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +0 -237
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/id_table.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns.inc +0 -265
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/insns_info.inc +0 -9902
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/bignum.h +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/cmdlineopt.h +0 -65
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compar.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compile.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/compilers.h +0 -107
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/complex.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/cont.h +0 -35
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/dir.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enc.h +0 -19
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/encoding.h +0 -36
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enum.h +0 -18
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/enumerator.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/eval.h +0 -33
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/file.h +0 -38
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/inits.h +0 -47
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/load.h +0 -18
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/loadpath.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/math.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/missing.h +0 -19
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/numeric.h +0 -274
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/object.h +0 -63
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/proc.h +0 -30
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/process.h +0 -124
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/ractor.h +0 -6
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/random.h +0 -17
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/range.h +0 -40
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/rational.h +0 -71
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/re.h +0 -28
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/ruby_parser.h +0 -102
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/serial.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/signal.h +0 -24
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/st.h +0 -11
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/static_assert.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/struct.h +0 -127
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/symbol.h +0 -45
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/time.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/transcode.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/util.h +0 -27
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/variable.h +0 -72
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal/warnings.h +0 -16
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/internal.h +0 -108
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/iseq.h +0 -340
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/known_errors.inc +0 -1419
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/method.h +0 -255
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node.h +0 -111
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +0 -224
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +0 -128
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/optunifs.inc +0 -43
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parse.h +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +0 -564
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_st.h +0 -162
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/parser_value.h +0 -106
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/encoding.h +0 -283
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/pack.h +0 -163
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/prettyprint.h +0 -34
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/prism.h +0 -336
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_buffer.h +0 -218
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_list.h +0 -97
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_memchr.h +0 -29
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strncasecmp.h +0 -32
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strpbrk.h +0 -46
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +0 -42
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regenc.h +0 -254
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regint.h +0 -1006
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/regparse.h +0 -371
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/revision.h +0 -5
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit.h +0 -101
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +0 -165
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ruby_assert.h +0 -14
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/ruby_atomic.h +0 -23
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/siphash.h +0 -48
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/symbol.h +0 -123
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_none.h +0 -21
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/timev.h +0 -58
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +0 -138
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/variable.h +0 -39
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/version.h +0 -69
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm.inc +0 -5840
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +0 -244
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_callinfo.h +0 -627
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_debug.h +0 -124
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +0 -199
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_insnhelper.h +0 -277
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_opts.h +0 -67
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vm_sync.h +0 -137
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/vmtc.inc +0 -259
- data/lib/datadog/ruby_core_source/ruby-3.4.0-preview2/yjit.h +0 -79
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/build_assert/build_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/check_type/check_type.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/container_of/container_of.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/list/list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ccan/str/str.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/id_table.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/array.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/bignum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/class.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cmdlineopt.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compar.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compile.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/compilers.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/complex.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/cont.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/dir.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enc.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enum.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/enumerator.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/eval.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/file.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/internal/hash.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/inits.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/load.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/loadpath.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/math.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/missing.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/numeric.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/object.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/process.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/random.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/range.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/rational.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/re.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/ruby_parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/serial.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/signal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/static_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/struct.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/symbol.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/time.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/transcode.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/util.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/variable.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal/warnings.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/internal.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/iseq.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/node.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_st.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/parser_value.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/encoding.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/node.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/options.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/pack.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/parser.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/prettyprint.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/regexp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/static_literals.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_buffer.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_char.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_constant_pool.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_integer.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_memchr.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_newline_list.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/prism/util/pm_string.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strncasecmp.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/prism/util/pm_strpbrk.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_assert.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/ruby_atomic.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview2 → ruby-3.4.0-p0}/shape.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/thread_none.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_debug.h +0 -0
- /data/lib/datadog/ruby_core_source/{ruby-3.4.0-preview1 → ruby-3.4.0-p0}/vm_opts.h +0 -0
@@ -1,3667 +0,0 @@
|
|
1
|
-
/* -*-c-*- *********************************************************/
|
2
|
-
/*******************************************************************/
|
3
|
-
/*******************************************************************/
|
4
|
-
/**
|
5
|
-
This file is VM main loop.
|
6
|
-
|
7
|
-
----
|
8
|
-
This file is auto generated by insns2vm.rb
|
9
|
-
DO NOT TOUCH!
|
10
|
-
|
11
|
-
If you want to fix something, you must edit 'insns.def'
|
12
|
-
*/
|
13
|
-
|
14
|
-
|
15
|
-
INSN_ENTRY(nop){START_OF_ORIGINAL_INSN(nop);
|
16
|
-
{
|
17
|
-
|
18
|
-
|
19
|
-
DEBUG_ENTER_INSN("nop");
|
20
|
-
ADD_PC(1+0);
|
21
|
-
PREFETCH(GET_PC());
|
22
|
-
#define CURRENT_INSN_nop 1
|
23
|
-
#define INSN_IS_SC() 0
|
24
|
-
#define INSN_LABEL(lab) LABEL_nop_##lab
|
25
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
26
|
-
COLLECT_USAGE_INSN(BIN(nop));
|
27
|
-
{
|
28
|
-
#line 40 "insns.def"
|
29
|
-
/* none */
|
30
|
-
|
31
|
-
#line 32 "vm.inc"
|
32
|
-
#undef CURRENT_INSN_nop
|
33
|
-
#undef INSN_IS_SC
|
34
|
-
#undef INSN_LABEL
|
35
|
-
#undef LABEL_IS_SC
|
36
|
-
END_INSN(nop);}}}
|
37
|
-
INSN_ENTRY(getlocal){START_OF_ORIGINAL_INSN(getlocal);
|
38
|
-
{
|
39
|
-
VALUE val;
|
40
|
-
rb_num_t level = (rb_num_t)GET_OPERAND(2);
|
41
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
42
|
-
|
43
|
-
DEBUG_ENTER_INSN("getlocal");
|
44
|
-
ADD_PC(1+2);
|
45
|
-
PREFETCH(GET_PC());
|
46
|
-
#define CURRENT_INSN_getlocal 1
|
47
|
-
#define INSN_IS_SC() 0
|
48
|
-
#define INSN_LABEL(lab) LABEL_getlocal_##lab
|
49
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
50
|
-
COLLECT_USAGE_INSN(BIN(getlocal));
|
51
|
-
COLLECT_USAGE_OPERAND(BIN(getlocal), 0, idx);
|
52
|
-
COLLECT_USAGE_OPERAND(BIN(getlocal), 1, level);
|
53
|
-
{
|
54
|
-
#line 60 "insns.def"
|
55
|
-
val = *(vm_get_ep(GET_EP(), level) - idx);
|
56
|
-
RB_DEBUG_COUNTER_INC(lvar_get);
|
57
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_get_dynamic, level > 0);
|
58
|
-
|
59
|
-
#line 60 "vm.inc"
|
60
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
61
|
-
PUSH(val);
|
62
|
-
#undef CURRENT_INSN_getlocal
|
63
|
-
#undef INSN_IS_SC
|
64
|
-
#undef INSN_LABEL
|
65
|
-
#undef LABEL_IS_SC
|
66
|
-
END_INSN(getlocal);}}}
|
67
|
-
INSN_ENTRY(setlocal){START_OF_ORIGINAL_INSN(setlocal);
|
68
|
-
{
|
69
|
-
rb_num_t level = (rb_num_t)GET_OPERAND(2);
|
70
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
71
|
-
VALUE val = TOPN(0);
|
72
|
-
DEBUG_ENTER_INSN("setlocal");
|
73
|
-
ADD_PC(1+2);
|
74
|
-
PREFETCH(GET_PC());
|
75
|
-
POPN(1);
|
76
|
-
#define CURRENT_INSN_setlocal 1
|
77
|
-
#define INSN_IS_SC() 0
|
78
|
-
#define INSN_LABEL(lab) LABEL_setlocal_##lab
|
79
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
80
|
-
COLLECT_USAGE_INSN(BIN(setlocal));
|
81
|
-
COLLECT_USAGE_OPERAND(BIN(setlocal), 0, idx);
|
82
|
-
COLLECT_USAGE_OPERAND(BIN(setlocal), 1, level);
|
83
|
-
{
|
84
|
-
#line 78 "insns.def"
|
85
|
-
vm_env_write(vm_get_ep(GET_EP(), level), -(int)idx, val);
|
86
|
-
RB_DEBUG_COUNTER_INC(lvar_set);
|
87
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_set_dynamic, level > 0);
|
88
|
-
|
89
|
-
#line 90 "vm.inc"
|
90
|
-
#undef CURRENT_INSN_setlocal
|
91
|
-
#undef INSN_IS_SC
|
92
|
-
#undef INSN_LABEL
|
93
|
-
#undef LABEL_IS_SC
|
94
|
-
END_INSN(setlocal);}}}
|
95
|
-
INSN_ENTRY(getblockparam){START_OF_ORIGINAL_INSN(getblockparam);
|
96
|
-
{
|
97
|
-
VALUE val;
|
98
|
-
rb_num_t level = (rb_num_t)GET_OPERAND(2);
|
99
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
100
|
-
|
101
|
-
DEBUG_ENTER_INSN("getblockparam");
|
102
|
-
ADD_PC(1+2);
|
103
|
-
PREFETCH(GET_PC());
|
104
|
-
#define CURRENT_INSN_getblockparam 1
|
105
|
-
#define INSN_IS_SC() 0
|
106
|
-
#define INSN_LABEL(lab) LABEL_getblockparam_##lab
|
107
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
108
|
-
COLLECT_USAGE_INSN(BIN(getblockparam));
|
109
|
-
COLLECT_USAGE_OPERAND(BIN(getblockparam), 0, idx);
|
110
|
-
COLLECT_USAGE_OPERAND(BIN(getblockparam), 1, level);
|
111
|
-
{
|
112
|
-
#line 94 "insns.def"
|
113
|
-
const VALUE *ep = vm_get_ep(GET_EP(), level);
|
114
|
-
VM_ASSERT(VM_ENV_LOCAL_P(ep));
|
115
|
-
|
116
|
-
if (!VM_ENV_FLAGS(ep, VM_FRAME_FLAG_MODIFIED_BLOCK_PARAM)) {
|
117
|
-
val = rb_vm_bh_to_procval(ec, VM_ENV_BLOCK_HANDLER(ep));
|
118
|
-
vm_env_write(ep, -(int)idx, val);
|
119
|
-
VM_ENV_FLAGS_SET(ep, VM_FRAME_FLAG_MODIFIED_BLOCK_PARAM);
|
120
|
-
}
|
121
|
-
else {
|
122
|
-
val = *(ep - idx);
|
123
|
-
RB_DEBUG_COUNTER_INC(lvar_get);
|
124
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_get_dynamic, level > 0);
|
125
|
-
}
|
126
|
-
|
127
|
-
#line 128 "vm.inc"
|
128
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
129
|
-
PUSH(val);
|
130
|
-
#undef CURRENT_INSN_getblockparam
|
131
|
-
#undef INSN_IS_SC
|
132
|
-
#undef INSN_LABEL
|
133
|
-
#undef LABEL_IS_SC
|
134
|
-
END_INSN(getblockparam);}}}
|
135
|
-
INSN_ENTRY(setblockparam){START_OF_ORIGINAL_INSN(setblockparam);
|
136
|
-
{
|
137
|
-
rb_num_t level = (rb_num_t)GET_OPERAND(2);
|
138
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
139
|
-
VALUE val = TOPN(0);
|
140
|
-
DEBUG_ENTER_INSN("setblockparam");
|
141
|
-
ADD_PC(1+2);
|
142
|
-
PREFETCH(GET_PC());
|
143
|
-
POPN(1);
|
144
|
-
#define CURRENT_INSN_setblockparam 1
|
145
|
-
#define INSN_IS_SC() 0
|
146
|
-
#define INSN_LABEL(lab) LABEL_setblockparam_##lab
|
147
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
148
|
-
COLLECT_USAGE_INSN(BIN(setblockparam));
|
149
|
-
COLLECT_USAGE_OPERAND(BIN(setblockparam), 0, idx);
|
150
|
-
COLLECT_USAGE_OPERAND(BIN(setblockparam), 1, level);
|
151
|
-
{
|
152
|
-
#line 120 "insns.def"
|
153
|
-
const VALUE *ep = vm_get_ep(GET_EP(), level);
|
154
|
-
VM_ASSERT(VM_ENV_LOCAL_P(ep));
|
155
|
-
|
156
|
-
vm_env_write(ep, -(int)idx, val);
|
157
|
-
RB_DEBUG_COUNTER_INC(lvar_set);
|
158
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_set_dynamic, level > 0);
|
159
|
-
|
160
|
-
VM_ENV_FLAGS_SET(ep, VM_FRAME_FLAG_MODIFIED_BLOCK_PARAM);
|
161
|
-
|
162
|
-
#line 163 "vm.inc"
|
163
|
-
#undef CURRENT_INSN_setblockparam
|
164
|
-
#undef INSN_IS_SC
|
165
|
-
#undef INSN_LABEL
|
166
|
-
#undef LABEL_IS_SC
|
167
|
-
END_INSN(setblockparam);}}}
|
168
|
-
INSN_ENTRY(getspecial){START_OF_ORIGINAL_INSN(getspecial);
|
169
|
-
{
|
170
|
-
VALUE val;
|
171
|
-
rb_num_t type = (rb_num_t)GET_OPERAND(2);
|
172
|
-
rb_num_t key = (rb_num_t)GET_OPERAND(1);
|
173
|
-
|
174
|
-
DEBUG_ENTER_INSN("getspecial");
|
175
|
-
ADD_PC(1+2);
|
176
|
-
PREFETCH(GET_PC());
|
177
|
-
#define CURRENT_INSN_getspecial 1
|
178
|
-
#define INSN_IS_SC() 0
|
179
|
-
#define INSN_LABEL(lab) LABEL_getspecial_##lab
|
180
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
181
|
-
COLLECT_USAGE_INSN(BIN(getspecial));
|
182
|
-
COLLECT_USAGE_OPERAND(BIN(getspecial), 0, key);
|
183
|
-
COLLECT_USAGE_OPERAND(BIN(getspecial), 1, type);
|
184
|
-
{
|
185
|
-
#line 141 "insns.def"
|
186
|
-
val = vm_getspecial(ec, GET_LEP(), key, type);
|
187
|
-
|
188
|
-
#line 189 "vm.inc"
|
189
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
190
|
-
PUSH(val);
|
191
|
-
#undef CURRENT_INSN_getspecial
|
192
|
-
#undef INSN_IS_SC
|
193
|
-
#undef INSN_LABEL
|
194
|
-
#undef LABEL_IS_SC
|
195
|
-
END_INSN(getspecial);}}}
|
196
|
-
INSN_ENTRY(setspecial){START_OF_ORIGINAL_INSN(setspecial);
|
197
|
-
{
|
198
|
-
rb_num_t key = (rb_num_t)GET_OPERAND(1);
|
199
|
-
VALUE obj = TOPN(0);
|
200
|
-
DEBUG_ENTER_INSN("setspecial");
|
201
|
-
ADD_PC(1+1);
|
202
|
-
PREFETCH(GET_PC());
|
203
|
-
POPN(1);
|
204
|
-
#define CURRENT_INSN_setspecial 1
|
205
|
-
#define INSN_IS_SC() 0
|
206
|
-
#define INSN_LABEL(lab) LABEL_setspecial_##lab
|
207
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
208
|
-
COLLECT_USAGE_INSN(BIN(setspecial));
|
209
|
-
COLLECT_USAGE_OPERAND(BIN(setspecial), 0, key);
|
210
|
-
{
|
211
|
-
#line 155 "insns.def"
|
212
|
-
lep_svar_set(ec, GET_LEP(), key, obj);
|
213
|
-
|
214
|
-
#line 215 "vm.inc"
|
215
|
-
#undef CURRENT_INSN_setspecial
|
216
|
-
#undef INSN_IS_SC
|
217
|
-
#undef INSN_LABEL
|
218
|
-
#undef LABEL_IS_SC
|
219
|
-
END_INSN(setspecial);}}}
|
220
|
-
INSN_ENTRY(getinstancevariable){START_OF_ORIGINAL_INSN(getinstancevariable);
|
221
|
-
{
|
222
|
-
VALUE val;
|
223
|
-
IC ic = (IC)GET_OPERAND(2);
|
224
|
-
ID id = (ID)GET_OPERAND(1);
|
225
|
-
|
226
|
-
DEBUG_ENTER_INSN("getinstancevariable");
|
227
|
-
ADD_PC(1+2);
|
228
|
-
PREFETCH(GET_PC());
|
229
|
-
#define CURRENT_INSN_getinstancevariable 1
|
230
|
-
#define INSN_IS_SC() 0
|
231
|
-
#define INSN_LABEL(lab) LABEL_getinstancevariable_##lab
|
232
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
233
|
-
COLLECT_USAGE_INSN(BIN(getinstancevariable));
|
234
|
-
COLLECT_USAGE_OPERAND(BIN(getinstancevariable), 0, id);
|
235
|
-
COLLECT_USAGE_OPERAND(BIN(getinstancevariable), 1, ic);
|
236
|
-
{
|
237
|
-
#line 169 "insns.def"
|
238
|
-
val = vm_getinstancevariable(GET_SELF(), id, ic);
|
239
|
-
|
240
|
-
#line 241 "vm.inc"
|
241
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
242
|
-
PUSH(val);
|
243
|
-
#undef CURRENT_INSN_getinstancevariable
|
244
|
-
#undef INSN_IS_SC
|
245
|
-
#undef INSN_LABEL
|
246
|
-
#undef LABEL_IS_SC
|
247
|
-
END_INSN(getinstancevariable);}}}
|
248
|
-
INSN_ENTRY(setinstancevariable){START_OF_ORIGINAL_INSN(setinstancevariable);
|
249
|
-
{
|
250
|
-
IC ic = (IC)GET_OPERAND(2);
|
251
|
-
ID id = (ID)GET_OPERAND(1);
|
252
|
-
VALUE val = TOPN(0);
|
253
|
-
DEBUG_ENTER_INSN("setinstancevariable");
|
254
|
-
ADD_PC(1+2);
|
255
|
-
PREFETCH(GET_PC());
|
256
|
-
POPN(1);
|
257
|
-
#define CURRENT_INSN_setinstancevariable 1
|
258
|
-
#define INSN_IS_SC() 0
|
259
|
-
#define INSN_LABEL(lab) LABEL_setinstancevariable_##lab
|
260
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
261
|
-
COLLECT_USAGE_INSN(BIN(setinstancevariable));
|
262
|
-
COLLECT_USAGE_OPERAND(BIN(setinstancevariable), 0, id);
|
263
|
-
COLLECT_USAGE_OPERAND(BIN(setinstancevariable), 1, ic);
|
264
|
-
{
|
265
|
-
#line 183 "insns.def"
|
266
|
-
vm_setinstancevariable(GET_SELF(), id, val, ic);
|
267
|
-
|
268
|
-
#line 269 "vm.inc"
|
269
|
-
#undef CURRENT_INSN_setinstancevariable
|
270
|
-
#undef INSN_IS_SC
|
271
|
-
#undef INSN_LABEL
|
272
|
-
#undef LABEL_IS_SC
|
273
|
-
END_INSN(setinstancevariable);}}}
|
274
|
-
INSN_ENTRY(getclassvariable){START_OF_ORIGINAL_INSN(getclassvariable);
|
275
|
-
{
|
276
|
-
VALUE val;
|
277
|
-
ID id = (ID)GET_OPERAND(1);
|
278
|
-
|
279
|
-
DEBUG_ENTER_INSN("getclassvariable");
|
280
|
-
ADD_PC(1+1);
|
281
|
-
PREFETCH(GET_PC());
|
282
|
-
#define CURRENT_INSN_getclassvariable 1
|
283
|
-
#define INSN_IS_SC() 0
|
284
|
-
#define INSN_LABEL(lab) LABEL_getclassvariable_##lab
|
285
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
286
|
-
COLLECT_USAGE_INSN(BIN(getclassvariable));
|
287
|
-
COLLECT_USAGE_OPERAND(BIN(getclassvariable), 0, id);
|
288
|
-
{
|
289
|
-
#line 197 "insns.def"
|
290
|
-
val = rb_cvar_get(vm_get_cvar_base(rb_vm_get_cref(GET_EP()), GET_CFP()), id);
|
291
|
-
|
292
|
-
#line 293 "vm.inc"
|
293
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
294
|
-
PUSH(val);
|
295
|
-
#undef CURRENT_INSN_getclassvariable
|
296
|
-
#undef INSN_IS_SC
|
297
|
-
#undef INSN_LABEL
|
298
|
-
#undef LABEL_IS_SC
|
299
|
-
END_INSN(getclassvariable);}}}
|
300
|
-
INSN_ENTRY(setclassvariable){START_OF_ORIGINAL_INSN(setclassvariable);
|
301
|
-
{
|
302
|
-
ID id = (ID)GET_OPERAND(1);
|
303
|
-
VALUE val = TOPN(0);
|
304
|
-
DEBUG_ENTER_INSN("setclassvariable");
|
305
|
-
ADD_PC(1+1);
|
306
|
-
PREFETCH(GET_PC());
|
307
|
-
POPN(1);
|
308
|
-
#define CURRENT_INSN_setclassvariable 1
|
309
|
-
#define INSN_IS_SC() 0
|
310
|
-
#define INSN_LABEL(lab) LABEL_setclassvariable_##lab
|
311
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
312
|
-
COLLECT_USAGE_INSN(BIN(setclassvariable));
|
313
|
-
COLLECT_USAGE_OPERAND(BIN(setclassvariable), 0, id);
|
314
|
-
{
|
315
|
-
#line 211 "insns.def"
|
316
|
-
vm_ensure_not_refinement_module(GET_SELF());
|
317
|
-
rb_cvar_set(vm_get_cvar_base(rb_vm_get_cref(GET_EP()), GET_CFP()), id, val);
|
318
|
-
|
319
|
-
#line 320 "vm.inc"
|
320
|
-
#undef CURRENT_INSN_setclassvariable
|
321
|
-
#undef INSN_IS_SC
|
322
|
-
#undef INSN_LABEL
|
323
|
-
#undef LABEL_IS_SC
|
324
|
-
END_INSN(setclassvariable);}}}
|
325
|
-
INSN_ENTRY(getconstant){START_OF_ORIGINAL_INSN(getconstant);
|
326
|
-
{
|
327
|
-
VALUE val;
|
328
|
-
ID id = (ID)GET_OPERAND(1);
|
329
|
-
VALUE klass = TOPN(0);
|
330
|
-
DEBUG_ENTER_INSN("getconstant");
|
331
|
-
ADD_PC(1+1);
|
332
|
-
PREFETCH(GET_PC());
|
333
|
-
POPN(1);
|
334
|
-
#define CURRENT_INSN_getconstant 1
|
335
|
-
#define INSN_IS_SC() 0
|
336
|
-
#define INSN_LABEL(lab) LABEL_getconstant_##lab
|
337
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
338
|
-
COLLECT_USAGE_INSN(BIN(getconstant));
|
339
|
-
COLLECT_USAGE_OPERAND(BIN(getconstant), 0, id);
|
340
|
-
{
|
341
|
-
#line 233 "insns.def"
|
342
|
-
val = vm_get_ev_const(ec, klass, id, 0);
|
343
|
-
|
344
|
-
#line 345 "vm.inc"
|
345
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
346
|
-
PUSH(val);
|
347
|
-
#undef CURRENT_INSN_getconstant
|
348
|
-
#undef INSN_IS_SC
|
349
|
-
#undef INSN_LABEL
|
350
|
-
#undef LABEL_IS_SC
|
351
|
-
END_INSN(getconstant);}}}
|
352
|
-
INSN_ENTRY(setconstant){START_OF_ORIGINAL_INSN(setconstant);
|
353
|
-
{
|
354
|
-
ID id = (ID)GET_OPERAND(1);
|
355
|
-
VALUE val = TOPN(1);
|
356
|
-
VALUE cbase = TOPN(0);
|
357
|
-
DEBUG_ENTER_INSN("setconstant");
|
358
|
-
ADD_PC(1+1);
|
359
|
-
PREFETCH(GET_PC());
|
360
|
-
POPN(2);
|
361
|
-
#define CURRENT_INSN_setconstant 1
|
362
|
-
#define INSN_IS_SC() 0
|
363
|
-
#define INSN_LABEL(lab) LABEL_setconstant_##lab
|
364
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
365
|
-
COLLECT_USAGE_INSN(BIN(setconstant));
|
366
|
-
COLLECT_USAGE_OPERAND(BIN(setconstant), 0, id);
|
367
|
-
{
|
368
|
-
#line 255 "insns.def"
|
369
|
-
vm_check_if_namespace(cbase);
|
370
|
-
vm_ensure_not_refinement_module(GET_SELF());
|
371
|
-
rb_const_set(cbase, id, val);
|
372
|
-
|
373
|
-
#line 374 "vm.inc"
|
374
|
-
#undef CURRENT_INSN_setconstant
|
375
|
-
#undef INSN_IS_SC
|
376
|
-
#undef INSN_LABEL
|
377
|
-
#undef LABEL_IS_SC
|
378
|
-
END_INSN(setconstant);}}}
|
379
|
-
INSN_ENTRY(getglobal){START_OF_ORIGINAL_INSN(getglobal);
|
380
|
-
{
|
381
|
-
VALUE val;
|
382
|
-
GENTRY entry = (GENTRY)GET_OPERAND(1);
|
383
|
-
|
384
|
-
DEBUG_ENTER_INSN("getglobal");
|
385
|
-
ADD_PC(1+1);
|
386
|
-
PREFETCH(GET_PC());
|
387
|
-
#define CURRENT_INSN_getglobal 1
|
388
|
-
#define INSN_IS_SC() 0
|
389
|
-
#define INSN_LABEL(lab) LABEL_getglobal_##lab
|
390
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
391
|
-
COLLECT_USAGE_INSN(BIN(getglobal));
|
392
|
-
COLLECT_USAGE_OPERAND(BIN(getglobal), 0, entry);
|
393
|
-
{
|
394
|
-
#line 271 "insns.def"
|
395
|
-
val = GET_GLOBAL((VALUE)entry);
|
396
|
-
|
397
|
-
#line 398 "vm.inc"
|
398
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
399
|
-
PUSH(val);
|
400
|
-
#undef CURRENT_INSN_getglobal
|
401
|
-
#undef INSN_IS_SC
|
402
|
-
#undef INSN_LABEL
|
403
|
-
#undef LABEL_IS_SC
|
404
|
-
END_INSN(getglobal);}}}
|
405
|
-
INSN_ENTRY(setglobal){START_OF_ORIGINAL_INSN(setglobal);
|
406
|
-
{
|
407
|
-
GENTRY entry = (GENTRY)GET_OPERAND(1);
|
408
|
-
VALUE val = TOPN(0);
|
409
|
-
DEBUG_ENTER_INSN("setglobal");
|
410
|
-
ADD_PC(1+1);
|
411
|
-
PREFETCH(GET_PC());
|
412
|
-
POPN(1);
|
413
|
-
#define CURRENT_INSN_setglobal 1
|
414
|
-
#define INSN_IS_SC() 0
|
415
|
-
#define INSN_LABEL(lab) LABEL_setglobal_##lab
|
416
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
417
|
-
COLLECT_USAGE_INSN(BIN(setglobal));
|
418
|
-
COLLECT_USAGE_OPERAND(BIN(setglobal), 0, entry);
|
419
|
-
{
|
420
|
-
#line 285 "insns.def"
|
421
|
-
SET_GLOBAL((VALUE)entry, val);
|
422
|
-
|
423
|
-
#line 424 "vm.inc"
|
424
|
-
#undef CURRENT_INSN_setglobal
|
425
|
-
#undef INSN_IS_SC
|
426
|
-
#undef INSN_LABEL
|
427
|
-
#undef LABEL_IS_SC
|
428
|
-
END_INSN(setglobal);}}}
|
429
|
-
INSN_ENTRY(putnil){START_OF_ORIGINAL_INSN(putnil);
|
430
|
-
{
|
431
|
-
VALUE val;
|
432
|
-
|
433
|
-
|
434
|
-
DEBUG_ENTER_INSN("putnil");
|
435
|
-
ADD_PC(1+0);
|
436
|
-
PREFETCH(GET_PC());
|
437
|
-
#define CURRENT_INSN_putnil 1
|
438
|
-
#define INSN_IS_SC() 0
|
439
|
-
#define INSN_LABEL(lab) LABEL_putnil_##lab
|
440
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
441
|
-
COLLECT_USAGE_INSN(BIN(putnil));
|
442
|
-
{
|
443
|
-
#line 304 "insns.def"
|
444
|
-
val = Qnil;
|
445
|
-
|
446
|
-
#line 447 "vm.inc"
|
447
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
448
|
-
PUSH(val);
|
449
|
-
#undef CURRENT_INSN_putnil
|
450
|
-
#undef INSN_IS_SC
|
451
|
-
#undef INSN_LABEL
|
452
|
-
#undef LABEL_IS_SC
|
453
|
-
END_INSN(putnil);}}}
|
454
|
-
INSN_ENTRY(putself){START_OF_ORIGINAL_INSN(putself);
|
455
|
-
{
|
456
|
-
VALUE val;
|
457
|
-
|
458
|
-
|
459
|
-
DEBUG_ENTER_INSN("putself");
|
460
|
-
ADD_PC(1+0);
|
461
|
-
PREFETCH(GET_PC());
|
462
|
-
#define CURRENT_INSN_putself 1
|
463
|
-
#define INSN_IS_SC() 0
|
464
|
-
#define INSN_LABEL(lab) LABEL_putself_##lab
|
465
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
466
|
-
COLLECT_USAGE_INSN(BIN(putself));
|
467
|
-
{
|
468
|
-
#line 318 "insns.def"
|
469
|
-
val = GET_SELF();
|
470
|
-
|
471
|
-
#line 472 "vm.inc"
|
472
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
473
|
-
PUSH(val);
|
474
|
-
#undef CURRENT_INSN_putself
|
475
|
-
#undef INSN_IS_SC
|
476
|
-
#undef INSN_LABEL
|
477
|
-
#undef LABEL_IS_SC
|
478
|
-
END_INSN(putself);}}}
|
479
|
-
INSN_ENTRY(putobject){START_OF_ORIGINAL_INSN(putobject);
|
480
|
-
{
|
481
|
-
VALUE val = (VALUE)GET_OPERAND(1);
|
482
|
-
|
483
|
-
DEBUG_ENTER_INSN("putobject");
|
484
|
-
ADD_PC(1+1);
|
485
|
-
PREFETCH(GET_PC());
|
486
|
-
#define CURRENT_INSN_putobject 1
|
487
|
-
#define INSN_IS_SC() 0
|
488
|
-
#define INSN_LABEL(lab) LABEL_putobject_##lab
|
489
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
490
|
-
COLLECT_USAGE_INSN(BIN(putobject));
|
491
|
-
COLLECT_USAGE_OPERAND(BIN(putobject), 0, val);
|
492
|
-
{
|
493
|
-
#line 334 "insns.def"
|
494
|
-
/* */
|
495
|
-
|
496
|
-
#line 497 "vm.inc"
|
497
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
498
|
-
PUSH(val);
|
499
|
-
#undef CURRENT_INSN_putobject
|
500
|
-
#undef INSN_IS_SC
|
501
|
-
#undef INSN_LABEL
|
502
|
-
#undef LABEL_IS_SC
|
503
|
-
END_INSN(putobject);}}}
|
504
|
-
INSN_ENTRY(putspecialobject){START_OF_ORIGINAL_INSN(putspecialobject);
|
505
|
-
{
|
506
|
-
VALUE val;
|
507
|
-
rb_num_t value_type = (rb_num_t)GET_OPERAND(1);
|
508
|
-
|
509
|
-
DEBUG_ENTER_INSN("putspecialobject");
|
510
|
-
ADD_PC(1+1);
|
511
|
-
PREFETCH(GET_PC());
|
512
|
-
#define CURRENT_INSN_putspecialobject 1
|
513
|
-
#define INSN_IS_SC() 0
|
514
|
-
#define INSN_LABEL(lab) LABEL_putspecialobject_##lab
|
515
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
516
|
-
COLLECT_USAGE_INSN(BIN(putspecialobject));
|
517
|
-
COLLECT_USAGE_OPERAND(BIN(putspecialobject), 0, value_type);
|
518
|
-
{
|
519
|
-
#line 349 "insns.def"
|
520
|
-
enum vm_special_object_type type;
|
521
|
-
|
522
|
-
type = (enum vm_special_object_type)value_type;
|
523
|
-
val = vm_get_special_object(GET_EP(), type);
|
524
|
-
|
525
|
-
#line 526 "vm.inc"
|
526
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
527
|
-
PUSH(val);
|
528
|
-
#undef CURRENT_INSN_putspecialobject
|
529
|
-
#undef INSN_IS_SC
|
530
|
-
#undef INSN_LABEL
|
531
|
-
#undef LABEL_IS_SC
|
532
|
-
END_INSN(putspecialobject);}}}
|
533
|
-
INSN_ENTRY(putiseq){START_OF_ORIGINAL_INSN(putiseq);
|
534
|
-
{
|
535
|
-
VALUE ret;
|
536
|
-
ISEQ iseq = (ISEQ)GET_OPERAND(1);
|
537
|
-
|
538
|
-
DEBUG_ENTER_INSN("putiseq");
|
539
|
-
ADD_PC(1+1);
|
540
|
-
PREFETCH(GET_PC());
|
541
|
-
#define CURRENT_INSN_putiseq 1
|
542
|
-
#define INSN_IS_SC() 0
|
543
|
-
#define INSN_LABEL(lab) LABEL_putiseq_##lab
|
544
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
545
|
-
COLLECT_USAGE_INSN(BIN(putiseq));
|
546
|
-
COLLECT_USAGE_OPERAND(BIN(putiseq), 0, iseq);
|
547
|
-
{
|
548
|
-
#line 366 "insns.def"
|
549
|
-
ret = (VALUE)iseq;
|
550
|
-
|
551
|
-
#line 552 "vm.inc"
|
552
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
553
|
-
PUSH(ret);
|
554
|
-
#undef CURRENT_INSN_putiseq
|
555
|
-
#undef INSN_IS_SC
|
556
|
-
#undef INSN_LABEL
|
557
|
-
#undef LABEL_IS_SC
|
558
|
-
END_INSN(putiseq);}}}
|
559
|
-
INSN_ENTRY(putstring){START_OF_ORIGINAL_INSN(putstring);
|
560
|
-
{
|
561
|
-
VALUE val;
|
562
|
-
VALUE str = (VALUE)GET_OPERAND(1);
|
563
|
-
|
564
|
-
DEBUG_ENTER_INSN("putstring");
|
565
|
-
ADD_PC(1+1);
|
566
|
-
PREFETCH(GET_PC());
|
567
|
-
#define CURRENT_INSN_putstring 1
|
568
|
-
#define INSN_IS_SC() 0
|
569
|
-
#define INSN_LABEL(lab) LABEL_putstring_##lab
|
570
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
571
|
-
COLLECT_USAGE_INSN(BIN(putstring));
|
572
|
-
COLLECT_USAGE_OPERAND(BIN(putstring), 0, str);
|
573
|
-
{
|
574
|
-
#line 380 "insns.def"
|
575
|
-
val = rb_str_resurrect(str);
|
576
|
-
|
577
|
-
#line 578 "vm.inc"
|
578
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
579
|
-
PUSH(val);
|
580
|
-
#undef CURRENT_INSN_putstring
|
581
|
-
#undef INSN_IS_SC
|
582
|
-
#undef INSN_LABEL
|
583
|
-
#undef LABEL_IS_SC
|
584
|
-
END_INSN(putstring);}}}
|
585
|
-
INSN_ENTRY(concatstrings){START_OF_ORIGINAL_INSN(concatstrings);
|
586
|
-
{
|
587
|
-
VALUE val;
|
588
|
-
rb_num_t num = (rb_num_t)GET_OPERAND(1);
|
589
|
-
|
590
|
-
DEBUG_ENTER_INSN("concatstrings");
|
591
|
-
ADD_PC(1+1);
|
592
|
-
PREFETCH(GET_PC());
|
593
|
-
#define CURRENT_INSN_concatstrings 1
|
594
|
-
#define INSN_IS_SC() 0
|
595
|
-
#define INSN_LABEL(lab) LABEL_concatstrings_##lab
|
596
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
597
|
-
COLLECT_USAGE_INSN(BIN(concatstrings));
|
598
|
-
COLLECT_USAGE_OPERAND(BIN(concatstrings), 0, num);
|
599
|
-
{
|
600
|
-
#line 394 "insns.def"
|
601
|
-
val = rb_str_concat_literals(num, STACK_ADDR_FROM_TOP(num));
|
602
|
-
POPN(num);
|
603
|
-
|
604
|
-
#line 605 "vm.inc"
|
605
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
606
|
-
PUSH(val);
|
607
|
-
#undef CURRENT_INSN_concatstrings
|
608
|
-
#undef INSN_IS_SC
|
609
|
-
#undef INSN_LABEL
|
610
|
-
#undef LABEL_IS_SC
|
611
|
-
END_INSN(concatstrings);}}}
|
612
|
-
INSN_ENTRY(tostring){START_OF_ORIGINAL_INSN(tostring);
|
613
|
-
{
|
614
|
-
|
615
|
-
VALUE val = TOPN(1);
|
616
|
-
VALUE str = TOPN(0);
|
617
|
-
DEBUG_ENTER_INSN("tostring");
|
618
|
-
ADD_PC(1+0);
|
619
|
-
PREFETCH(GET_PC());
|
620
|
-
POPN(2);
|
621
|
-
#define CURRENT_INSN_tostring 1
|
622
|
-
#define INSN_IS_SC() 0
|
623
|
-
#define INSN_LABEL(lab) LABEL_tostring_##lab
|
624
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
625
|
-
COLLECT_USAGE_INSN(BIN(tostring));
|
626
|
-
{
|
627
|
-
#line 409 "insns.def"
|
628
|
-
VALUE rb_obj_as_string_result(VALUE str, VALUE obj);
|
629
|
-
val = rb_obj_as_string_result(str, val);
|
630
|
-
|
631
|
-
#line 632 "vm.inc"
|
632
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
633
|
-
PUSH(val);
|
634
|
-
#undef CURRENT_INSN_tostring
|
635
|
-
#undef INSN_IS_SC
|
636
|
-
#undef INSN_LABEL
|
637
|
-
#undef LABEL_IS_SC
|
638
|
-
END_INSN(tostring);}}}
|
639
|
-
INSN_ENTRY(freezestring){START_OF_ORIGINAL_INSN(freezestring);
|
640
|
-
{
|
641
|
-
VALUE debug_info = (VALUE)GET_OPERAND(1);
|
642
|
-
VALUE str = TOPN(0);
|
643
|
-
DEBUG_ENTER_INSN("freezestring");
|
644
|
-
ADD_PC(1+1);
|
645
|
-
PREFETCH(GET_PC());
|
646
|
-
POPN(1);
|
647
|
-
#define CURRENT_INSN_freezestring 1
|
648
|
-
#define INSN_IS_SC() 0
|
649
|
-
#define INSN_LABEL(lab) LABEL_freezestring_##lab
|
650
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
651
|
-
COLLECT_USAGE_INSN(BIN(freezestring));
|
652
|
-
COLLECT_USAGE_OPERAND(BIN(freezestring), 0, debug_info);
|
653
|
-
{
|
654
|
-
#line 424 "insns.def"
|
655
|
-
vm_freezestring(str, debug_info);
|
656
|
-
|
657
|
-
#line 658 "vm.inc"
|
658
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
659
|
-
PUSH(str);
|
660
|
-
#undef CURRENT_INSN_freezestring
|
661
|
-
#undef INSN_IS_SC
|
662
|
-
#undef INSN_LABEL
|
663
|
-
#undef LABEL_IS_SC
|
664
|
-
END_INSN(freezestring);}}}
|
665
|
-
INSN_ENTRY(toregexp){START_OF_ORIGINAL_INSN(toregexp);
|
666
|
-
{
|
667
|
-
VALUE val;
|
668
|
-
rb_num_t cnt = (rb_num_t)GET_OPERAND(2);
|
669
|
-
rb_num_t opt = (rb_num_t)GET_OPERAND(1);
|
670
|
-
|
671
|
-
DEBUG_ENTER_INSN("toregexp");
|
672
|
-
ADD_PC(1+2);
|
673
|
-
PREFETCH(GET_PC());
|
674
|
-
#define CURRENT_INSN_toregexp 1
|
675
|
-
#define INSN_IS_SC() 0
|
676
|
-
#define INSN_LABEL(lab) LABEL_toregexp_##lab
|
677
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
678
|
-
COLLECT_USAGE_INSN(BIN(toregexp));
|
679
|
-
COLLECT_USAGE_OPERAND(BIN(toregexp), 0, opt);
|
680
|
-
COLLECT_USAGE_OPERAND(BIN(toregexp), 1, cnt);
|
681
|
-
{
|
682
|
-
#line 440 "insns.def"
|
683
|
-
VALUE rb_reg_new_ary(VALUE ary, int options);
|
684
|
-
VALUE rb_ary_tmp_new_from_values(VALUE, long, const VALUE *);
|
685
|
-
const VALUE ary = rb_ary_tmp_new_from_values(0, cnt, STACK_ADDR_FROM_TOP(cnt));
|
686
|
-
POPN(cnt);
|
687
|
-
val = rb_reg_new_ary(ary, (int)opt);
|
688
|
-
rb_ary_clear(ary);
|
689
|
-
|
690
|
-
#line 691 "vm.inc"
|
691
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
692
|
-
PUSH(val);
|
693
|
-
#undef CURRENT_INSN_toregexp
|
694
|
-
#undef INSN_IS_SC
|
695
|
-
#undef INSN_LABEL
|
696
|
-
#undef LABEL_IS_SC
|
697
|
-
END_INSN(toregexp);}}}
|
698
|
-
INSN_ENTRY(intern){START_OF_ORIGINAL_INSN(intern);
|
699
|
-
{
|
700
|
-
VALUE sym;
|
701
|
-
|
702
|
-
VALUE str = TOPN(0);
|
703
|
-
DEBUG_ENTER_INSN("intern");
|
704
|
-
ADD_PC(1+0);
|
705
|
-
PREFETCH(GET_PC());
|
706
|
-
POPN(1);
|
707
|
-
#define CURRENT_INSN_intern 1
|
708
|
-
#define INSN_IS_SC() 0
|
709
|
-
#define INSN_LABEL(lab) LABEL_intern_##lab
|
710
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
711
|
-
COLLECT_USAGE_INSN(BIN(intern));
|
712
|
-
{
|
713
|
-
#line 459 "insns.def"
|
714
|
-
sym = rb_str_intern(str);
|
715
|
-
|
716
|
-
#line 717 "vm.inc"
|
717
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
718
|
-
PUSH(sym);
|
719
|
-
#undef CURRENT_INSN_intern
|
720
|
-
#undef INSN_IS_SC
|
721
|
-
#undef INSN_LABEL
|
722
|
-
#undef LABEL_IS_SC
|
723
|
-
END_INSN(intern);}}}
|
724
|
-
INSN_ENTRY(newarray){START_OF_ORIGINAL_INSN(newarray);
|
725
|
-
{
|
726
|
-
VALUE val;
|
727
|
-
rb_num_t num = (rb_num_t)GET_OPERAND(1);
|
728
|
-
|
729
|
-
DEBUG_ENTER_INSN("newarray");
|
730
|
-
ADD_PC(1+1);
|
731
|
-
PREFETCH(GET_PC());
|
732
|
-
#define CURRENT_INSN_newarray 1
|
733
|
-
#define INSN_IS_SC() 0
|
734
|
-
#define INSN_LABEL(lab) LABEL_newarray_##lab
|
735
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
736
|
-
COLLECT_USAGE_INSN(BIN(newarray));
|
737
|
-
COLLECT_USAGE_OPERAND(BIN(newarray), 0, num);
|
738
|
-
{
|
739
|
-
#line 473 "insns.def"
|
740
|
-
val = rb_ary_new4(num, STACK_ADDR_FROM_TOP(num));
|
741
|
-
POPN(num);
|
742
|
-
|
743
|
-
#line 744 "vm.inc"
|
744
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
745
|
-
PUSH(val);
|
746
|
-
#undef CURRENT_INSN_newarray
|
747
|
-
#undef INSN_IS_SC
|
748
|
-
#undef INSN_LABEL
|
749
|
-
#undef LABEL_IS_SC
|
750
|
-
END_INSN(newarray);}}}
|
751
|
-
INSN_ENTRY(duparray){START_OF_ORIGINAL_INSN(duparray);
|
752
|
-
{
|
753
|
-
VALUE val;
|
754
|
-
VALUE ary = (VALUE)GET_OPERAND(1);
|
755
|
-
|
756
|
-
DEBUG_ENTER_INSN("duparray");
|
757
|
-
ADD_PC(1+1);
|
758
|
-
PREFETCH(GET_PC());
|
759
|
-
#define CURRENT_INSN_duparray 1
|
760
|
-
#define INSN_IS_SC() 0
|
761
|
-
#define INSN_LABEL(lab) LABEL_duparray_##lab
|
762
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
763
|
-
COLLECT_USAGE_INSN(BIN(duparray));
|
764
|
-
COLLECT_USAGE_OPERAND(BIN(duparray), 0, ary);
|
765
|
-
{
|
766
|
-
#line 488 "insns.def"
|
767
|
-
val = rb_ary_resurrect(ary);
|
768
|
-
|
769
|
-
#line 770 "vm.inc"
|
770
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
771
|
-
PUSH(val);
|
772
|
-
#undef CURRENT_INSN_duparray
|
773
|
-
#undef INSN_IS_SC
|
774
|
-
#undef INSN_LABEL
|
775
|
-
#undef LABEL_IS_SC
|
776
|
-
END_INSN(duparray);}}}
|
777
|
-
INSN_ENTRY(expandarray){START_OF_ORIGINAL_INSN(expandarray);
|
778
|
-
{
|
779
|
-
rb_num_t flag = (rb_num_t)GET_OPERAND(2);
|
780
|
-
rb_num_t num = (rb_num_t)GET_OPERAND(1);
|
781
|
-
VALUE ary = TOPN(0);
|
782
|
-
DEBUG_ENTER_INSN("expandarray");
|
783
|
-
ADD_PC(1+2);
|
784
|
-
PREFETCH(GET_PC());
|
785
|
-
POPN(1);
|
786
|
-
#define CURRENT_INSN_expandarray 1
|
787
|
-
#define INSN_IS_SC() 0
|
788
|
-
#define INSN_LABEL(lab) LABEL_expandarray_##lab
|
789
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
790
|
-
COLLECT_USAGE_INSN(BIN(expandarray));
|
791
|
-
COLLECT_USAGE_OPERAND(BIN(expandarray), 0, num);
|
792
|
-
COLLECT_USAGE_OPERAND(BIN(expandarray), 1, flag);
|
793
|
-
{
|
794
|
-
#line 516 "insns.def"
|
795
|
-
vm_expandarray(GET_CFP(), ary, num, (int)flag);
|
796
|
-
|
797
|
-
#line 798 "vm.inc"
|
798
|
-
#undef CURRENT_INSN_expandarray
|
799
|
-
#undef INSN_IS_SC
|
800
|
-
#undef INSN_LABEL
|
801
|
-
#undef LABEL_IS_SC
|
802
|
-
END_INSN(expandarray);}}}
|
803
|
-
INSN_ENTRY(concatarray){START_OF_ORIGINAL_INSN(concatarray);
|
804
|
-
{
|
805
|
-
VALUE ary;
|
806
|
-
|
807
|
-
VALUE ary1 = TOPN(1);
|
808
|
-
VALUE ary2 = TOPN(0);
|
809
|
-
DEBUG_ENTER_INSN("concatarray");
|
810
|
-
ADD_PC(1+0);
|
811
|
-
PREFETCH(GET_PC());
|
812
|
-
POPN(2);
|
813
|
-
#define CURRENT_INSN_concatarray 1
|
814
|
-
#define INSN_IS_SC() 0
|
815
|
-
#define INSN_LABEL(lab) LABEL_concatarray_##lab
|
816
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
817
|
-
COLLECT_USAGE_INSN(BIN(concatarray));
|
818
|
-
{
|
819
|
-
#line 530 "insns.def"
|
820
|
-
ary = vm_concat_array(ary1, ary2);
|
821
|
-
|
822
|
-
#line 823 "vm.inc"
|
823
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
824
|
-
PUSH(ary);
|
825
|
-
#undef CURRENT_INSN_concatarray
|
826
|
-
#undef INSN_IS_SC
|
827
|
-
#undef INSN_LABEL
|
828
|
-
#undef LABEL_IS_SC
|
829
|
-
END_INSN(concatarray);}}}
|
830
|
-
INSN_ENTRY(splatarray){START_OF_ORIGINAL_INSN(splatarray);
|
831
|
-
{
|
832
|
-
VALUE obj;
|
833
|
-
VALUE flag = (VALUE)GET_OPERAND(1);
|
834
|
-
VALUE ary = TOPN(0);
|
835
|
-
DEBUG_ENTER_INSN("splatarray");
|
836
|
-
ADD_PC(1+1);
|
837
|
-
PREFETCH(GET_PC());
|
838
|
-
POPN(1);
|
839
|
-
#define CURRENT_INSN_splatarray 1
|
840
|
-
#define INSN_IS_SC() 0
|
841
|
-
#define INSN_LABEL(lab) LABEL_splatarray_##lab
|
842
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
843
|
-
COLLECT_USAGE_INSN(BIN(splatarray));
|
844
|
-
COLLECT_USAGE_OPERAND(BIN(splatarray), 0, flag);
|
845
|
-
{
|
846
|
-
#line 544 "insns.def"
|
847
|
-
obj = vm_splat_array(flag, ary);
|
848
|
-
|
849
|
-
#line 850 "vm.inc"
|
850
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
851
|
-
PUSH(obj);
|
852
|
-
#undef CURRENT_INSN_splatarray
|
853
|
-
#undef INSN_IS_SC
|
854
|
-
#undef INSN_LABEL
|
855
|
-
#undef LABEL_IS_SC
|
856
|
-
END_INSN(splatarray);}}}
|
857
|
-
INSN_ENTRY(newhash){START_OF_ORIGINAL_INSN(newhash);
|
858
|
-
{
|
859
|
-
VALUE val;
|
860
|
-
rb_num_t num = (rb_num_t)GET_OPERAND(1);
|
861
|
-
|
862
|
-
DEBUG_ENTER_INSN("newhash");
|
863
|
-
ADD_PC(1+1);
|
864
|
-
PREFETCH(GET_PC());
|
865
|
-
#define CURRENT_INSN_newhash 1
|
866
|
-
#define INSN_IS_SC() 0
|
867
|
-
#define INSN_LABEL(lab) LABEL_newhash_##lab
|
868
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
869
|
-
COLLECT_USAGE_INSN(BIN(newhash));
|
870
|
-
COLLECT_USAGE_OPERAND(BIN(newhash), 0, num);
|
871
|
-
{
|
872
|
-
#line 559 "insns.def"
|
873
|
-
RUBY_DTRACE_CREATE_HOOK(HASH, num);
|
874
|
-
|
875
|
-
val = rb_hash_new_with_size(num / 2);
|
876
|
-
|
877
|
-
if (num) {
|
878
|
-
rb_hash_bulk_insert(num, STACK_ADDR_FROM_TOP(num), val);
|
879
|
-
}
|
880
|
-
POPN(num);
|
881
|
-
|
882
|
-
#line 883 "vm.inc"
|
883
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
884
|
-
PUSH(val);
|
885
|
-
#undef CURRENT_INSN_newhash
|
886
|
-
#undef INSN_IS_SC
|
887
|
-
#undef INSN_LABEL
|
888
|
-
#undef LABEL_IS_SC
|
889
|
-
END_INSN(newhash);}}}
|
890
|
-
INSN_ENTRY(newrange){START_OF_ORIGINAL_INSN(newrange);
|
891
|
-
{
|
892
|
-
VALUE val;
|
893
|
-
rb_num_t flag = (rb_num_t)GET_OPERAND(1);
|
894
|
-
VALUE low = TOPN(1);
|
895
|
-
VALUE high = TOPN(0);
|
896
|
-
DEBUG_ENTER_INSN("newrange");
|
897
|
-
ADD_PC(1+1);
|
898
|
-
PREFETCH(GET_PC());
|
899
|
-
POPN(2);
|
900
|
-
#define CURRENT_INSN_newrange 1
|
901
|
-
#define INSN_IS_SC() 0
|
902
|
-
#define INSN_LABEL(lab) LABEL_newrange_##lab
|
903
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
904
|
-
COLLECT_USAGE_INSN(BIN(newrange));
|
905
|
-
COLLECT_USAGE_OPERAND(BIN(newrange), 0, flag);
|
906
|
-
{
|
907
|
-
#line 580 "insns.def"
|
908
|
-
val = rb_range_new(low, high, (int)flag);
|
909
|
-
|
910
|
-
#line 911 "vm.inc"
|
911
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
912
|
-
PUSH(val);
|
913
|
-
#undef CURRENT_INSN_newrange
|
914
|
-
#undef INSN_IS_SC
|
915
|
-
#undef INSN_LABEL
|
916
|
-
#undef LABEL_IS_SC
|
917
|
-
END_INSN(newrange);}}}
|
918
|
-
INSN_ENTRY(pop){START_OF_ORIGINAL_INSN(pop);
|
919
|
-
{
|
920
|
-
|
921
|
-
VALUE val = TOPN(0);
|
922
|
-
DEBUG_ENTER_INSN("pop");
|
923
|
-
ADD_PC(1+0);
|
924
|
-
PREFETCH(GET_PC());
|
925
|
-
POPN(1);
|
926
|
-
#define CURRENT_INSN_pop 1
|
927
|
-
#define INSN_IS_SC() 0
|
928
|
-
#define INSN_LABEL(lab) LABEL_pop_##lab
|
929
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
930
|
-
COLLECT_USAGE_INSN(BIN(pop));
|
931
|
-
{
|
932
|
-
#line 598 "insns.def"
|
933
|
-
(void)val;
|
934
|
-
/* none */
|
935
|
-
|
936
|
-
#line 937 "vm.inc"
|
937
|
-
#undef CURRENT_INSN_pop
|
938
|
-
#undef INSN_IS_SC
|
939
|
-
#undef INSN_LABEL
|
940
|
-
#undef LABEL_IS_SC
|
941
|
-
END_INSN(pop);}}}
|
942
|
-
INSN_ENTRY(dup){START_OF_ORIGINAL_INSN(dup);
|
943
|
-
{
|
944
|
-
VALUE val2;
|
945
|
-
VALUE val1;
|
946
|
-
|
947
|
-
VALUE val = TOPN(0);
|
948
|
-
DEBUG_ENTER_INSN("dup");
|
949
|
-
ADD_PC(1+0);
|
950
|
-
PREFETCH(GET_PC());
|
951
|
-
POPN(1);
|
952
|
-
#define CURRENT_INSN_dup 1
|
953
|
-
#define INSN_IS_SC() 0
|
954
|
-
#define INSN_LABEL(lab) LABEL_dup_##lab
|
955
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
956
|
-
COLLECT_USAGE_INSN(BIN(dup));
|
957
|
-
{
|
958
|
-
#line 613 "insns.def"
|
959
|
-
val1 = val2 = val;
|
960
|
-
|
961
|
-
#line 962 "vm.inc"
|
962
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 2);
|
963
|
-
PUSH(val1);
|
964
|
-
PUSH(val2);
|
965
|
-
#undef CURRENT_INSN_dup
|
966
|
-
#undef INSN_IS_SC
|
967
|
-
#undef INSN_LABEL
|
968
|
-
#undef LABEL_IS_SC
|
969
|
-
END_INSN(dup);}}}
|
970
|
-
INSN_ENTRY(dupn){START_OF_ORIGINAL_INSN(dupn);
|
971
|
-
{
|
972
|
-
rb_num_t n = (rb_num_t)GET_OPERAND(1);
|
973
|
-
|
974
|
-
DEBUG_ENTER_INSN("dupn");
|
975
|
-
ADD_PC(1+1);
|
976
|
-
PREFETCH(GET_PC());
|
977
|
-
#define CURRENT_INSN_dupn 1
|
978
|
-
#define INSN_IS_SC() 0
|
979
|
-
#define INSN_LABEL(lab) LABEL_dupn_##lab
|
980
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
981
|
-
COLLECT_USAGE_INSN(BIN(dupn));
|
982
|
-
COLLECT_USAGE_OPERAND(BIN(dupn), 0, n);
|
983
|
-
{
|
984
|
-
#line 627 "insns.def"
|
985
|
-
void *dst = GET_SP();
|
986
|
-
void *src = STACK_ADDR_FROM_TOP(n);
|
987
|
-
|
988
|
-
INC_SP(n); /* alloca */
|
989
|
-
MEMCPY(dst, src, VALUE, n);
|
990
|
-
|
991
|
-
#line 992 "vm.inc"
|
992
|
-
#undef CURRENT_INSN_dupn
|
993
|
-
#undef INSN_IS_SC
|
994
|
-
#undef INSN_LABEL
|
995
|
-
#undef LABEL_IS_SC
|
996
|
-
END_INSN(dupn);}}}
|
997
|
-
INSN_ENTRY(swap){START_OF_ORIGINAL_INSN(swap);
|
998
|
-
{
|
999
|
-
|
1000
|
-
VALUE val = TOPN(1);
|
1001
|
-
VALUE obj = TOPN(0);
|
1002
|
-
DEBUG_ENTER_INSN("swap");
|
1003
|
-
ADD_PC(1+0);
|
1004
|
-
PREFETCH(GET_PC());
|
1005
|
-
POPN(2);
|
1006
|
-
#define CURRENT_INSN_swap 1
|
1007
|
-
#define INSN_IS_SC() 0
|
1008
|
-
#define INSN_LABEL(lab) LABEL_swap_##lab
|
1009
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1010
|
-
COLLECT_USAGE_INSN(BIN(swap));
|
1011
|
-
{
|
1012
|
-
#line 646 "insns.def"
|
1013
|
-
/* none */
|
1014
|
-
|
1015
|
-
#line 1016 "vm.inc"
|
1016
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 2);
|
1017
|
-
PUSH(obj);
|
1018
|
-
PUSH(val);
|
1019
|
-
#undef CURRENT_INSN_swap
|
1020
|
-
#undef INSN_IS_SC
|
1021
|
-
#undef INSN_LABEL
|
1022
|
-
#undef LABEL_IS_SC
|
1023
|
-
END_INSN(swap);}}}
|
1024
|
-
INSN_ENTRY(reverse){START_OF_ORIGINAL_INSN(reverse);
|
1025
|
-
{
|
1026
|
-
rb_num_t n = (rb_num_t)GET_OPERAND(1);
|
1027
|
-
|
1028
|
-
DEBUG_ENTER_INSN("reverse");
|
1029
|
-
ADD_PC(1+1);
|
1030
|
-
PREFETCH(GET_PC());
|
1031
|
-
#define CURRENT_INSN_reverse 1
|
1032
|
-
#define INSN_IS_SC() 0
|
1033
|
-
#define INSN_LABEL(lab) LABEL_reverse_##lab
|
1034
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1035
|
-
COLLECT_USAGE_INSN(BIN(reverse));
|
1036
|
-
COLLECT_USAGE_OPERAND(BIN(reverse), 0, n);
|
1037
|
-
{
|
1038
|
-
#line 660 "insns.def"
|
1039
|
-
rb_num_t i;
|
1040
|
-
VALUE *sp = STACK_ADDR_FROM_TOP(n);
|
1041
|
-
|
1042
|
-
for (i=0; i<n/2; i++) {
|
1043
|
-
VALUE v0 = sp[i];
|
1044
|
-
VALUE v1 = TOPN(i);
|
1045
|
-
sp[i] = v1;
|
1046
|
-
TOPN(i) = v0;
|
1047
|
-
}
|
1048
|
-
|
1049
|
-
#line 1050 "vm.inc"
|
1050
|
-
#undef CURRENT_INSN_reverse
|
1051
|
-
#undef INSN_IS_SC
|
1052
|
-
#undef INSN_LABEL
|
1053
|
-
#undef LABEL_IS_SC
|
1054
|
-
END_INSN(reverse);}}}
|
1055
|
-
INSN_ENTRY(reput){START_OF_ORIGINAL_INSN(reput);
|
1056
|
-
{
|
1057
|
-
|
1058
|
-
VALUE val = TOPN(0);
|
1059
|
-
DEBUG_ENTER_INSN("reput");
|
1060
|
-
ADD_PC(1+0);
|
1061
|
-
PREFETCH(GET_PC());
|
1062
|
-
POPN(1);
|
1063
|
-
#define CURRENT_INSN_reput 1
|
1064
|
-
#define INSN_IS_SC() 0
|
1065
|
-
#define INSN_LABEL(lab) LABEL_reput_##lab
|
1066
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1067
|
-
COLLECT_USAGE_INSN(BIN(reput));
|
1068
|
-
{
|
1069
|
-
#line 682 "insns.def"
|
1070
|
-
/* none */
|
1071
|
-
|
1072
|
-
#line 1073 "vm.inc"
|
1073
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1074
|
-
PUSH(val);
|
1075
|
-
#undef CURRENT_INSN_reput
|
1076
|
-
#undef INSN_IS_SC
|
1077
|
-
#undef INSN_LABEL
|
1078
|
-
#undef LABEL_IS_SC
|
1079
|
-
END_INSN(reput);}}}
|
1080
|
-
INSN_ENTRY(topn){START_OF_ORIGINAL_INSN(topn);
|
1081
|
-
{
|
1082
|
-
VALUE val;
|
1083
|
-
rb_num_t n = (rb_num_t)GET_OPERAND(1);
|
1084
|
-
|
1085
|
-
DEBUG_ENTER_INSN("topn");
|
1086
|
-
ADD_PC(1+1);
|
1087
|
-
PREFETCH(GET_PC());
|
1088
|
-
#define CURRENT_INSN_topn 1
|
1089
|
-
#define INSN_IS_SC() 0
|
1090
|
-
#define INSN_LABEL(lab) LABEL_topn_##lab
|
1091
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1092
|
-
COLLECT_USAGE_INSN(BIN(topn));
|
1093
|
-
COLLECT_USAGE_OPERAND(BIN(topn), 0, n);
|
1094
|
-
{
|
1095
|
-
#line 696 "insns.def"
|
1096
|
-
val = TOPN(n);
|
1097
|
-
|
1098
|
-
#line 1099 "vm.inc"
|
1099
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1100
|
-
PUSH(val);
|
1101
|
-
#undef CURRENT_INSN_topn
|
1102
|
-
#undef INSN_IS_SC
|
1103
|
-
#undef INSN_LABEL
|
1104
|
-
#undef LABEL_IS_SC
|
1105
|
-
END_INSN(topn);}}}
|
1106
|
-
INSN_ENTRY(setn){START_OF_ORIGINAL_INSN(setn);
|
1107
|
-
{
|
1108
|
-
rb_num_t n = (rb_num_t)GET_OPERAND(1);
|
1109
|
-
VALUE val = TOPN(0);
|
1110
|
-
DEBUG_ENTER_INSN("setn");
|
1111
|
-
ADD_PC(1+1);
|
1112
|
-
PREFETCH(GET_PC());
|
1113
|
-
POPN(1);
|
1114
|
-
#define CURRENT_INSN_setn 1
|
1115
|
-
#define INSN_IS_SC() 0
|
1116
|
-
#define INSN_LABEL(lab) LABEL_setn_##lab
|
1117
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1118
|
-
COLLECT_USAGE_INSN(BIN(setn));
|
1119
|
-
COLLECT_USAGE_OPERAND(BIN(setn), 0, n);
|
1120
|
-
{
|
1121
|
-
#line 710 "insns.def"
|
1122
|
-
TOPN(n-1) = val;
|
1123
|
-
|
1124
|
-
#line 1125 "vm.inc"
|
1125
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1126
|
-
PUSH(val);
|
1127
|
-
#undef CURRENT_INSN_setn
|
1128
|
-
#undef INSN_IS_SC
|
1129
|
-
#undef INSN_LABEL
|
1130
|
-
#undef LABEL_IS_SC
|
1131
|
-
END_INSN(setn);}}}
|
1132
|
-
INSN_ENTRY(adjuststack){START_OF_ORIGINAL_INSN(adjuststack);
|
1133
|
-
{
|
1134
|
-
rb_num_t n = (rb_num_t)GET_OPERAND(1);
|
1135
|
-
|
1136
|
-
DEBUG_ENTER_INSN("adjuststack");
|
1137
|
-
ADD_PC(1+1);
|
1138
|
-
PREFETCH(GET_PC());
|
1139
|
-
#define CURRENT_INSN_adjuststack 1
|
1140
|
-
#define INSN_IS_SC() 0
|
1141
|
-
#define INSN_LABEL(lab) LABEL_adjuststack_##lab
|
1142
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1143
|
-
COLLECT_USAGE_INSN(BIN(adjuststack));
|
1144
|
-
COLLECT_USAGE_OPERAND(BIN(adjuststack), 0, n);
|
1145
|
-
{
|
1146
|
-
#line 724 "insns.def"
|
1147
|
-
DEC_SP(n);
|
1148
|
-
|
1149
|
-
#line 1150 "vm.inc"
|
1150
|
-
#undef CURRENT_INSN_adjuststack
|
1151
|
-
#undef INSN_IS_SC
|
1152
|
-
#undef INSN_LABEL
|
1153
|
-
#undef LABEL_IS_SC
|
1154
|
-
END_INSN(adjuststack);}}}
|
1155
|
-
INSN_ENTRY(defined){START_OF_ORIGINAL_INSN(defined);
|
1156
|
-
{
|
1157
|
-
VALUE val;
|
1158
|
-
VALUE needstr = (VALUE)GET_OPERAND(3);
|
1159
|
-
VALUE obj = (VALUE)GET_OPERAND(2);
|
1160
|
-
rb_num_t op_type = (rb_num_t)GET_OPERAND(1);
|
1161
|
-
VALUE v = TOPN(0);
|
1162
|
-
DEBUG_ENTER_INSN("defined");
|
1163
|
-
ADD_PC(1+3);
|
1164
|
-
PREFETCH(GET_PC());
|
1165
|
-
POPN(1);
|
1166
|
-
#define CURRENT_INSN_defined 1
|
1167
|
-
#define INSN_IS_SC() 0
|
1168
|
-
#define INSN_LABEL(lab) LABEL_defined_##lab
|
1169
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1170
|
-
COLLECT_USAGE_INSN(BIN(defined));
|
1171
|
-
COLLECT_USAGE_OPERAND(BIN(defined), 0, op_type);
|
1172
|
-
COLLECT_USAGE_OPERAND(BIN(defined), 1, obj);
|
1173
|
-
COLLECT_USAGE_OPERAND(BIN(defined), 2, needstr);
|
1174
|
-
{
|
1175
|
-
#line 743 "insns.def"
|
1176
|
-
val = vm_defined(ec, GET_CFP(), op_type, obj, needstr, v);
|
1177
|
-
|
1178
|
-
#line 1179 "vm.inc"
|
1179
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1180
|
-
PUSH(val);
|
1181
|
-
#undef CURRENT_INSN_defined
|
1182
|
-
#undef INSN_IS_SC
|
1183
|
-
#undef INSN_LABEL
|
1184
|
-
#undef LABEL_IS_SC
|
1185
|
-
END_INSN(defined);}}}
|
1186
|
-
INSN_ENTRY(checkmatch){START_OF_ORIGINAL_INSN(checkmatch);
|
1187
|
-
{
|
1188
|
-
VALUE result;
|
1189
|
-
rb_num_t flag = (rb_num_t)GET_OPERAND(1);
|
1190
|
-
VALUE target = TOPN(1);
|
1191
|
-
VALUE pattern = TOPN(0);
|
1192
|
-
DEBUG_ENTER_INSN("checkmatch");
|
1193
|
-
ADD_PC(1+1);
|
1194
|
-
PREFETCH(GET_PC());
|
1195
|
-
POPN(2);
|
1196
|
-
#define CURRENT_INSN_checkmatch 1
|
1197
|
-
#define INSN_IS_SC() 0
|
1198
|
-
#define INSN_LABEL(lab) LABEL_checkmatch_##lab
|
1199
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1200
|
-
COLLECT_USAGE_INSN(BIN(checkmatch));
|
1201
|
-
COLLECT_USAGE_OPERAND(BIN(checkmatch), 0, flag);
|
1202
|
-
{
|
1203
|
-
#line 762 "insns.def"
|
1204
|
-
result = vm_check_match(ec, target, pattern, flag);
|
1205
|
-
|
1206
|
-
#line 1207 "vm.inc"
|
1207
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1208
|
-
PUSH(result);
|
1209
|
-
#undef CURRENT_INSN_checkmatch
|
1210
|
-
#undef INSN_IS_SC
|
1211
|
-
#undef INSN_LABEL
|
1212
|
-
#undef LABEL_IS_SC
|
1213
|
-
END_INSN(checkmatch);}}}
|
1214
|
-
INSN_ENTRY(checkkeyword){START_OF_ORIGINAL_INSN(checkkeyword);
|
1215
|
-
{
|
1216
|
-
VALUE ret;
|
1217
|
-
lindex_t keyword_index = (lindex_t)GET_OPERAND(2);
|
1218
|
-
lindex_t kw_bits_index = (lindex_t)GET_OPERAND(1);
|
1219
|
-
|
1220
|
-
DEBUG_ENTER_INSN("checkkeyword");
|
1221
|
-
ADD_PC(1+2);
|
1222
|
-
PREFETCH(GET_PC());
|
1223
|
-
#define CURRENT_INSN_checkkeyword 1
|
1224
|
-
#define INSN_IS_SC() 0
|
1225
|
-
#define INSN_LABEL(lab) LABEL_checkkeyword_##lab
|
1226
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1227
|
-
COLLECT_USAGE_INSN(BIN(checkkeyword));
|
1228
|
-
COLLECT_USAGE_OPERAND(BIN(checkkeyword), 0, kw_bits_index);
|
1229
|
-
COLLECT_USAGE_OPERAND(BIN(checkkeyword), 1, keyword_index);
|
1230
|
-
{
|
1231
|
-
#line 776 "insns.def"
|
1232
|
-
ret = vm_check_keyword(kw_bits_index, keyword_index, GET_EP());
|
1233
|
-
|
1234
|
-
#line 1235 "vm.inc"
|
1235
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1236
|
-
PUSH(ret);
|
1237
|
-
#undef CURRENT_INSN_checkkeyword
|
1238
|
-
#undef INSN_IS_SC
|
1239
|
-
#undef INSN_LABEL
|
1240
|
-
#undef LABEL_IS_SC
|
1241
|
-
END_INSN(checkkeyword);}}}
|
1242
|
-
INSN_ENTRY(tracecoverage){START_OF_ORIGINAL_INSN(tracecoverage);
|
1243
|
-
{
|
1244
|
-
VALUE data = (VALUE)GET_OPERAND(2);
|
1245
|
-
rb_num_t nf = (rb_num_t)GET_OPERAND(1);
|
1246
|
-
|
1247
|
-
DEBUG_ENTER_INSN("tracecoverage");
|
1248
|
-
ADD_PC(1+2);
|
1249
|
-
PREFETCH(GET_PC());
|
1250
|
-
#define CURRENT_INSN_tracecoverage 1
|
1251
|
-
#define INSN_IS_SC() 0
|
1252
|
-
#define INSN_LABEL(lab) LABEL_tracecoverage_##lab
|
1253
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1254
|
-
COLLECT_USAGE_INSN(BIN(tracecoverage));
|
1255
|
-
COLLECT_USAGE_OPERAND(BIN(tracecoverage), 0, nf);
|
1256
|
-
COLLECT_USAGE_OPERAND(BIN(tracecoverage), 1, data);
|
1257
|
-
{
|
1258
|
-
#line 790 "insns.def"
|
1259
|
-
rb_event_flag_t flag = (rb_event_flag_t)nf;
|
1260
|
-
|
1261
|
-
vm_dtrace(flag, ec);
|
1262
|
-
EXEC_EVENT_HOOK(ec, flag, GET_SELF(), 0, 0, 0 /* id and klass are resolved at callee */, data);
|
1263
|
-
|
1264
|
-
#line 1265 "vm.inc"
|
1265
|
-
#undef CURRENT_INSN_tracecoverage
|
1266
|
-
#undef INSN_IS_SC
|
1267
|
-
#undef INSN_LABEL
|
1268
|
-
#undef LABEL_IS_SC
|
1269
|
-
END_INSN(tracecoverage);}}}
|
1270
|
-
INSN_ENTRY(defineclass){START_OF_ORIGINAL_INSN(defineclass);
|
1271
|
-
{
|
1272
|
-
VALUE val;
|
1273
|
-
rb_num_t flags = (rb_num_t)GET_OPERAND(3);
|
1274
|
-
ISEQ class_iseq = (ISEQ)GET_OPERAND(2);
|
1275
|
-
ID id = (ID)GET_OPERAND(1);
|
1276
|
-
VALUE cbase = TOPN(1);
|
1277
|
-
VALUE super = TOPN(0);
|
1278
|
-
DEBUG_ENTER_INSN("defineclass");
|
1279
|
-
ADD_PC(1+3);
|
1280
|
-
PREFETCH(GET_PC());
|
1281
|
-
POPN(2);
|
1282
|
-
#define CURRENT_INSN_defineclass 1
|
1283
|
-
#define INSN_IS_SC() 0
|
1284
|
-
#define INSN_LABEL(lab) LABEL_defineclass_##lab
|
1285
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1286
|
-
COLLECT_USAGE_INSN(BIN(defineclass));
|
1287
|
-
COLLECT_USAGE_OPERAND(BIN(defineclass), 0, id);
|
1288
|
-
COLLECT_USAGE_OPERAND(BIN(defineclass), 1, class_iseq);
|
1289
|
-
COLLECT_USAGE_OPERAND(BIN(defineclass), 2, flags);
|
1290
|
-
{
|
1291
|
-
#line 815 "insns.def"
|
1292
|
-
VALUE klass = vm_find_or_create_class_by_id(id, flags, cbase, super);
|
1293
|
-
|
1294
|
-
rb_iseq_check(class_iseq);
|
1295
|
-
|
1296
|
-
/* enter scope */
|
1297
|
-
vm_push_frame(ec, class_iseq, VM_FRAME_MAGIC_CLASS | VM_ENV_FLAG_LOCAL, klass,
|
1298
|
-
GET_BLOCK_HANDLER(),
|
1299
|
-
(VALUE)vm_cref_push(ec, klass, NULL, FALSE),
|
1300
|
-
class_iseq->body->iseq_encoded, GET_SP(),
|
1301
|
-
class_iseq->body->local_table_size,
|
1302
|
-
class_iseq->body->stack_max);
|
1303
|
-
RESTORE_REGS();
|
1304
|
-
NEXT_INSN();
|
1305
|
-
|
1306
|
-
#line 1307 "vm.inc"
|
1307
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1308
|
-
PUSH(val);
|
1309
|
-
#undef CURRENT_INSN_defineclass
|
1310
|
-
#undef INSN_IS_SC
|
1311
|
-
#undef INSN_LABEL
|
1312
|
-
#undef LABEL_IS_SC
|
1313
|
-
END_INSN(defineclass);}}}
|
1314
|
-
INSN_ENTRY(send){START_OF_ORIGINAL_INSN(send);
|
1315
|
-
{
|
1316
|
-
VALUE val;
|
1317
|
-
ISEQ blockiseq = (ISEQ)GET_OPERAND(3);
|
1318
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
1319
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
1320
|
-
|
1321
|
-
DEBUG_ENTER_INSN("send");
|
1322
|
-
ADD_PC(1+3);
|
1323
|
-
PREFETCH(GET_PC());
|
1324
|
-
#define CURRENT_INSN_send 1
|
1325
|
-
#define INSN_IS_SC() 0
|
1326
|
-
#define INSN_LABEL(lab) LABEL_send_##lab
|
1327
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1328
|
-
COLLECT_USAGE_INSN(BIN(send));
|
1329
|
-
COLLECT_USAGE_OPERAND(BIN(send), 0, ci);
|
1330
|
-
COLLECT_USAGE_OPERAND(BIN(send), 1, cc);
|
1331
|
-
COLLECT_USAGE_OPERAND(BIN(send), 2, blockiseq);
|
1332
|
-
{
|
1333
|
-
#line 846 "insns.def"
|
1334
|
-
struct rb_calling_info calling;
|
1335
|
-
|
1336
|
-
vm_caller_setup_arg_block(ec, reg_cfp, &calling, ci, blockiseq, FALSE);
|
1337
|
-
vm_search_method(ci, cc, calling.recv = TOPN(calling.argc = ci->orig_argc));
|
1338
|
-
CALL_METHOD(&calling, ci, cc);
|
1339
|
-
|
1340
|
-
#line 1341 "vm.inc"
|
1341
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1342
|
-
PUSH(val);
|
1343
|
-
#undef CURRENT_INSN_send
|
1344
|
-
#undef INSN_IS_SC
|
1345
|
-
#undef INSN_LABEL
|
1346
|
-
#undef LABEL_IS_SC
|
1347
|
-
END_INSN(send);}}}
|
1348
|
-
INSN_ENTRY(opt_str_freeze){START_OF_ORIGINAL_INSN(opt_str_freeze);
|
1349
|
-
{
|
1350
|
-
VALUE val;
|
1351
|
-
VALUE str = (VALUE)GET_OPERAND(1);
|
1352
|
-
|
1353
|
-
DEBUG_ENTER_INSN("opt_str_freeze");
|
1354
|
-
ADD_PC(1+1);
|
1355
|
-
PREFETCH(GET_PC());
|
1356
|
-
#define CURRENT_INSN_opt_str_freeze 1
|
1357
|
-
#define INSN_IS_SC() 0
|
1358
|
-
#define INSN_LABEL(lab) LABEL_opt_str_freeze_##lab
|
1359
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1360
|
-
COLLECT_USAGE_INSN(BIN(opt_str_freeze));
|
1361
|
-
COLLECT_USAGE_OPERAND(BIN(opt_str_freeze), 0, str);
|
1362
|
-
{
|
1363
|
-
#line 859 "insns.def"
|
1364
|
-
if (BASIC_OP_UNREDEFINED_P(BOP_FREEZE, STRING_REDEFINED_OP_FLAG)) {
|
1365
|
-
val = str;
|
1366
|
-
}
|
1367
|
-
else {
|
1368
|
-
val = rb_funcall(rb_str_resurrect(str), idFreeze, 0);
|
1369
|
-
}
|
1370
|
-
|
1371
|
-
#line 1372 "vm.inc"
|
1372
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1373
|
-
PUSH(val);
|
1374
|
-
#undef CURRENT_INSN_opt_str_freeze
|
1375
|
-
#undef INSN_IS_SC
|
1376
|
-
#undef INSN_LABEL
|
1377
|
-
#undef LABEL_IS_SC
|
1378
|
-
END_INSN(opt_str_freeze);}}}
|
1379
|
-
INSN_ENTRY(opt_str_uminus){START_OF_ORIGINAL_INSN(opt_str_uminus);
|
1380
|
-
{
|
1381
|
-
VALUE val;
|
1382
|
-
VALUE str = (VALUE)GET_OPERAND(1);
|
1383
|
-
|
1384
|
-
DEBUG_ENTER_INSN("opt_str_uminus");
|
1385
|
-
ADD_PC(1+1);
|
1386
|
-
PREFETCH(GET_PC());
|
1387
|
-
#define CURRENT_INSN_opt_str_uminus 1
|
1388
|
-
#define INSN_IS_SC() 0
|
1389
|
-
#define INSN_LABEL(lab) LABEL_opt_str_uminus_##lab
|
1390
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1391
|
-
COLLECT_USAGE_INSN(BIN(opt_str_uminus));
|
1392
|
-
COLLECT_USAGE_OPERAND(BIN(opt_str_uminus), 0, str);
|
1393
|
-
{
|
1394
|
-
#line 873 "insns.def"
|
1395
|
-
if (BASIC_OP_UNREDEFINED_P(BOP_UMINUS, STRING_REDEFINED_OP_FLAG)) {
|
1396
|
-
val = str;
|
1397
|
-
}
|
1398
|
-
else {
|
1399
|
-
val = rb_funcall(rb_str_resurrect(str), idUMinus, 0);
|
1400
|
-
}
|
1401
|
-
|
1402
|
-
#line 1403 "vm.inc"
|
1403
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1404
|
-
PUSH(val);
|
1405
|
-
#undef CURRENT_INSN_opt_str_uminus
|
1406
|
-
#undef INSN_IS_SC
|
1407
|
-
#undef INSN_LABEL
|
1408
|
-
#undef LABEL_IS_SC
|
1409
|
-
END_INSN(opt_str_uminus);}}}
|
1410
|
-
INSN_ENTRY(opt_newarray_max){START_OF_ORIGINAL_INSN(opt_newarray_max);
|
1411
|
-
{
|
1412
|
-
VALUE val;
|
1413
|
-
rb_num_t num = (rb_num_t)GET_OPERAND(1);
|
1414
|
-
|
1415
|
-
DEBUG_ENTER_INSN("opt_newarray_max");
|
1416
|
-
ADD_PC(1+1);
|
1417
|
-
PREFETCH(GET_PC());
|
1418
|
-
#define CURRENT_INSN_opt_newarray_max 1
|
1419
|
-
#define INSN_IS_SC() 0
|
1420
|
-
#define INSN_LABEL(lab) LABEL_opt_newarray_max_##lab
|
1421
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1422
|
-
COLLECT_USAGE_INSN(BIN(opt_newarray_max));
|
1423
|
-
COLLECT_USAGE_OPERAND(BIN(opt_newarray_max), 0, num);
|
1424
|
-
{
|
1425
|
-
#line 887 "insns.def"
|
1426
|
-
val = vm_opt_newarray_max(num, STACK_ADDR_FROM_TOP(num));
|
1427
|
-
POPN(num);
|
1428
|
-
|
1429
|
-
#line 1430 "vm.inc"
|
1430
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1431
|
-
PUSH(val);
|
1432
|
-
#undef CURRENT_INSN_opt_newarray_max
|
1433
|
-
#undef INSN_IS_SC
|
1434
|
-
#undef INSN_LABEL
|
1435
|
-
#undef LABEL_IS_SC
|
1436
|
-
END_INSN(opt_newarray_max);}}}
|
1437
|
-
INSN_ENTRY(opt_newarray_min){START_OF_ORIGINAL_INSN(opt_newarray_min);
|
1438
|
-
{
|
1439
|
-
VALUE val;
|
1440
|
-
rb_num_t num = (rb_num_t)GET_OPERAND(1);
|
1441
|
-
|
1442
|
-
DEBUG_ENTER_INSN("opt_newarray_min");
|
1443
|
-
ADD_PC(1+1);
|
1444
|
-
PREFETCH(GET_PC());
|
1445
|
-
#define CURRENT_INSN_opt_newarray_min 1
|
1446
|
-
#define INSN_IS_SC() 0
|
1447
|
-
#define INSN_LABEL(lab) LABEL_opt_newarray_min_##lab
|
1448
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1449
|
-
COLLECT_USAGE_INSN(BIN(opt_newarray_min));
|
1450
|
-
COLLECT_USAGE_OPERAND(BIN(opt_newarray_min), 0, num);
|
1451
|
-
{
|
1452
|
-
#line 897 "insns.def"
|
1453
|
-
val = vm_opt_newarray_min(num, STACK_ADDR_FROM_TOP(num));
|
1454
|
-
POPN(num);
|
1455
|
-
|
1456
|
-
#line 1457 "vm.inc"
|
1457
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1458
|
-
PUSH(val);
|
1459
|
-
#undef CURRENT_INSN_opt_newarray_min
|
1460
|
-
#undef INSN_IS_SC
|
1461
|
-
#undef INSN_LABEL
|
1462
|
-
#undef LABEL_IS_SC
|
1463
|
-
END_INSN(opt_newarray_min);}}}
|
1464
|
-
INSN_ENTRY(opt_send_without_block){START_OF_ORIGINAL_INSN(opt_send_without_block);
|
1465
|
-
{
|
1466
|
-
VALUE val;
|
1467
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
1468
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
1469
|
-
|
1470
|
-
DEBUG_ENTER_INSN("opt_send_without_block");
|
1471
|
-
ADD_PC(1+2);
|
1472
|
-
PREFETCH(GET_PC());
|
1473
|
-
#define CURRENT_INSN_opt_send_without_block 1
|
1474
|
-
#define INSN_IS_SC() 0
|
1475
|
-
#define INSN_LABEL(lab) LABEL_opt_send_without_block_##lab
|
1476
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1477
|
-
COLLECT_USAGE_INSN(BIN(opt_send_without_block));
|
1478
|
-
COLLECT_USAGE_OPERAND(BIN(opt_send_without_block), 0, ci);
|
1479
|
-
COLLECT_USAGE_OPERAND(BIN(opt_send_without_block), 1, cc);
|
1480
|
-
{
|
1481
|
-
#line 912 "insns.def"
|
1482
|
-
struct rb_calling_info calling;
|
1483
|
-
calling.block_handler = VM_BLOCK_HANDLER_NONE;
|
1484
|
-
vm_search_method(ci, cc, calling.recv = TOPN(calling.argc = ci->orig_argc));
|
1485
|
-
CALL_METHOD(&calling, ci, cc);
|
1486
|
-
|
1487
|
-
#line 1488 "vm.inc"
|
1488
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1489
|
-
PUSH(val);
|
1490
|
-
#undef CURRENT_INSN_opt_send_without_block
|
1491
|
-
#undef INSN_IS_SC
|
1492
|
-
#undef INSN_LABEL
|
1493
|
-
#undef LABEL_IS_SC
|
1494
|
-
END_INSN(opt_send_without_block);}}}
|
1495
|
-
INSN_ENTRY(invokesuper){START_OF_ORIGINAL_INSN(invokesuper);
|
1496
|
-
{
|
1497
|
-
VALUE val;
|
1498
|
-
ISEQ blockiseq = (ISEQ)GET_OPERAND(3);
|
1499
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
1500
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
1501
|
-
|
1502
|
-
DEBUG_ENTER_INSN("invokesuper");
|
1503
|
-
ADD_PC(1+3);
|
1504
|
-
PREFETCH(GET_PC());
|
1505
|
-
#define CURRENT_INSN_invokesuper 1
|
1506
|
-
#define INSN_IS_SC() 0
|
1507
|
-
#define INSN_LABEL(lab) LABEL_invokesuper_##lab
|
1508
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1509
|
-
COLLECT_USAGE_INSN(BIN(invokesuper));
|
1510
|
-
COLLECT_USAGE_OPERAND(BIN(invokesuper), 0, ci);
|
1511
|
-
COLLECT_USAGE_OPERAND(BIN(invokesuper), 1, cc);
|
1512
|
-
COLLECT_USAGE_OPERAND(BIN(invokesuper), 2, blockiseq);
|
1513
|
-
{
|
1514
|
-
#line 929 "insns.def"
|
1515
|
-
struct rb_calling_info calling;
|
1516
|
-
calling.argc = ci->orig_argc;
|
1517
|
-
|
1518
|
-
vm_caller_setup_arg_block(ec, reg_cfp, &calling, ci, blockiseq, TRUE);
|
1519
|
-
calling.recv = GET_SELF();
|
1520
|
-
vm_search_super_method(ec, GET_CFP(), &calling, ci, cc);
|
1521
|
-
CALL_METHOD(&calling, ci, cc);
|
1522
|
-
|
1523
|
-
#line 1524 "vm.inc"
|
1524
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1525
|
-
PUSH(val);
|
1526
|
-
#undef CURRENT_INSN_invokesuper
|
1527
|
-
#undef INSN_IS_SC
|
1528
|
-
#undef INSN_LABEL
|
1529
|
-
#undef LABEL_IS_SC
|
1530
|
-
END_INSN(invokesuper);}}}
|
1531
|
-
INSN_ENTRY(invokeblock){START_OF_ORIGINAL_INSN(invokeblock);
|
1532
|
-
{
|
1533
|
-
VALUE val;
|
1534
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
1535
|
-
|
1536
|
-
DEBUG_ENTER_INSN("invokeblock");
|
1537
|
-
ADD_PC(1+1);
|
1538
|
-
PREFETCH(GET_PC());
|
1539
|
-
#define CURRENT_INSN_invokeblock 1
|
1540
|
-
#define INSN_IS_SC() 0
|
1541
|
-
#define INSN_LABEL(lab) LABEL_invokeblock_##lab
|
1542
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1543
|
-
COLLECT_USAGE_INSN(BIN(invokeblock));
|
1544
|
-
COLLECT_USAGE_OPERAND(BIN(invokeblock), 0, ci);
|
1545
|
-
{
|
1546
|
-
#line 949 "insns.def"
|
1547
|
-
struct rb_calling_info calling;
|
1548
|
-
calling.argc = ci->orig_argc;
|
1549
|
-
calling.block_handler = VM_BLOCK_HANDLER_NONE;
|
1550
|
-
calling.recv = GET_SELF();
|
1551
|
-
|
1552
|
-
val = vm_invoke_block(ec, GET_CFP(), &calling, ci);
|
1553
|
-
if (val == Qundef) {
|
1554
|
-
RESTORE_REGS();
|
1555
|
-
NEXT_INSN();
|
1556
|
-
}
|
1557
|
-
|
1558
|
-
#line 1559 "vm.inc"
|
1559
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1560
|
-
PUSH(val);
|
1561
|
-
#undef CURRENT_INSN_invokeblock
|
1562
|
-
#undef INSN_IS_SC
|
1563
|
-
#undef INSN_LABEL
|
1564
|
-
#undef LABEL_IS_SC
|
1565
|
-
END_INSN(invokeblock);}}}
|
1566
|
-
INSN_ENTRY(leave){START_OF_ORIGINAL_INSN(leave);
|
1567
|
-
{
|
1568
|
-
|
1569
|
-
VALUE val = TOPN(0);
|
1570
|
-
DEBUG_ENTER_INSN("leave");
|
1571
|
-
ADD_PC(1+0);
|
1572
|
-
PREFETCH(GET_PC());
|
1573
|
-
POPN(1);
|
1574
|
-
#define CURRENT_INSN_leave 1
|
1575
|
-
#define INSN_IS_SC() 0
|
1576
|
-
#define INSN_LABEL(lab) LABEL_leave_##lab
|
1577
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1578
|
-
COLLECT_USAGE_INSN(BIN(leave));
|
1579
|
-
{
|
1580
|
-
#line 972 "insns.def"
|
1581
|
-
if (OPT_CHECKED_RUN) {
|
1582
|
-
const VALUE *const bp = vm_base_ptr(reg_cfp);
|
1583
|
-
if (reg_cfp->sp != bp) {
|
1584
|
-
vm_stack_consistency_error(ec, reg_cfp, bp);
|
1585
|
-
}
|
1586
|
-
}
|
1587
|
-
|
1588
|
-
RUBY_VM_CHECK_INTS(ec);
|
1589
|
-
|
1590
|
-
if (vm_pop_frame(ec, GET_CFP(), GET_EP())) {
|
1591
|
-
#if OPT_CALL_THREADED_CODE
|
1592
|
-
rb_ec_thread_ptr(ec)->retval = val;
|
1593
|
-
return 0;
|
1594
|
-
#else
|
1595
|
-
return val;
|
1596
|
-
#endif
|
1597
|
-
}
|
1598
|
-
else {
|
1599
|
-
RESTORE_REGS();
|
1600
|
-
}
|
1601
|
-
|
1602
|
-
#line 1603 "vm.inc"
|
1603
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1604
|
-
PUSH(val);
|
1605
|
-
#undef CURRENT_INSN_leave
|
1606
|
-
#undef INSN_IS_SC
|
1607
|
-
#undef INSN_LABEL
|
1608
|
-
#undef LABEL_IS_SC
|
1609
|
-
END_INSN(leave);}}}
|
1610
|
-
INSN_ENTRY(throw){START_OF_ORIGINAL_INSN(throw);
|
1611
|
-
{
|
1612
|
-
VALUE val;
|
1613
|
-
rb_num_t throw_state = (rb_num_t)GET_OPERAND(1);
|
1614
|
-
VALUE throwobj = TOPN(0);
|
1615
|
-
DEBUG_ENTER_INSN("throw");
|
1616
|
-
ADD_PC(1+1);
|
1617
|
-
PREFETCH(GET_PC());
|
1618
|
-
POPN(1);
|
1619
|
-
#define CURRENT_INSN_throw 1
|
1620
|
-
#define INSN_IS_SC() 0
|
1621
|
-
#define INSN_LABEL(lab) LABEL_throw_##lab
|
1622
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1623
|
-
COLLECT_USAGE_INSN(BIN(throw));
|
1624
|
-
COLLECT_USAGE_OPERAND(BIN(throw), 0, throw_state);
|
1625
|
-
{
|
1626
|
-
#line 1009 "insns.def"
|
1627
|
-
RUBY_VM_CHECK_INTS(ec);
|
1628
|
-
val = vm_throw(ec, GET_CFP(), throw_state, throwobj);
|
1629
|
-
THROW_EXCEPTION(val);
|
1630
|
-
/* unreachable */
|
1631
|
-
|
1632
|
-
#line 1633 "vm.inc"
|
1633
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1634
|
-
PUSH(val);
|
1635
|
-
#undef CURRENT_INSN_throw
|
1636
|
-
#undef INSN_IS_SC
|
1637
|
-
#undef INSN_LABEL
|
1638
|
-
#undef LABEL_IS_SC
|
1639
|
-
END_INSN(throw);}}}
|
1640
|
-
INSN_ENTRY(jump){START_OF_ORIGINAL_INSN(jump);
|
1641
|
-
{
|
1642
|
-
OFFSET dst = (OFFSET)GET_OPERAND(1);
|
1643
|
-
|
1644
|
-
DEBUG_ENTER_INSN("jump");
|
1645
|
-
ADD_PC(1+1);
|
1646
|
-
PREFETCH(GET_PC());
|
1647
|
-
#define CURRENT_INSN_jump 1
|
1648
|
-
#define INSN_IS_SC() 0
|
1649
|
-
#define INSN_LABEL(lab) LABEL_jump_##lab
|
1650
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1651
|
-
COLLECT_USAGE_INSN(BIN(jump));
|
1652
|
-
COLLECT_USAGE_OPERAND(BIN(jump), 0, dst);
|
1653
|
-
{
|
1654
|
-
#line 1030 "insns.def"
|
1655
|
-
RUBY_VM_CHECK_INTS(ec);
|
1656
|
-
JUMP(dst);
|
1657
|
-
|
1658
|
-
#line 1659 "vm.inc"
|
1659
|
-
#undef CURRENT_INSN_jump
|
1660
|
-
#undef INSN_IS_SC
|
1661
|
-
#undef INSN_LABEL
|
1662
|
-
#undef LABEL_IS_SC
|
1663
|
-
END_INSN(jump);}}}
|
1664
|
-
INSN_ENTRY(branchif){START_OF_ORIGINAL_INSN(branchif);
|
1665
|
-
{
|
1666
|
-
OFFSET dst = (OFFSET)GET_OPERAND(1);
|
1667
|
-
VALUE val = TOPN(0);
|
1668
|
-
DEBUG_ENTER_INSN("branchif");
|
1669
|
-
ADD_PC(1+1);
|
1670
|
-
PREFETCH(GET_PC());
|
1671
|
-
POPN(1);
|
1672
|
-
#define CURRENT_INSN_branchif 1
|
1673
|
-
#define INSN_IS_SC() 0
|
1674
|
-
#define INSN_LABEL(lab) LABEL_branchif_##lab
|
1675
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1676
|
-
COLLECT_USAGE_INSN(BIN(branchif));
|
1677
|
-
COLLECT_USAGE_OPERAND(BIN(branchif), 0, dst);
|
1678
|
-
{
|
1679
|
-
#line 1045 "insns.def"
|
1680
|
-
if (RTEST(val)) {
|
1681
|
-
RUBY_VM_CHECK_INTS(ec);
|
1682
|
-
JUMP(dst);
|
1683
|
-
}
|
1684
|
-
|
1685
|
-
#line 1686 "vm.inc"
|
1686
|
-
#undef CURRENT_INSN_branchif
|
1687
|
-
#undef INSN_IS_SC
|
1688
|
-
#undef INSN_LABEL
|
1689
|
-
#undef LABEL_IS_SC
|
1690
|
-
END_INSN(branchif);}}}
|
1691
|
-
INSN_ENTRY(branchunless){START_OF_ORIGINAL_INSN(branchunless);
|
1692
|
-
{
|
1693
|
-
OFFSET dst = (OFFSET)GET_OPERAND(1);
|
1694
|
-
VALUE val = TOPN(0);
|
1695
|
-
DEBUG_ENTER_INSN("branchunless");
|
1696
|
-
ADD_PC(1+1);
|
1697
|
-
PREFETCH(GET_PC());
|
1698
|
-
POPN(1);
|
1699
|
-
#define CURRENT_INSN_branchunless 1
|
1700
|
-
#define INSN_IS_SC() 0
|
1701
|
-
#define INSN_LABEL(lab) LABEL_branchunless_##lab
|
1702
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1703
|
-
COLLECT_USAGE_INSN(BIN(branchunless));
|
1704
|
-
COLLECT_USAGE_OPERAND(BIN(branchunless), 0, dst);
|
1705
|
-
{
|
1706
|
-
#line 1062 "insns.def"
|
1707
|
-
if (!RTEST(val)) {
|
1708
|
-
RUBY_VM_CHECK_INTS(ec);
|
1709
|
-
JUMP(dst);
|
1710
|
-
}
|
1711
|
-
|
1712
|
-
#line 1713 "vm.inc"
|
1713
|
-
#undef CURRENT_INSN_branchunless
|
1714
|
-
#undef INSN_IS_SC
|
1715
|
-
#undef INSN_LABEL
|
1716
|
-
#undef LABEL_IS_SC
|
1717
|
-
END_INSN(branchunless);}}}
|
1718
|
-
INSN_ENTRY(branchnil){START_OF_ORIGINAL_INSN(branchnil);
|
1719
|
-
{
|
1720
|
-
OFFSET dst = (OFFSET)GET_OPERAND(1);
|
1721
|
-
VALUE val = TOPN(0);
|
1722
|
-
DEBUG_ENTER_INSN("branchnil");
|
1723
|
-
ADD_PC(1+1);
|
1724
|
-
PREFETCH(GET_PC());
|
1725
|
-
POPN(1);
|
1726
|
-
#define CURRENT_INSN_branchnil 1
|
1727
|
-
#define INSN_IS_SC() 0
|
1728
|
-
#define INSN_LABEL(lab) LABEL_branchnil_##lab
|
1729
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1730
|
-
COLLECT_USAGE_INSN(BIN(branchnil));
|
1731
|
-
COLLECT_USAGE_OPERAND(BIN(branchnil), 0, dst);
|
1732
|
-
{
|
1733
|
-
#line 1079 "insns.def"
|
1734
|
-
if (NIL_P(val)) {
|
1735
|
-
RUBY_VM_CHECK_INTS(ec);
|
1736
|
-
JUMP(dst);
|
1737
|
-
}
|
1738
|
-
|
1739
|
-
#line 1740 "vm.inc"
|
1740
|
-
#undef CURRENT_INSN_branchnil
|
1741
|
-
#undef INSN_IS_SC
|
1742
|
-
#undef INSN_LABEL
|
1743
|
-
#undef LABEL_IS_SC
|
1744
|
-
END_INSN(branchnil);}}}
|
1745
|
-
INSN_ENTRY(branchiftype){START_OF_ORIGINAL_INSN(branchiftype);
|
1746
|
-
{
|
1747
|
-
OFFSET dst = (OFFSET)GET_OPERAND(2);
|
1748
|
-
rb_num_t type = (rb_num_t)GET_OPERAND(1);
|
1749
|
-
VALUE val = TOPN(0);
|
1750
|
-
DEBUG_ENTER_INSN("branchiftype");
|
1751
|
-
ADD_PC(1+2);
|
1752
|
-
PREFETCH(GET_PC());
|
1753
|
-
POPN(1);
|
1754
|
-
#define CURRENT_INSN_branchiftype 1
|
1755
|
-
#define INSN_IS_SC() 0
|
1756
|
-
#define INSN_LABEL(lab) LABEL_branchiftype_##lab
|
1757
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1758
|
-
COLLECT_USAGE_INSN(BIN(branchiftype));
|
1759
|
-
COLLECT_USAGE_OPERAND(BIN(branchiftype), 0, type);
|
1760
|
-
COLLECT_USAGE_OPERAND(BIN(branchiftype), 1, dst);
|
1761
|
-
{
|
1762
|
-
#line 1096 "insns.def"
|
1763
|
-
if (TYPE(val) == (int)type) {
|
1764
|
-
RUBY_VM_CHECK_INTS(ec);
|
1765
|
-
JUMP(dst);
|
1766
|
-
}
|
1767
|
-
|
1768
|
-
#line 1769 "vm.inc"
|
1769
|
-
#undef CURRENT_INSN_branchiftype
|
1770
|
-
#undef INSN_IS_SC
|
1771
|
-
#undef INSN_LABEL
|
1772
|
-
#undef LABEL_IS_SC
|
1773
|
-
END_INSN(branchiftype);}}}
|
1774
|
-
INSN_ENTRY(getinlinecache){START_OF_ORIGINAL_INSN(getinlinecache);
|
1775
|
-
{
|
1776
|
-
VALUE val;
|
1777
|
-
IC ic = (IC)GET_OPERAND(2);
|
1778
|
-
OFFSET dst = (OFFSET)GET_OPERAND(1);
|
1779
|
-
|
1780
|
-
DEBUG_ENTER_INSN("getinlinecache");
|
1781
|
-
ADD_PC(1+2);
|
1782
|
-
PREFETCH(GET_PC());
|
1783
|
-
#define CURRENT_INSN_getinlinecache 1
|
1784
|
-
#define INSN_IS_SC() 0
|
1785
|
-
#define INSN_LABEL(lab) LABEL_getinlinecache_##lab
|
1786
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1787
|
-
COLLECT_USAGE_INSN(BIN(getinlinecache));
|
1788
|
-
COLLECT_USAGE_OPERAND(BIN(getinlinecache), 0, dst);
|
1789
|
-
COLLECT_USAGE_OPERAND(BIN(getinlinecache), 1, ic);
|
1790
|
-
{
|
1791
|
-
#line 1118 "insns.def"
|
1792
|
-
val = vm_ic_hit_p(ic, GET_EP());
|
1793
|
-
if (val != Qnil) {
|
1794
|
-
JUMP(dst);
|
1795
|
-
}
|
1796
|
-
|
1797
|
-
#line 1798 "vm.inc"
|
1798
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1799
|
-
PUSH(val);
|
1800
|
-
#undef CURRENT_INSN_getinlinecache
|
1801
|
-
#undef INSN_IS_SC
|
1802
|
-
#undef INSN_LABEL
|
1803
|
-
#undef LABEL_IS_SC
|
1804
|
-
END_INSN(getinlinecache);}}}
|
1805
|
-
INSN_ENTRY(setinlinecache){START_OF_ORIGINAL_INSN(setinlinecache);
|
1806
|
-
{
|
1807
|
-
IC ic = (IC)GET_OPERAND(1);
|
1808
|
-
VALUE val = TOPN(0);
|
1809
|
-
DEBUG_ENTER_INSN("setinlinecache");
|
1810
|
-
ADD_PC(1+1);
|
1811
|
-
PREFETCH(GET_PC());
|
1812
|
-
POPN(1);
|
1813
|
-
#define CURRENT_INSN_setinlinecache 1
|
1814
|
-
#define INSN_IS_SC() 0
|
1815
|
-
#define INSN_LABEL(lab) LABEL_setinlinecache_##lab
|
1816
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1817
|
-
COLLECT_USAGE_INSN(BIN(setinlinecache));
|
1818
|
-
COLLECT_USAGE_OPERAND(BIN(setinlinecache), 0, ic);
|
1819
|
-
{
|
1820
|
-
#line 1135 "insns.def"
|
1821
|
-
vm_ic_update(ic, val, GET_EP());
|
1822
|
-
|
1823
|
-
#line 1824 "vm.inc"
|
1824
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1825
|
-
PUSH(val);
|
1826
|
-
#undef CURRENT_INSN_setinlinecache
|
1827
|
-
#undef INSN_IS_SC
|
1828
|
-
#undef INSN_LABEL
|
1829
|
-
#undef LABEL_IS_SC
|
1830
|
-
END_INSN(setinlinecache);}}}
|
1831
|
-
INSN_ENTRY(once){START_OF_ORIGINAL_INSN(once);
|
1832
|
-
{
|
1833
|
-
VALUE val;
|
1834
|
-
IC ic = (IC)GET_OPERAND(2);
|
1835
|
-
ISEQ iseq = (ISEQ)GET_OPERAND(1);
|
1836
|
-
|
1837
|
-
DEBUG_ENTER_INSN("once");
|
1838
|
-
ADD_PC(1+2);
|
1839
|
-
PREFETCH(GET_PC());
|
1840
|
-
#define CURRENT_INSN_once 1
|
1841
|
-
#define INSN_IS_SC() 0
|
1842
|
-
#define INSN_LABEL(lab) LABEL_once_##lab
|
1843
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1844
|
-
COLLECT_USAGE_INSN(BIN(once));
|
1845
|
-
COLLECT_USAGE_OPERAND(BIN(once), 0, iseq);
|
1846
|
-
COLLECT_USAGE_OPERAND(BIN(once), 1, ic);
|
1847
|
-
{
|
1848
|
-
#line 1149 "insns.def"
|
1849
|
-
val = vm_once_dispatch(ec, iseq, ic);
|
1850
|
-
|
1851
|
-
#line 1852 "vm.inc"
|
1852
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1853
|
-
PUSH(val);
|
1854
|
-
#undef CURRENT_INSN_once
|
1855
|
-
#undef INSN_IS_SC
|
1856
|
-
#undef INSN_LABEL
|
1857
|
-
#undef LABEL_IS_SC
|
1858
|
-
END_INSN(once);}}}
|
1859
|
-
INSN_ENTRY(opt_case_dispatch){START_OF_ORIGINAL_INSN(opt_case_dispatch);
|
1860
|
-
{
|
1861
|
-
OFFSET else_offset = (OFFSET)GET_OPERAND(2);
|
1862
|
-
CDHASH hash = (CDHASH)GET_OPERAND(1);
|
1863
|
-
VALUE key = TOPN(0);
|
1864
|
-
DEBUG_ENTER_INSN("opt_case_dispatch");
|
1865
|
-
ADD_PC(1+2);
|
1866
|
-
PREFETCH(GET_PC());
|
1867
|
-
POPN(1);
|
1868
|
-
#define CURRENT_INSN_opt_case_dispatch 1
|
1869
|
-
#define INSN_IS_SC() 0
|
1870
|
-
#define INSN_LABEL(lab) LABEL_opt_case_dispatch_##lab
|
1871
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1872
|
-
COLLECT_USAGE_INSN(BIN(opt_case_dispatch));
|
1873
|
-
COLLECT_USAGE_OPERAND(BIN(opt_case_dispatch), 0, hash);
|
1874
|
-
COLLECT_USAGE_OPERAND(BIN(opt_case_dispatch), 1, else_offset);
|
1875
|
-
{
|
1876
|
-
#line 1163 "insns.def"
|
1877
|
-
OFFSET dst = vm_case_dispatch(hash, else_offset, key);
|
1878
|
-
|
1879
|
-
if (dst) {
|
1880
|
-
JUMP(dst);
|
1881
|
-
}
|
1882
|
-
|
1883
|
-
#line 1884 "vm.inc"
|
1884
|
-
#undef CURRENT_INSN_opt_case_dispatch
|
1885
|
-
#undef INSN_IS_SC
|
1886
|
-
#undef INSN_LABEL
|
1887
|
-
#undef LABEL_IS_SC
|
1888
|
-
END_INSN(opt_case_dispatch);}}}
|
1889
|
-
INSN_ENTRY(opt_plus){START_OF_ORIGINAL_INSN(opt_plus);
|
1890
|
-
{
|
1891
|
-
VALUE val;
|
1892
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
1893
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
1894
|
-
VALUE recv = TOPN(1);
|
1895
|
-
VALUE obj = TOPN(0);
|
1896
|
-
DEBUG_ENTER_INSN("opt_plus");
|
1897
|
-
ADD_PC(1+2);
|
1898
|
-
PREFETCH(GET_PC());
|
1899
|
-
POPN(2);
|
1900
|
-
#define CURRENT_INSN_opt_plus 1
|
1901
|
-
#define INSN_IS_SC() 0
|
1902
|
-
#define INSN_LABEL(lab) LABEL_opt_plus_##lab
|
1903
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1904
|
-
COLLECT_USAGE_INSN(BIN(opt_plus));
|
1905
|
-
COLLECT_USAGE_OPERAND(BIN(opt_plus), 0, ci);
|
1906
|
-
COLLECT_USAGE_OPERAND(BIN(opt_plus), 1, cc);
|
1907
|
-
{
|
1908
|
-
#line 1183 "insns.def"
|
1909
|
-
val = vm_opt_plus(recv, obj);
|
1910
|
-
|
1911
|
-
if (val == Qundef) {
|
1912
|
-
/* other */
|
1913
|
-
PUSH(recv);
|
1914
|
-
PUSH(obj);
|
1915
|
-
CALL_SIMPLE_METHOD(recv);
|
1916
|
-
}
|
1917
|
-
|
1918
|
-
#line 1919 "vm.inc"
|
1919
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1920
|
-
PUSH(val);
|
1921
|
-
#undef CURRENT_INSN_opt_plus
|
1922
|
-
#undef INSN_IS_SC
|
1923
|
-
#undef INSN_LABEL
|
1924
|
-
#undef LABEL_IS_SC
|
1925
|
-
END_INSN(opt_plus);}}}
|
1926
|
-
INSN_ENTRY(opt_minus){START_OF_ORIGINAL_INSN(opt_minus);
|
1927
|
-
{
|
1928
|
-
VALUE val;
|
1929
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
1930
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
1931
|
-
VALUE recv = TOPN(1);
|
1932
|
-
VALUE obj = TOPN(0);
|
1933
|
-
DEBUG_ENTER_INSN("opt_minus");
|
1934
|
-
ADD_PC(1+2);
|
1935
|
-
PREFETCH(GET_PC());
|
1936
|
-
POPN(2);
|
1937
|
-
#define CURRENT_INSN_opt_minus 1
|
1938
|
-
#define INSN_IS_SC() 0
|
1939
|
-
#define INSN_LABEL(lab) LABEL_opt_minus_##lab
|
1940
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1941
|
-
COLLECT_USAGE_INSN(BIN(opt_minus));
|
1942
|
-
COLLECT_USAGE_OPERAND(BIN(opt_minus), 0, ci);
|
1943
|
-
COLLECT_USAGE_OPERAND(BIN(opt_minus), 1, cc);
|
1944
|
-
{
|
1945
|
-
#line 1204 "insns.def"
|
1946
|
-
val = vm_opt_minus(recv, obj);
|
1947
|
-
|
1948
|
-
if (val == Qundef) {
|
1949
|
-
/* other */
|
1950
|
-
PUSH(recv);
|
1951
|
-
PUSH(obj);
|
1952
|
-
CALL_SIMPLE_METHOD(recv);
|
1953
|
-
}
|
1954
|
-
|
1955
|
-
#line 1956 "vm.inc"
|
1956
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1957
|
-
PUSH(val);
|
1958
|
-
#undef CURRENT_INSN_opt_minus
|
1959
|
-
#undef INSN_IS_SC
|
1960
|
-
#undef INSN_LABEL
|
1961
|
-
#undef LABEL_IS_SC
|
1962
|
-
END_INSN(opt_minus);}}}
|
1963
|
-
INSN_ENTRY(opt_mult){START_OF_ORIGINAL_INSN(opt_mult);
|
1964
|
-
{
|
1965
|
-
VALUE val;
|
1966
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
1967
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
1968
|
-
VALUE recv = TOPN(1);
|
1969
|
-
VALUE obj = TOPN(0);
|
1970
|
-
DEBUG_ENTER_INSN("opt_mult");
|
1971
|
-
ADD_PC(1+2);
|
1972
|
-
PREFETCH(GET_PC());
|
1973
|
-
POPN(2);
|
1974
|
-
#define CURRENT_INSN_opt_mult 1
|
1975
|
-
#define INSN_IS_SC() 0
|
1976
|
-
#define INSN_LABEL(lab) LABEL_opt_mult_##lab
|
1977
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
1978
|
-
COLLECT_USAGE_INSN(BIN(opt_mult));
|
1979
|
-
COLLECT_USAGE_OPERAND(BIN(opt_mult), 0, ci);
|
1980
|
-
COLLECT_USAGE_OPERAND(BIN(opt_mult), 1, cc);
|
1981
|
-
{
|
1982
|
-
#line 1225 "insns.def"
|
1983
|
-
val = vm_opt_mult(recv, obj);
|
1984
|
-
|
1985
|
-
if (val == Qundef) {
|
1986
|
-
/* other */
|
1987
|
-
PUSH(recv);
|
1988
|
-
PUSH(obj);
|
1989
|
-
CALL_SIMPLE_METHOD(recv);
|
1990
|
-
}
|
1991
|
-
|
1992
|
-
#line 1993 "vm.inc"
|
1993
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
1994
|
-
PUSH(val);
|
1995
|
-
#undef CURRENT_INSN_opt_mult
|
1996
|
-
#undef INSN_IS_SC
|
1997
|
-
#undef INSN_LABEL
|
1998
|
-
#undef LABEL_IS_SC
|
1999
|
-
END_INSN(opt_mult);}}}
|
2000
|
-
INSN_ENTRY(opt_div){START_OF_ORIGINAL_INSN(opt_div);
|
2001
|
-
{
|
2002
|
-
VALUE val;
|
2003
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2004
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2005
|
-
VALUE recv = TOPN(1);
|
2006
|
-
VALUE obj = TOPN(0);
|
2007
|
-
DEBUG_ENTER_INSN("opt_div");
|
2008
|
-
ADD_PC(1+2);
|
2009
|
-
PREFETCH(GET_PC());
|
2010
|
-
POPN(2);
|
2011
|
-
#define CURRENT_INSN_opt_div 1
|
2012
|
-
#define INSN_IS_SC() 0
|
2013
|
-
#define INSN_LABEL(lab) LABEL_opt_div_##lab
|
2014
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2015
|
-
COLLECT_USAGE_INSN(BIN(opt_div));
|
2016
|
-
COLLECT_USAGE_OPERAND(BIN(opt_div), 0, ci);
|
2017
|
-
COLLECT_USAGE_OPERAND(BIN(opt_div), 1, cc);
|
2018
|
-
{
|
2019
|
-
#line 1246 "insns.def"
|
2020
|
-
val = vm_opt_div(recv, obj);
|
2021
|
-
|
2022
|
-
if (val == Qundef) {
|
2023
|
-
/* other */
|
2024
|
-
PUSH(recv);
|
2025
|
-
PUSH(obj);
|
2026
|
-
CALL_SIMPLE_METHOD(recv);
|
2027
|
-
}
|
2028
|
-
|
2029
|
-
#line 2030 "vm.inc"
|
2030
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2031
|
-
PUSH(val);
|
2032
|
-
#undef CURRENT_INSN_opt_div
|
2033
|
-
#undef INSN_IS_SC
|
2034
|
-
#undef INSN_LABEL
|
2035
|
-
#undef LABEL_IS_SC
|
2036
|
-
END_INSN(opt_div);}}}
|
2037
|
-
INSN_ENTRY(opt_mod){START_OF_ORIGINAL_INSN(opt_mod);
|
2038
|
-
{
|
2039
|
-
VALUE val;
|
2040
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2041
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2042
|
-
VALUE recv = TOPN(1);
|
2043
|
-
VALUE obj = TOPN(0);
|
2044
|
-
DEBUG_ENTER_INSN("opt_mod");
|
2045
|
-
ADD_PC(1+2);
|
2046
|
-
PREFETCH(GET_PC());
|
2047
|
-
POPN(2);
|
2048
|
-
#define CURRENT_INSN_opt_mod 1
|
2049
|
-
#define INSN_IS_SC() 0
|
2050
|
-
#define INSN_LABEL(lab) LABEL_opt_mod_##lab
|
2051
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2052
|
-
COLLECT_USAGE_INSN(BIN(opt_mod));
|
2053
|
-
COLLECT_USAGE_OPERAND(BIN(opt_mod), 0, ci);
|
2054
|
-
COLLECT_USAGE_OPERAND(BIN(opt_mod), 1, cc);
|
2055
|
-
{
|
2056
|
-
#line 1267 "insns.def"
|
2057
|
-
val = vm_opt_mod(recv, obj);
|
2058
|
-
|
2059
|
-
if (val == Qundef) {
|
2060
|
-
/* other */
|
2061
|
-
PUSH(recv);
|
2062
|
-
PUSH(obj);
|
2063
|
-
CALL_SIMPLE_METHOD(recv);
|
2064
|
-
}
|
2065
|
-
|
2066
|
-
#line 2067 "vm.inc"
|
2067
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2068
|
-
PUSH(val);
|
2069
|
-
#undef CURRENT_INSN_opt_mod
|
2070
|
-
#undef INSN_IS_SC
|
2071
|
-
#undef INSN_LABEL
|
2072
|
-
#undef LABEL_IS_SC
|
2073
|
-
END_INSN(opt_mod);}}}
|
2074
|
-
INSN_ENTRY(opt_eq){START_OF_ORIGINAL_INSN(opt_eq);
|
2075
|
-
{
|
2076
|
-
VALUE val;
|
2077
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2078
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2079
|
-
VALUE recv = TOPN(1);
|
2080
|
-
VALUE obj = TOPN(0);
|
2081
|
-
DEBUG_ENTER_INSN("opt_eq");
|
2082
|
-
ADD_PC(1+2);
|
2083
|
-
PREFETCH(GET_PC());
|
2084
|
-
POPN(2);
|
2085
|
-
#define CURRENT_INSN_opt_eq 1
|
2086
|
-
#define INSN_IS_SC() 0
|
2087
|
-
#define INSN_LABEL(lab) LABEL_opt_eq_##lab
|
2088
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2089
|
-
COLLECT_USAGE_INSN(BIN(opt_eq));
|
2090
|
-
COLLECT_USAGE_OPERAND(BIN(opt_eq), 0, ci);
|
2091
|
-
COLLECT_USAGE_OPERAND(BIN(opt_eq), 1, cc);
|
2092
|
-
{
|
2093
|
-
#line 1288 "insns.def"
|
2094
|
-
val = opt_eq_func(recv, obj, ci, cc);
|
2095
|
-
|
2096
|
-
if (val == Qundef) {
|
2097
|
-
/* other */
|
2098
|
-
PUSH(recv);
|
2099
|
-
PUSH(obj);
|
2100
|
-
CALL_SIMPLE_METHOD(recv);
|
2101
|
-
}
|
2102
|
-
|
2103
|
-
#line 2104 "vm.inc"
|
2104
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2105
|
-
PUSH(val);
|
2106
|
-
#undef CURRENT_INSN_opt_eq
|
2107
|
-
#undef INSN_IS_SC
|
2108
|
-
#undef INSN_LABEL
|
2109
|
-
#undef LABEL_IS_SC
|
2110
|
-
END_INSN(opt_eq);}}}
|
2111
|
-
INSN_ENTRY(opt_neq){START_OF_ORIGINAL_INSN(opt_neq);
|
2112
|
-
{
|
2113
|
-
VALUE val;
|
2114
|
-
CALL_CACHE cc_eq = (CALL_CACHE)GET_OPERAND(4);
|
2115
|
-
CALL_INFO ci_eq = (CALL_INFO)GET_OPERAND(3);
|
2116
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2117
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2118
|
-
VALUE recv = TOPN(1);
|
2119
|
-
VALUE obj = TOPN(0);
|
2120
|
-
DEBUG_ENTER_INSN("opt_neq");
|
2121
|
-
ADD_PC(1+4);
|
2122
|
-
PREFETCH(GET_PC());
|
2123
|
-
POPN(2);
|
2124
|
-
#define CURRENT_INSN_opt_neq 1
|
2125
|
-
#define INSN_IS_SC() 0
|
2126
|
-
#define INSN_LABEL(lab) LABEL_opt_neq_##lab
|
2127
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2128
|
-
COLLECT_USAGE_INSN(BIN(opt_neq));
|
2129
|
-
COLLECT_USAGE_OPERAND(BIN(opt_neq), 0, ci);
|
2130
|
-
COLLECT_USAGE_OPERAND(BIN(opt_neq), 1, cc);
|
2131
|
-
COLLECT_USAGE_OPERAND(BIN(opt_neq), 2, ci_eq);
|
2132
|
-
COLLECT_USAGE_OPERAND(BIN(opt_neq), 3, cc_eq);
|
2133
|
-
{
|
2134
|
-
#line 1309 "insns.def"
|
2135
|
-
val = vm_opt_neq(ci, cc, ci_eq, cc_eq, recv, obj);
|
2136
|
-
|
2137
|
-
if (val == Qundef) {
|
2138
|
-
/* other */
|
2139
|
-
PUSH(recv);
|
2140
|
-
PUSH(obj);
|
2141
|
-
CALL_SIMPLE_METHOD(recv);
|
2142
|
-
}
|
2143
|
-
|
2144
|
-
#line 2145 "vm.inc"
|
2145
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2146
|
-
PUSH(val);
|
2147
|
-
#undef CURRENT_INSN_opt_neq
|
2148
|
-
#undef INSN_IS_SC
|
2149
|
-
#undef INSN_LABEL
|
2150
|
-
#undef LABEL_IS_SC
|
2151
|
-
END_INSN(opt_neq);}}}
|
2152
|
-
INSN_ENTRY(opt_lt){START_OF_ORIGINAL_INSN(opt_lt);
|
2153
|
-
{
|
2154
|
-
VALUE val;
|
2155
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2156
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2157
|
-
VALUE recv = TOPN(1);
|
2158
|
-
VALUE obj = TOPN(0);
|
2159
|
-
DEBUG_ENTER_INSN("opt_lt");
|
2160
|
-
ADD_PC(1+2);
|
2161
|
-
PREFETCH(GET_PC());
|
2162
|
-
POPN(2);
|
2163
|
-
#define CURRENT_INSN_opt_lt 1
|
2164
|
-
#define INSN_IS_SC() 0
|
2165
|
-
#define INSN_LABEL(lab) LABEL_opt_lt_##lab
|
2166
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2167
|
-
COLLECT_USAGE_INSN(BIN(opt_lt));
|
2168
|
-
COLLECT_USAGE_OPERAND(BIN(opt_lt), 0, ci);
|
2169
|
-
COLLECT_USAGE_OPERAND(BIN(opt_lt), 1, cc);
|
2170
|
-
{
|
2171
|
-
#line 1330 "insns.def"
|
2172
|
-
val = vm_opt_lt(recv, obj);
|
2173
|
-
|
2174
|
-
if (val == Qundef) {
|
2175
|
-
/* other */
|
2176
|
-
PUSH(recv);
|
2177
|
-
PUSH(obj);
|
2178
|
-
CALL_SIMPLE_METHOD(recv);
|
2179
|
-
}
|
2180
|
-
|
2181
|
-
#line 2182 "vm.inc"
|
2182
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2183
|
-
PUSH(val);
|
2184
|
-
#undef CURRENT_INSN_opt_lt
|
2185
|
-
#undef INSN_IS_SC
|
2186
|
-
#undef INSN_LABEL
|
2187
|
-
#undef LABEL_IS_SC
|
2188
|
-
END_INSN(opt_lt);}}}
|
2189
|
-
INSN_ENTRY(opt_le){START_OF_ORIGINAL_INSN(opt_le);
|
2190
|
-
{
|
2191
|
-
VALUE val;
|
2192
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2193
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2194
|
-
VALUE recv = TOPN(1);
|
2195
|
-
VALUE obj = TOPN(0);
|
2196
|
-
DEBUG_ENTER_INSN("opt_le");
|
2197
|
-
ADD_PC(1+2);
|
2198
|
-
PREFETCH(GET_PC());
|
2199
|
-
POPN(2);
|
2200
|
-
#define CURRENT_INSN_opt_le 1
|
2201
|
-
#define INSN_IS_SC() 0
|
2202
|
-
#define INSN_LABEL(lab) LABEL_opt_le_##lab
|
2203
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2204
|
-
COLLECT_USAGE_INSN(BIN(opt_le));
|
2205
|
-
COLLECT_USAGE_OPERAND(BIN(opt_le), 0, ci);
|
2206
|
-
COLLECT_USAGE_OPERAND(BIN(opt_le), 1, cc);
|
2207
|
-
{
|
2208
|
-
#line 1351 "insns.def"
|
2209
|
-
val = vm_opt_le(recv, obj);
|
2210
|
-
|
2211
|
-
if (val == Qundef) {
|
2212
|
-
/* other */
|
2213
|
-
PUSH(recv);
|
2214
|
-
PUSH(obj);
|
2215
|
-
CALL_SIMPLE_METHOD(recv);
|
2216
|
-
}
|
2217
|
-
|
2218
|
-
#line 2219 "vm.inc"
|
2219
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2220
|
-
PUSH(val);
|
2221
|
-
#undef CURRENT_INSN_opt_le
|
2222
|
-
#undef INSN_IS_SC
|
2223
|
-
#undef INSN_LABEL
|
2224
|
-
#undef LABEL_IS_SC
|
2225
|
-
END_INSN(opt_le);}}}
|
2226
|
-
INSN_ENTRY(opt_gt){START_OF_ORIGINAL_INSN(opt_gt);
|
2227
|
-
{
|
2228
|
-
VALUE val;
|
2229
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2230
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2231
|
-
VALUE recv = TOPN(1);
|
2232
|
-
VALUE obj = TOPN(0);
|
2233
|
-
DEBUG_ENTER_INSN("opt_gt");
|
2234
|
-
ADD_PC(1+2);
|
2235
|
-
PREFETCH(GET_PC());
|
2236
|
-
POPN(2);
|
2237
|
-
#define CURRENT_INSN_opt_gt 1
|
2238
|
-
#define INSN_IS_SC() 0
|
2239
|
-
#define INSN_LABEL(lab) LABEL_opt_gt_##lab
|
2240
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2241
|
-
COLLECT_USAGE_INSN(BIN(opt_gt));
|
2242
|
-
COLLECT_USAGE_OPERAND(BIN(opt_gt), 0, ci);
|
2243
|
-
COLLECT_USAGE_OPERAND(BIN(opt_gt), 1, cc);
|
2244
|
-
{
|
2245
|
-
#line 1372 "insns.def"
|
2246
|
-
val = vm_opt_gt(recv, obj);
|
2247
|
-
|
2248
|
-
if (val == Qundef) {
|
2249
|
-
/* other */
|
2250
|
-
PUSH(recv);
|
2251
|
-
PUSH(obj);
|
2252
|
-
CALL_SIMPLE_METHOD(recv);
|
2253
|
-
}
|
2254
|
-
|
2255
|
-
#line 2256 "vm.inc"
|
2256
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2257
|
-
PUSH(val);
|
2258
|
-
#undef CURRENT_INSN_opt_gt
|
2259
|
-
#undef INSN_IS_SC
|
2260
|
-
#undef INSN_LABEL
|
2261
|
-
#undef LABEL_IS_SC
|
2262
|
-
END_INSN(opt_gt);}}}
|
2263
|
-
INSN_ENTRY(opt_ge){START_OF_ORIGINAL_INSN(opt_ge);
|
2264
|
-
{
|
2265
|
-
VALUE val;
|
2266
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2267
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2268
|
-
VALUE recv = TOPN(1);
|
2269
|
-
VALUE obj = TOPN(0);
|
2270
|
-
DEBUG_ENTER_INSN("opt_ge");
|
2271
|
-
ADD_PC(1+2);
|
2272
|
-
PREFETCH(GET_PC());
|
2273
|
-
POPN(2);
|
2274
|
-
#define CURRENT_INSN_opt_ge 1
|
2275
|
-
#define INSN_IS_SC() 0
|
2276
|
-
#define INSN_LABEL(lab) LABEL_opt_ge_##lab
|
2277
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2278
|
-
COLLECT_USAGE_INSN(BIN(opt_ge));
|
2279
|
-
COLLECT_USAGE_OPERAND(BIN(opt_ge), 0, ci);
|
2280
|
-
COLLECT_USAGE_OPERAND(BIN(opt_ge), 1, cc);
|
2281
|
-
{
|
2282
|
-
#line 1393 "insns.def"
|
2283
|
-
val = vm_opt_ge(recv, obj);
|
2284
|
-
|
2285
|
-
if (val == Qundef) {
|
2286
|
-
/* other */
|
2287
|
-
PUSH(recv);
|
2288
|
-
PUSH(obj);
|
2289
|
-
CALL_SIMPLE_METHOD(recv);
|
2290
|
-
}
|
2291
|
-
|
2292
|
-
#line 2293 "vm.inc"
|
2293
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2294
|
-
PUSH(val);
|
2295
|
-
#undef CURRENT_INSN_opt_ge
|
2296
|
-
#undef INSN_IS_SC
|
2297
|
-
#undef INSN_LABEL
|
2298
|
-
#undef LABEL_IS_SC
|
2299
|
-
END_INSN(opt_ge);}}}
|
2300
|
-
INSN_ENTRY(opt_ltlt){START_OF_ORIGINAL_INSN(opt_ltlt);
|
2301
|
-
{
|
2302
|
-
VALUE val;
|
2303
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2304
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2305
|
-
VALUE recv = TOPN(1);
|
2306
|
-
VALUE obj = TOPN(0);
|
2307
|
-
DEBUG_ENTER_INSN("opt_ltlt");
|
2308
|
-
ADD_PC(1+2);
|
2309
|
-
PREFETCH(GET_PC());
|
2310
|
-
POPN(2);
|
2311
|
-
#define CURRENT_INSN_opt_ltlt 1
|
2312
|
-
#define INSN_IS_SC() 0
|
2313
|
-
#define INSN_LABEL(lab) LABEL_opt_ltlt_##lab
|
2314
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2315
|
-
COLLECT_USAGE_INSN(BIN(opt_ltlt));
|
2316
|
-
COLLECT_USAGE_OPERAND(BIN(opt_ltlt), 0, ci);
|
2317
|
-
COLLECT_USAGE_OPERAND(BIN(opt_ltlt), 1, cc);
|
2318
|
-
{
|
2319
|
-
#line 1414 "insns.def"
|
2320
|
-
val = vm_opt_ltlt(recv, obj);
|
2321
|
-
|
2322
|
-
if (val == Qundef) {
|
2323
|
-
/* other */
|
2324
|
-
PUSH(recv);
|
2325
|
-
PUSH(obj);
|
2326
|
-
CALL_SIMPLE_METHOD(recv);
|
2327
|
-
}
|
2328
|
-
|
2329
|
-
#line 2330 "vm.inc"
|
2330
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2331
|
-
PUSH(val);
|
2332
|
-
#undef CURRENT_INSN_opt_ltlt
|
2333
|
-
#undef INSN_IS_SC
|
2334
|
-
#undef INSN_LABEL
|
2335
|
-
#undef LABEL_IS_SC
|
2336
|
-
END_INSN(opt_ltlt);}}}
|
2337
|
-
INSN_ENTRY(opt_aref){START_OF_ORIGINAL_INSN(opt_aref);
|
2338
|
-
{
|
2339
|
-
VALUE val;
|
2340
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2341
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2342
|
-
VALUE recv = TOPN(1);
|
2343
|
-
VALUE obj = TOPN(0);
|
2344
|
-
DEBUG_ENTER_INSN("opt_aref");
|
2345
|
-
ADD_PC(1+2);
|
2346
|
-
PREFETCH(GET_PC());
|
2347
|
-
POPN(2);
|
2348
|
-
#define CURRENT_INSN_opt_aref 1
|
2349
|
-
#define INSN_IS_SC() 0
|
2350
|
-
#define INSN_LABEL(lab) LABEL_opt_aref_##lab
|
2351
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2352
|
-
COLLECT_USAGE_INSN(BIN(opt_aref));
|
2353
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aref), 0, ci);
|
2354
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aref), 1, cc);
|
2355
|
-
{
|
2356
|
-
#line 1435 "insns.def"
|
2357
|
-
val = vm_opt_aref(recv, obj);
|
2358
|
-
|
2359
|
-
if (val == Qundef) {
|
2360
|
-
/* other */
|
2361
|
-
PUSH(recv);
|
2362
|
-
PUSH(obj);
|
2363
|
-
CALL_SIMPLE_METHOD(recv);
|
2364
|
-
}
|
2365
|
-
|
2366
|
-
#line 2367 "vm.inc"
|
2367
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2368
|
-
PUSH(val);
|
2369
|
-
#undef CURRENT_INSN_opt_aref
|
2370
|
-
#undef INSN_IS_SC
|
2371
|
-
#undef INSN_LABEL
|
2372
|
-
#undef LABEL_IS_SC
|
2373
|
-
END_INSN(opt_aref);}}}
|
2374
|
-
INSN_ENTRY(opt_aset){START_OF_ORIGINAL_INSN(opt_aset);
|
2375
|
-
{
|
2376
|
-
VALUE val;
|
2377
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2378
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2379
|
-
VALUE recv = TOPN(2);
|
2380
|
-
VALUE obj = TOPN(1);
|
2381
|
-
VALUE set = TOPN(0);
|
2382
|
-
DEBUG_ENTER_INSN("opt_aset");
|
2383
|
-
ADD_PC(1+2);
|
2384
|
-
PREFETCH(GET_PC());
|
2385
|
-
POPN(3);
|
2386
|
-
#define CURRENT_INSN_opt_aset 1
|
2387
|
-
#define INSN_IS_SC() 0
|
2388
|
-
#define INSN_LABEL(lab) LABEL_opt_aset_##lab
|
2389
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2390
|
-
COLLECT_USAGE_INSN(BIN(opt_aset));
|
2391
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aset), 0, ci);
|
2392
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aset), 1, cc);
|
2393
|
-
{
|
2394
|
-
#line 1456 "insns.def"
|
2395
|
-
val = vm_opt_aset(recv, obj, set);
|
2396
|
-
|
2397
|
-
if (val == Qundef) {
|
2398
|
-
/* other */
|
2399
|
-
PUSH(recv);
|
2400
|
-
PUSH(obj);
|
2401
|
-
PUSH(set);
|
2402
|
-
CALL_SIMPLE_METHOD(recv);
|
2403
|
-
}
|
2404
|
-
|
2405
|
-
#line 2406 "vm.inc"
|
2406
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2407
|
-
PUSH(val);
|
2408
|
-
#undef CURRENT_INSN_opt_aset
|
2409
|
-
#undef INSN_IS_SC
|
2410
|
-
#undef INSN_LABEL
|
2411
|
-
#undef LABEL_IS_SC
|
2412
|
-
END_INSN(opt_aset);}}}
|
2413
|
-
INSN_ENTRY(opt_aset_with){START_OF_ORIGINAL_INSN(opt_aset_with);
|
2414
|
-
{
|
2415
|
-
VALUE key = (VALUE)GET_OPERAND(3);
|
2416
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2417
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2418
|
-
VALUE recv = TOPN(1);
|
2419
|
-
VALUE val = TOPN(0);
|
2420
|
-
DEBUG_ENTER_INSN("opt_aset_with");
|
2421
|
-
ADD_PC(1+3);
|
2422
|
-
PREFETCH(GET_PC());
|
2423
|
-
POPN(2);
|
2424
|
-
#define CURRENT_INSN_opt_aset_with 1
|
2425
|
-
#define INSN_IS_SC() 0
|
2426
|
-
#define INSN_LABEL(lab) LABEL_opt_aset_with_##lab
|
2427
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2428
|
-
COLLECT_USAGE_INSN(BIN(opt_aset_with));
|
2429
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aset_with), 0, ci);
|
2430
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aset_with), 1, cc);
|
2431
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aset_with), 2, key);
|
2432
|
-
{
|
2433
|
-
#line 1478 "insns.def"
|
2434
|
-
VALUE tmp = vm_opt_aset_with(recv, key, val);
|
2435
|
-
|
2436
|
-
if (tmp != Qundef) {
|
2437
|
-
val = tmp;
|
2438
|
-
}
|
2439
|
-
else {
|
2440
|
-
/* other */
|
2441
|
-
PUSH(recv);
|
2442
|
-
PUSH(rb_str_resurrect(key));
|
2443
|
-
PUSH(val);
|
2444
|
-
CALL_SIMPLE_METHOD(recv);
|
2445
|
-
}
|
2446
|
-
|
2447
|
-
#line 2448 "vm.inc"
|
2448
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2449
|
-
PUSH(val);
|
2450
|
-
#undef CURRENT_INSN_opt_aset_with
|
2451
|
-
#undef INSN_IS_SC
|
2452
|
-
#undef INSN_LABEL
|
2453
|
-
#undef LABEL_IS_SC
|
2454
|
-
END_INSN(opt_aset_with);}}}
|
2455
|
-
INSN_ENTRY(opt_aref_with){START_OF_ORIGINAL_INSN(opt_aref_with);
|
2456
|
-
{
|
2457
|
-
VALUE val;
|
2458
|
-
VALUE key = (VALUE)GET_OPERAND(3);
|
2459
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2460
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2461
|
-
VALUE recv = TOPN(0);
|
2462
|
-
DEBUG_ENTER_INSN("opt_aref_with");
|
2463
|
-
ADD_PC(1+3);
|
2464
|
-
PREFETCH(GET_PC());
|
2465
|
-
POPN(1);
|
2466
|
-
#define CURRENT_INSN_opt_aref_with 1
|
2467
|
-
#define INSN_IS_SC() 0
|
2468
|
-
#define INSN_LABEL(lab) LABEL_opt_aref_with_##lab
|
2469
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2470
|
-
COLLECT_USAGE_INSN(BIN(opt_aref_with));
|
2471
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aref_with), 0, ci);
|
2472
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aref_with), 1, cc);
|
2473
|
-
COLLECT_USAGE_OPERAND(BIN(opt_aref_with), 2, key);
|
2474
|
-
{
|
2475
|
-
#line 1503 "insns.def"
|
2476
|
-
val = vm_opt_aref_with(recv, key);
|
2477
|
-
|
2478
|
-
if (val == Qundef) {
|
2479
|
-
/* other */
|
2480
|
-
PUSH(recv);
|
2481
|
-
PUSH(rb_str_resurrect(key));
|
2482
|
-
CALL_SIMPLE_METHOD(recv);
|
2483
|
-
}
|
2484
|
-
|
2485
|
-
#line 2486 "vm.inc"
|
2486
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2487
|
-
PUSH(val);
|
2488
|
-
#undef CURRENT_INSN_opt_aref_with
|
2489
|
-
#undef INSN_IS_SC
|
2490
|
-
#undef INSN_LABEL
|
2491
|
-
#undef LABEL_IS_SC
|
2492
|
-
END_INSN(opt_aref_with);}}}
|
2493
|
-
INSN_ENTRY(opt_length){START_OF_ORIGINAL_INSN(opt_length);
|
2494
|
-
{
|
2495
|
-
VALUE val;
|
2496
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2497
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2498
|
-
VALUE recv = TOPN(0);
|
2499
|
-
DEBUG_ENTER_INSN("opt_length");
|
2500
|
-
ADD_PC(1+2);
|
2501
|
-
PREFETCH(GET_PC());
|
2502
|
-
POPN(1);
|
2503
|
-
#define CURRENT_INSN_opt_length 1
|
2504
|
-
#define INSN_IS_SC() 0
|
2505
|
-
#define INSN_LABEL(lab) LABEL_opt_length_##lab
|
2506
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2507
|
-
COLLECT_USAGE_INSN(BIN(opt_length));
|
2508
|
-
COLLECT_USAGE_OPERAND(BIN(opt_length), 0, ci);
|
2509
|
-
COLLECT_USAGE_OPERAND(BIN(opt_length), 1, cc);
|
2510
|
-
{
|
2511
|
-
#line 1524 "insns.def"
|
2512
|
-
val = vm_opt_length(recv, BOP_LENGTH);
|
2513
|
-
|
2514
|
-
if (val == Qundef) {
|
2515
|
-
/* other */
|
2516
|
-
PUSH(recv);
|
2517
|
-
CALL_SIMPLE_METHOD(recv);
|
2518
|
-
}
|
2519
|
-
|
2520
|
-
#line 2521 "vm.inc"
|
2521
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2522
|
-
PUSH(val);
|
2523
|
-
#undef CURRENT_INSN_opt_length
|
2524
|
-
#undef INSN_IS_SC
|
2525
|
-
#undef INSN_LABEL
|
2526
|
-
#undef LABEL_IS_SC
|
2527
|
-
END_INSN(opt_length);}}}
|
2528
|
-
INSN_ENTRY(opt_size){START_OF_ORIGINAL_INSN(opt_size);
|
2529
|
-
{
|
2530
|
-
VALUE val;
|
2531
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2532
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2533
|
-
VALUE recv = TOPN(0);
|
2534
|
-
DEBUG_ENTER_INSN("opt_size");
|
2535
|
-
ADD_PC(1+2);
|
2536
|
-
PREFETCH(GET_PC());
|
2537
|
-
POPN(1);
|
2538
|
-
#define CURRENT_INSN_opt_size 1
|
2539
|
-
#define INSN_IS_SC() 0
|
2540
|
-
#define INSN_LABEL(lab) LABEL_opt_size_##lab
|
2541
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2542
|
-
COLLECT_USAGE_INSN(BIN(opt_size));
|
2543
|
-
COLLECT_USAGE_OPERAND(BIN(opt_size), 0, ci);
|
2544
|
-
COLLECT_USAGE_OPERAND(BIN(opt_size), 1, cc);
|
2545
|
-
{
|
2546
|
-
#line 1544 "insns.def"
|
2547
|
-
val = vm_opt_length(recv, BOP_SIZE);
|
2548
|
-
|
2549
|
-
if (val == Qundef) {
|
2550
|
-
/* other */
|
2551
|
-
PUSH(recv);
|
2552
|
-
CALL_SIMPLE_METHOD(recv);
|
2553
|
-
}
|
2554
|
-
|
2555
|
-
#line 2556 "vm.inc"
|
2556
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2557
|
-
PUSH(val);
|
2558
|
-
#undef CURRENT_INSN_opt_size
|
2559
|
-
#undef INSN_IS_SC
|
2560
|
-
#undef INSN_LABEL
|
2561
|
-
#undef LABEL_IS_SC
|
2562
|
-
END_INSN(opt_size);}}}
|
2563
|
-
INSN_ENTRY(opt_empty_p){START_OF_ORIGINAL_INSN(opt_empty_p);
|
2564
|
-
{
|
2565
|
-
VALUE val;
|
2566
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2567
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2568
|
-
VALUE recv = TOPN(0);
|
2569
|
-
DEBUG_ENTER_INSN("opt_empty_p");
|
2570
|
-
ADD_PC(1+2);
|
2571
|
-
PREFETCH(GET_PC());
|
2572
|
-
POPN(1);
|
2573
|
-
#define CURRENT_INSN_opt_empty_p 1
|
2574
|
-
#define INSN_IS_SC() 0
|
2575
|
-
#define INSN_LABEL(lab) LABEL_opt_empty_p_##lab
|
2576
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2577
|
-
COLLECT_USAGE_INSN(BIN(opt_empty_p));
|
2578
|
-
COLLECT_USAGE_OPERAND(BIN(opt_empty_p), 0, ci);
|
2579
|
-
COLLECT_USAGE_OPERAND(BIN(opt_empty_p), 1, cc);
|
2580
|
-
{
|
2581
|
-
#line 1564 "insns.def"
|
2582
|
-
val = vm_opt_empty_p(recv);
|
2583
|
-
|
2584
|
-
if (val == Qundef) {
|
2585
|
-
/* other */
|
2586
|
-
PUSH(recv);
|
2587
|
-
CALL_SIMPLE_METHOD(recv);
|
2588
|
-
}
|
2589
|
-
|
2590
|
-
#line 2591 "vm.inc"
|
2591
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2592
|
-
PUSH(val);
|
2593
|
-
#undef CURRENT_INSN_opt_empty_p
|
2594
|
-
#undef INSN_IS_SC
|
2595
|
-
#undef INSN_LABEL
|
2596
|
-
#undef LABEL_IS_SC
|
2597
|
-
END_INSN(opt_empty_p);}}}
|
2598
|
-
INSN_ENTRY(opt_succ){START_OF_ORIGINAL_INSN(opt_succ);
|
2599
|
-
{
|
2600
|
-
VALUE val;
|
2601
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2602
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2603
|
-
VALUE recv = TOPN(0);
|
2604
|
-
DEBUG_ENTER_INSN("opt_succ");
|
2605
|
-
ADD_PC(1+2);
|
2606
|
-
PREFETCH(GET_PC());
|
2607
|
-
POPN(1);
|
2608
|
-
#define CURRENT_INSN_opt_succ 1
|
2609
|
-
#define INSN_IS_SC() 0
|
2610
|
-
#define INSN_LABEL(lab) LABEL_opt_succ_##lab
|
2611
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2612
|
-
COLLECT_USAGE_INSN(BIN(opt_succ));
|
2613
|
-
COLLECT_USAGE_OPERAND(BIN(opt_succ), 0, ci);
|
2614
|
-
COLLECT_USAGE_OPERAND(BIN(opt_succ), 1, cc);
|
2615
|
-
{
|
2616
|
-
#line 1584 "insns.def"
|
2617
|
-
val = vm_opt_succ(recv);
|
2618
|
-
|
2619
|
-
if (val == Qundef) {
|
2620
|
-
/* other */
|
2621
|
-
PUSH(recv);
|
2622
|
-
CALL_SIMPLE_METHOD(recv);
|
2623
|
-
}
|
2624
|
-
|
2625
|
-
#line 2626 "vm.inc"
|
2626
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2627
|
-
PUSH(val);
|
2628
|
-
#undef CURRENT_INSN_opt_succ
|
2629
|
-
#undef INSN_IS_SC
|
2630
|
-
#undef INSN_LABEL
|
2631
|
-
#undef LABEL_IS_SC
|
2632
|
-
END_INSN(opt_succ);}}}
|
2633
|
-
INSN_ENTRY(opt_not){START_OF_ORIGINAL_INSN(opt_not);
|
2634
|
-
{
|
2635
|
-
VALUE val;
|
2636
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2637
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2638
|
-
VALUE recv = TOPN(0);
|
2639
|
-
DEBUG_ENTER_INSN("opt_not");
|
2640
|
-
ADD_PC(1+2);
|
2641
|
-
PREFETCH(GET_PC());
|
2642
|
-
POPN(1);
|
2643
|
-
#define CURRENT_INSN_opt_not 1
|
2644
|
-
#define INSN_IS_SC() 0
|
2645
|
-
#define INSN_LABEL(lab) LABEL_opt_not_##lab
|
2646
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2647
|
-
COLLECT_USAGE_INSN(BIN(opt_not));
|
2648
|
-
COLLECT_USAGE_OPERAND(BIN(opt_not), 0, ci);
|
2649
|
-
COLLECT_USAGE_OPERAND(BIN(opt_not), 1, cc);
|
2650
|
-
{
|
2651
|
-
#line 1604 "insns.def"
|
2652
|
-
val = vm_opt_not(ci, cc, recv);
|
2653
|
-
|
2654
|
-
if (val == Qundef) {
|
2655
|
-
/* other */
|
2656
|
-
PUSH(recv);
|
2657
|
-
CALL_SIMPLE_METHOD(recv);
|
2658
|
-
}
|
2659
|
-
|
2660
|
-
#line 2661 "vm.inc"
|
2661
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2662
|
-
PUSH(val);
|
2663
|
-
#undef CURRENT_INSN_opt_not
|
2664
|
-
#undef INSN_IS_SC
|
2665
|
-
#undef INSN_LABEL
|
2666
|
-
#undef LABEL_IS_SC
|
2667
|
-
END_INSN(opt_not);}}}
|
2668
|
-
INSN_ENTRY(opt_regexpmatch1){START_OF_ORIGINAL_INSN(opt_regexpmatch1);
|
2669
|
-
{
|
2670
|
-
VALUE val;
|
2671
|
-
VALUE recv = (VALUE)GET_OPERAND(1);
|
2672
|
-
VALUE obj = TOPN(0);
|
2673
|
-
DEBUG_ENTER_INSN("opt_regexpmatch1");
|
2674
|
-
ADD_PC(1+1);
|
2675
|
-
PREFETCH(GET_PC());
|
2676
|
-
POPN(1);
|
2677
|
-
#define CURRENT_INSN_opt_regexpmatch1 1
|
2678
|
-
#define INSN_IS_SC() 0
|
2679
|
-
#define INSN_LABEL(lab) LABEL_opt_regexpmatch1_##lab
|
2680
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2681
|
-
COLLECT_USAGE_INSN(BIN(opt_regexpmatch1));
|
2682
|
-
COLLECT_USAGE_OPERAND(BIN(opt_regexpmatch1), 0, recv);
|
2683
|
-
{
|
2684
|
-
#line 1625 "insns.def"
|
2685
|
-
val = vm_opt_regexpmatch1(recv, obj);
|
2686
|
-
|
2687
|
-
#line 2688 "vm.inc"
|
2688
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2689
|
-
PUSH(val);
|
2690
|
-
#undef CURRENT_INSN_opt_regexpmatch1
|
2691
|
-
#undef INSN_IS_SC
|
2692
|
-
#undef INSN_LABEL
|
2693
|
-
#undef LABEL_IS_SC
|
2694
|
-
END_INSN(opt_regexpmatch1);}}}
|
2695
|
-
INSN_ENTRY(opt_regexpmatch2){START_OF_ORIGINAL_INSN(opt_regexpmatch2);
|
2696
|
-
{
|
2697
|
-
VALUE val;
|
2698
|
-
CALL_CACHE cc = (CALL_CACHE)GET_OPERAND(2);
|
2699
|
-
CALL_INFO ci = (CALL_INFO)GET_OPERAND(1);
|
2700
|
-
VALUE obj2 = TOPN(1);
|
2701
|
-
VALUE obj1 = TOPN(0);
|
2702
|
-
DEBUG_ENTER_INSN("opt_regexpmatch2");
|
2703
|
-
ADD_PC(1+2);
|
2704
|
-
PREFETCH(GET_PC());
|
2705
|
-
POPN(2);
|
2706
|
-
#define CURRENT_INSN_opt_regexpmatch2 1
|
2707
|
-
#define INSN_IS_SC() 0
|
2708
|
-
#define INSN_LABEL(lab) LABEL_opt_regexpmatch2_##lab
|
2709
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2710
|
-
COLLECT_USAGE_INSN(BIN(opt_regexpmatch2));
|
2711
|
-
COLLECT_USAGE_OPERAND(BIN(opt_regexpmatch2), 0, ci);
|
2712
|
-
COLLECT_USAGE_OPERAND(BIN(opt_regexpmatch2), 1, cc);
|
2713
|
-
{
|
2714
|
-
#line 1639 "insns.def"
|
2715
|
-
val = vm_opt_regexpmatch2(obj2, obj1);
|
2716
|
-
|
2717
|
-
if (val == Qundef) {
|
2718
|
-
/* other */
|
2719
|
-
PUSH(obj2);
|
2720
|
-
PUSH(obj1);
|
2721
|
-
CALL_SIMPLE_METHOD(obj2);
|
2722
|
-
}
|
2723
|
-
|
2724
|
-
#line 2725 "vm.inc"
|
2725
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2726
|
-
PUSH(val);
|
2727
|
-
#undef CURRENT_INSN_opt_regexpmatch2
|
2728
|
-
#undef INSN_IS_SC
|
2729
|
-
#undef INSN_LABEL
|
2730
|
-
#undef LABEL_IS_SC
|
2731
|
-
END_INSN(opt_regexpmatch2);}}}
|
2732
|
-
INSN_ENTRY(opt_call_c_function){START_OF_ORIGINAL_INSN(opt_call_c_function);
|
2733
|
-
{
|
2734
|
-
rb_insn_func_t funcptr = (rb_insn_func_t)GET_OPERAND(1);
|
2735
|
-
|
2736
|
-
DEBUG_ENTER_INSN("opt_call_c_function");
|
2737
|
-
ADD_PC(1+1);
|
2738
|
-
PREFETCH(GET_PC());
|
2739
|
-
#define CURRENT_INSN_opt_call_c_function 1
|
2740
|
-
#define INSN_IS_SC() 0
|
2741
|
-
#define INSN_LABEL(lab) LABEL_opt_call_c_function_##lab
|
2742
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2743
|
-
COLLECT_USAGE_INSN(BIN(opt_call_c_function));
|
2744
|
-
COLLECT_USAGE_OPERAND(BIN(opt_call_c_function), 0, funcptr);
|
2745
|
-
{
|
2746
|
-
#line 1660 "insns.def"
|
2747
|
-
reg_cfp = (funcptr)(ec, reg_cfp);
|
2748
|
-
|
2749
|
-
if (reg_cfp == 0) {
|
2750
|
-
VALUE err = ec->errinfo;
|
2751
|
-
ec->errinfo = Qnil;
|
2752
|
-
THROW_EXCEPTION(err);
|
2753
|
-
}
|
2754
|
-
|
2755
|
-
RESTORE_REGS();
|
2756
|
-
NEXT_INSN();
|
2757
|
-
|
2758
|
-
#line 2759 "vm.inc"
|
2759
|
-
#undef CURRENT_INSN_opt_call_c_function
|
2760
|
-
#undef INSN_IS_SC
|
2761
|
-
#undef INSN_LABEL
|
2762
|
-
#undef LABEL_IS_SC
|
2763
|
-
END_INSN(opt_call_c_function);}}}
|
2764
|
-
INSN_ENTRY(bitblt){START_OF_ORIGINAL_INSN(bitblt);
|
2765
|
-
{
|
2766
|
-
VALUE ret;
|
2767
|
-
|
2768
|
-
|
2769
|
-
DEBUG_ENTER_INSN("bitblt");
|
2770
|
-
ADD_PC(1+0);
|
2771
|
-
PREFETCH(GET_PC());
|
2772
|
-
#define CURRENT_INSN_bitblt 1
|
2773
|
-
#define INSN_IS_SC() 0
|
2774
|
-
#define INSN_LABEL(lab) LABEL_bitblt_##lab
|
2775
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2776
|
-
COLLECT_USAGE_INSN(BIN(bitblt));
|
2777
|
-
{
|
2778
|
-
#line 1683 "insns.def"
|
2779
|
-
ret = rb_str_new2("a bit of bacon, lettuce and tomato");
|
2780
|
-
|
2781
|
-
#line 2782 "vm.inc"
|
2782
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2783
|
-
PUSH(ret);
|
2784
|
-
#undef CURRENT_INSN_bitblt
|
2785
|
-
#undef INSN_IS_SC
|
2786
|
-
#undef INSN_LABEL
|
2787
|
-
#undef LABEL_IS_SC
|
2788
|
-
END_INSN(bitblt);}}}
|
2789
|
-
INSN_ENTRY(answer){START_OF_ORIGINAL_INSN(answer);
|
2790
|
-
{
|
2791
|
-
VALUE ret;
|
2792
|
-
|
2793
|
-
|
2794
|
-
DEBUG_ENTER_INSN("answer");
|
2795
|
-
ADD_PC(1+0);
|
2796
|
-
PREFETCH(GET_PC());
|
2797
|
-
#define CURRENT_INSN_answer 1
|
2798
|
-
#define INSN_IS_SC() 0
|
2799
|
-
#define INSN_LABEL(lab) LABEL_answer_##lab
|
2800
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2801
|
-
COLLECT_USAGE_INSN(BIN(answer));
|
2802
|
-
{
|
2803
|
-
#line 1697 "insns.def"
|
2804
|
-
ret = INT2FIX(42);
|
2805
|
-
|
2806
|
-
#line 2807 "vm.inc"
|
2807
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2808
|
-
PUSH(ret);
|
2809
|
-
#undef CURRENT_INSN_answer
|
2810
|
-
#undef INSN_IS_SC
|
2811
|
-
#undef INSN_LABEL
|
2812
|
-
#undef LABEL_IS_SC
|
2813
|
-
END_INSN(answer);}}}
|
2814
|
-
INSN_ENTRY(getlocal_OP__WC__0){START_OF_ORIGINAL_INSN(getlocal_OP__WC__0);
|
2815
|
-
{
|
2816
|
-
VALUE val;
|
2817
|
-
#define level 0
|
2818
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
2819
|
-
|
2820
|
-
DEBUG_ENTER_INSN("getlocal_OP__WC__0");
|
2821
|
-
ADD_PC(1+1);
|
2822
|
-
PREFETCH(GET_PC());
|
2823
|
-
#define CURRENT_INSN_getlocal_OP__WC__0 1
|
2824
|
-
#define INSN_IS_SC() 0
|
2825
|
-
#define INSN_LABEL(lab) LABEL_getlocal_OP__WC__0_##lab
|
2826
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2827
|
-
COLLECT_USAGE_INSN(BIN(getlocal_OP__WC__0));
|
2828
|
-
COLLECT_USAGE_OPERAND(BIN(getlocal_OP__WC__0), 0, idx);
|
2829
|
-
{
|
2830
|
-
#line 60 "insns.def"
|
2831
|
-
val = *(vm_get_ep(GET_EP(), level) - idx);
|
2832
|
-
RB_DEBUG_COUNTER_INC(lvar_get);
|
2833
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_get_dynamic, level > 0);
|
2834
|
-
|
2835
|
-
#line 2836 "vm.inc"
|
2836
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2837
|
-
PUSH(val);
|
2838
|
-
#undef level
|
2839
|
-
#undef CURRENT_INSN_getlocal_OP__WC__0
|
2840
|
-
#undef INSN_IS_SC
|
2841
|
-
#undef INSN_LABEL
|
2842
|
-
#undef LABEL_IS_SC
|
2843
|
-
END_INSN(getlocal_OP__WC__0);}}}
|
2844
|
-
INSN_ENTRY(getlocal_OP__WC__1){START_OF_ORIGINAL_INSN(getlocal_OP__WC__1);
|
2845
|
-
{
|
2846
|
-
VALUE val;
|
2847
|
-
#define level 1
|
2848
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
2849
|
-
|
2850
|
-
DEBUG_ENTER_INSN("getlocal_OP__WC__1");
|
2851
|
-
ADD_PC(1+1);
|
2852
|
-
PREFETCH(GET_PC());
|
2853
|
-
#define CURRENT_INSN_getlocal_OP__WC__1 1
|
2854
|
-
#define INSN_IS_SC() 0
|
2855
|
-
#define INSN_LABEL(lab) LABEL_getlocal_OP__WC__1_##lab
|
2856
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2857
|
-
COLLECT_USAGE_INSN(BIN(getlocal_OP__WC__1));
|
2858
|
-
COLLECT_USAGE_OPERAND(BIN(getlocal_OP__WC__1), 0, idx);
|
2859
|
-
{
|
2860
|
-
#line 60 "insns.def"
|
2861
|
-
val = *(vm_get_ep(GET_EP(), level) - idx);
|
2862
|
-
RB_DEBUG_COUNTER_INC(lvar_get);
|
2863
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_get_dynamic, level > 0);
|
2864
|
-
|
2865
|
-
#line 2866 "vm.inc"
|
2866
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2867
|
-
PUSH(val);
|
2868
|
-
#undef level
|
2869
|
-
#undef CURRENT_INSN_getlocal_OP__WC__1
|
2870
|
-
#undef INSN_IS_SC
|
2871
|
-
#undef INSN_LABEL
|
2872
|
-
#undef LABEL_IS_SC
|
2873
|
-
END_INSN(getlocal_OP__WC__1);}}}
|
2874
|
-
INSN_ENTRY(setlocal_OP__WC__0){START_OF_ORIGINAL_INSN(setlocal_OP__WC__0);
|
2875
|
-
{
|
2876
|
-
#define level 0
|
2877
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
2878
|
-
VALUE val = TOPN(0);
|
2879
|
-
DEBUG_ENTER_INSN("setlocal_OP__WC__0");
|
2880
|
-
ADD_PC(1+1);
|
2881
|
-
PREFETCH(GET_PC());
|
2882
|
-
POPN(1);
|
2883
|
-
#define CURRENT_INSN_setlocal_OP__WC__0 1
|
2884
|
-
#define INSN_IS_SC() 0
|
2885
|
-
#define INSN_LABEL(lab) LABEL_setlocal_OP__WC__0_##lab
|
2886
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2887
|
-
COLLECT_USAGE_INSN(BIN(setlocal_OP__WC__0));
|
2888
|
-
COLLECT_USAGE_OPERAND(BIN(setlocal_OP__WC__0), 0, idx);
|
2889
|
-
{
|
2890
|
-
#line 78 "insns.def"
|
2891
|
-
vm_env_write(vm_get_ep(GET_EP(), level), -(int)idx, val);
|
2892
|
-
RB_DEBUG_COUNTER_INC(lvar_set);
|
2893
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_set_dynamic, level > 0);
|
2894
|
-
|
2895
|
-
#line 2896 "vm.inc"
|
2896
|
-
#undef level
|
2897
|
-
#undef CURRENT_INSN_setlocal_OP__WC__0
|
2898
|
-
#undef INSN_IS_SC
|
2899
|
-
#undef INSN_LABEL
|
2900
|
-
#undef LABEL_IS_SC
|
2901
|
-
END_INSN(setlocal_OP__WC__0);}}}
|
2902
|
-
INSN_ENTRY(setlocal_OP__WC__1){START_OF_ORIGINAL_INSN(setlocal_OP__WC__1);
|
2903
|
-
{
|
2904
|
-
#define level 1
|
2905
|
-
lindex_t idx = (lindex_t)GET_OPERAND(1);
|
2906
|
-
VALUE val = TOPN(0);
|
2907
|
-
DEBUG_ENTER_INSN("setlocal_OP__WC__1");
|
2908
|
-
ADD_PC(1+1);
|
2909
|
-
PREFETCH(GET_PC());
|
2910
|
-
POPN(1);
|
2911
|
-
#define CURRENT_INSN_setlocal_OP__WC__1 1
|
2912
|
-
#define INSN_IS_SC() 0
|
2913
|
-
#define INSN_LABEL(lab) LABEL_setlocal_OP__WC__1_##lab
|
2914
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2915
|
-
COLLECT_USAGE_INSN(BIN(setlocal_OP__WC__1));
|
2916
|
-
COLLECT_USAGE_OPERAND(BIN(setlocal_OP__WC__1), 0, idx);
|
2917
|
-
{
|
2918
|
-
#line 78 "insns.def"
|
2919
|
-
vm_env_write(vm_get_ep(GET_EP(), level), -(int)idx, val);
|
2920
|
-
RB_DEBUG_COUNTER_INC(lvar_set);
|
2921
|
-
(void)RB_DEBUG_COUNTER_INC_IF(lvar_set_dynamic, level > 0);
|
2922
|
-
|
2923
|
-
#line 2924 "vm.inc"
|
2924
|
-
#undef level
|
2925
|
-
#undef CURRENT_INSN_setlocal_OP__WC__1
|
2926
|
-
#undef INSN_IS_SC
|
2927
|
-
#undef INSN_LABEL
|
2928
|
-
#undef LABEL_IS_SC
|
2929
|
-
END_INSN(setlocal_OP__WC__1);}}}
|
2930
|
-
INSN_ENTRY(putobject_OP_INT2FIX_O_0_C_){START_OF_ORIGINAL_INSN(putobject_OP_INT2FIX_O_0_C_);
|
2931
|
-
{
|
2932
|
-
#define val INT2FIX(0)
|
2933
|
-
|
2934
|
-
|
2935
|
-
DEBUG_ENTER_INSN("putobject_OP_INT2FIX_O_0_C_");
|
2936
|
-
ADD_PC(1+0);
|
2937
|
-
PREFETCH(GET_PC());
|
2938
|
-
#define CURRENT_INSN_putobject_OP_INT2FIX_O_0_C_ 1
|
2939
|
-
#define INSN_IS_SC() 0
|
2940
|
-
#define INSN_LABEL(lab) LABEL_putobject_OP_INT2FIX_O_0_C__##lab
|
2941
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2942
|
-
COLLECT_USAGE_INSN(BIN(putobject_OP_INT2FIX_O_0_C_));
|
2943
|
-
{
|
2944
|
-
#line 334 "insns.def"
|
2945
|
-
/* */
|
2946
|
-
|
2947
|
-
#line 2948 "vm.inc"
|
2948
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2949
|
-
PUSH(val);
|
2950
|
-
#undef val
|
2951
|
-
#undef CURRENT_INSN_putobject_OP_INT2FIX_O_0_C_
|
2952
|
-
#undef INSN_IS_SC
|
2953
|
-
#undef INSN_LABEL
|
2954
|
-
#undef LABEL_IS_SC
|
2955
|
-
END_INSN(putobject_OP_INT2FIX_O_0_C_);}}}
|
2956
|
-
INSN_ENTRY(putobject_OP_INT2FIX_O_1_C_){START_OF_ORIGINAL_INSN(putobject_OP_INT2FIX_O_1_C_);
|
2957
|
-
{
|
2958
|
-
#define val INT2FIX(1)
|
2959
|
-
|
2960
|
-
|
2961
|
-
DEBUG_ENTER_INSN("putobject_OP_INT2FIX_O_1_C_");
|
2962
|
-
ADD_PC(1+0);
|
2963
|
-
PREFETCH(GET_PC());
|
2964
|
-
#define CURRENT_INSN_putobject_OP_INT2FIX_O_1_C_ 1
|
2965
|
-
#define INSN_IS_SC() 0
|
2966
|
-
#define INSN_LABEL(lab) LABEL_putobject_OP_INT2FIX_O_1_C__##lab
|
2967
|
-
#define LABEL_IS_SC(lab) LABEL_##lab##_##t
|
2968
|
-
COLLECT_USAGE_INSN(BIN(putobject_OP_INT2FIX_O_1_C_));
|
2969
|
-
{
|
2970
|
-
#line 334 "insns.def"
|
2971
|
-
/* */
|
2972
|
-
|
2973
|
-
#line 2974 "vm.inc"
|
2974
|
-
CHECK_VM_STACK_OVERFLOW_FOR_INSN(VM_REG_CFP, 1);
|
2975
|
-
PUSH(val);
|
2976
|
-
#undef val
|
2977
|
-
#undef CURRENT_INSN_putobject_OP_INT2FIX_O_1_C_
|
2978
|
-
#undef INSN_IS_SC
|
2979
|
-
#undef INSN_LABEL
|
2980
|
-
#undef LABEL_IS_SC
|
2981
|
-
END_INSN(putobject_OP_INT2FIX_O_1_C_);}}}
|
2982
|
-
INSN_ENTRY(trace_nop){
|
2983
|
-
{
|
2984
|
-
{
|
2985
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
2986
|
-
DISPATCH_ORIGINAL_INSN(nop);
|
2987
|
-
|
2988
|
-
END_INSN(trace_nop);}}}
|
2989
|
-
INSN_ENTRY(trace_getlocal){
|
2990
|
-
{
|
2991
|
-
{
|
2992
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
2993
|
-
DISPATCH_ORIGINAL_INSN(getlocal);
|
2994
|
-
|
2995
|
-
END_INSN(trace_getlocal);}}}
|
2996
|
-
INSN_ENTRY(trace_setlocal){
|
2997
|
-
{
|
2998
|
-
{
|
2999
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3000
|
-
DISPATCH_ORIGINAL_INSN(setlocal);
|
3001
|
-
|
3002
|
-
END_INSN(trace_setlocal);}}}
|
3003
|
-
INSN_ENTRY(trace_getblockparam){
|
3004
|
-
{
|
3005
|
-
{
|
3006
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3007
|
-
DISPATCH_ORIGINAL_INSN(getblockparam);
|
3008
|
-
|
3009
|
-
END_INSN(trace_getblockparam);}}}
|
3010
|
-
INSN_ENTRY(trace_setblockparam){
|
3011
|
-
{
|
3012
|
-
{
|
3013
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3014
|
-
DISPATCH_ORIGINAL_INSN(setblockparam);
|
3015
|
-
|
3016
|
-
END_INSN(trace_setblockparam);}}}
|
3017
|
-
INSN_ENTRY(trace_getspecial){
|
3018
|
-
{
|
3019
|
-
{
|
3020
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3021
|
-
DISPATCH_ORIGINAL_INSN(getspecial);
|
3022
|
-
|
3023
|
-
END_INSN(trace_getspecial);}}}
|
3024
|
-
INSN_ENTRY(trace_setspecial){
|
3025
|
-
{
|
3026
|
-
{
|
3027
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3028
|
-
DISPATCH_ORIGINAL_INSN(setspecial);
|
3029
|
-
|
3030
|
-
END_INSN(trace_setspecial);}}}
|
3031
|
-
INSN_ENTRY(trace_getinstancevariable){
|
3032
|
-
{
|
3033
|
-
{
|
3034
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3035
|
-
DISPATCH_ORIGINAL_INSN(getinstancevariable);
|
3036
|
-
|
3037
|
-
END_INSN(trace_getinstancevariable);}}}
|
3038
|
-
INSN_ENTRY(trace_setinstancevariable){
|
3039
|
-
{
|
3040
|
-
{
|
3041
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3042
|
-
DISPATCH_ORIGINAL_INSN(setinstancevariable);
|
3043
|
-
|
3044
|
-
END_INSN(trace_setinstancevariable);}}}
|
3045
|
-
INSN_ENTRY(trace_getclassvariable){
|
3046
|
-
{
|
3047
|
-
{
|
3048
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3049
|
-
DISPATCH_ORIGINAL_INSN(getclassvariable);
|
3050
|
-
|
3051
|
-
END_INSN(trace_getclassvariable);}}}
|
3052
|
-
INSN_ENTRY(trace_setclassvariable){
|
3053
|
-
{
|
3054
|
-
{
|
3055
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3056
|
-
DISPATCH_ORIGINAL_INSN(setclassvariable);
|
3057
|
-
|
3058
|
-
END_INSN(trace_setclassvariable);}}}
|
3059
|
-
INSN_ENTRY(trace_getconstant){
|
3060
|
-
{
|
3061
|
-
{
|
3062
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3063
|
-
DISPATCH_ORIGINAL_INSN(getconstant);
|
3064
|
-
|
3065
|
-
END_INSN(trace_getconstant);}}}
|
3066
|
-
INSN_ENTRY(trace_setconstant){
|
3067
|
-
{
|
3068
|
-
{
|
3069
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3070
|
-
DISPATCH_ORIGINAL_INSN(setconstant);
|
3071
|
-
|
3072
|
-
END_INSN(trace_setconstant);}}}
|
3073
|
-
INSN_ENTRY(trace_getglobal){
|
3074
|
-
{
|
3075
|
-
{
|
3076
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3077
|
-
DISPATCH_ORIGINAL_INSN(getglobal);
|
3078
|
-
|
3079
|
-
END_INSN(trace_getglobal);}}}
|
3080
|
-
INSN_ENTRY(trace_setglobal){
|
3081
|
-
{
|
3082
|
-
{
|
3083
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3084
|
-
DISPATCH_ORIGINAL_INSN(setglobal);
|
3085
|
-
|
3086
|
-
END_INSN(trace_setglobal);}}}
|
3087
|
-
INSN_ENTRY(trace_putnil){
|
3088
|
-
{
|
3089
|
-
{
|
3090
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3091
|
-
DISPATCH_ORIGINAL_INSN(putnil);
|
3092
|
-
|
3093
|
-
END_INSN(trace_putnil);}}}
|
3094
|
-
INSN_ENTRY(trace_putself){
|
3095
|
-
{
|
3096
|
-
{
|
3097
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3098
|
-
DISPATCH_ORIGINAL_INSN(putself);
|
3099
|
-
|
3100
|
-
END_INSN(trace_putself);}}}
|
3101
|
-
INSN_ENTRY(trace_putobject){
|
3102
|
-
{
|
3103
|
-
{
|
3104
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3105
|
-
DISPATCH_ORIGINAL_INSN(putobject);
|
3106
|
-
|
3107
|
-
END_INSN(trace_putobject);}}}
|
3108
|
-
INSN_ENTRY(trace_putspecialobject){
|
3109
|
-
{
|
3110
|
-
{
|
3111
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3112
|
-
DISPATCH_ORIGINAL_INSN(putspecialobject);
|
3113
|
-
|
3114
|
-
END_INSN(trace_putspecialobject);}}}
|
3115
|
-
INSN_ENTRY(trace_putiseq){
|
3116
|
-
{
|
3117
|
-
{
|
3118
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3119
|
-
DISPATCH_ORIGINAL_INSN(putiseq);
|
3120
|
-
|
3121
|
-
END_INSN(trace_putiseq);}}}
|
3122
|
-
INSN_ENTRY(trace_putstring){
|
3123
|
-
{
|
3124
|
-
{
|
3125
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3126
|
-
DISPATCH_ORIGINAL_INSN(putstring);
|
3127
|
-
|
3128
|
-
END_INSN(trace_putstring);}}}
|
3129
|
-
INSN_ENTRY(trace_concatstrings){
|
3130
|
-
{
|
3131
|
-
{
|
3132
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3133
|
-
DISPATCH_ORIGINAL_INSN(concatstrings);
|
3134
|
-
|
3135
|
-
END_INSN(trace_concatstrings);}}}
|
3136
|
-
INSN_ENTRY(trace_tostring){
|
3137
|
-
{
|
3138
|
-
{
|
3139
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3140
|
-
DISPATCH_ORIGINAL_INSN(tostring);
|
3141
|
-
|
3142
|
-
END_INSN(trace_tostring);}}}
|
3143
|
-
INSN_ENTRY(trace_freezestring){
|
3144
|
-
{
|
3145
|
-
{
|
3146
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3147
|
-
DISPATCH_ORIGINAL_INSN(freezestring);
|
3148
|
-
|
3149
|
-
END_INSN(trace_freezestring);}}}
|
3150
|
-
INSN_ENTRY(trace_toregexp){
|
3151
|
-
{
|
3152
|
-
{
|
3153
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3154
|
-
DISPATCH_ORIGINAL_INSN(toregexp);
|
3155
|
-
|
3156
|
-
END_INSN(trace_toregexp);}}}
|
3157
|
-
INSN_ENTRY(trace_intern){
|
3158
|
-
{
|
3159
|
-
{
|
3160
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3161
|
-
DISPATCH_ORIGINAL_INSN(intern);
|
3162
|
-
|
3163
|
-
END_INSN(trace_intern);}}}
|
3164
|
-
INSN_ENTRY(trace_newarray){
|
3165
|
-
{
|
3166
|
-
{
|
3167
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3168
|
-
DISPATCH_ORIGINAL_INSN(newarray);
|
3169
|
-
|
3170
|
-
END_INSN(trace_newarray);}}}
|
3171
|
-
INSN_ENTRY(trace_duparray){
|
3172
|
-
{
|
3173
|
-
{
|
3174
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3175
|
-
DISPATCH_ORIGINAL_INSN(duparray);
|
3176
|
-
|
3177
|
-
END_INSN(trace_duparray);}}}
|
3178
|
-
INSN_ENTRY(trace_expandarray){
|
3179
|
-
{
|
3180
|
-
{
|
3181
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3182
|
-
DISPATCH_ORIGINAL_INSN(expandarray);
|
3183
|
-
|
3184
|
-
END_INSN(trace_expandarray);}}}
|
3185
|
-
INSN_ENTRY(trace_concatarray){
|
3186
|
-
{
|
3187
|
-
{
|
3188
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3189
|
-
DISPATCH_ORIGINAL_INSN(concatarray);
|
3190
|
-
|
3191
|
-
END_INSN(trace_concatarray);}}}
|
3192
|
-
INSN_ENTRY(trace_splatarray){
|
3193
|
-
{
|
3194
|
-
{
|
3195
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3196
|
-
DISPATCH_ORIGINAL_INSN(splatarray);
|
3197
|
-
|
3198
|
-
END_INSN(trace_splatarray);}}}
|
3199
|
-
INSN_ENTRY(trace_newhash){
|
3200
|
-
{
|
3201
|
-
{
|
3202
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3203
|
-
DISPATCH_ORIGINAL_INSN(newhash);
|
3204
|
-
|
3205
|
-
END_INSN(trace_newhash);}}}
|
3206
|
-
INSN_ENTRY(trace_newrange){
|
3207
|
-
{
|
3208
|
-
{
|
3209
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3210
|
-
DISPATCH_ORIGINAL_INSN(newrange);
|
3211
|
-
|
3212
|
-
END_INSN(trace_newrange);}}}
|
3213
|
-
INSN_ENTRY(trace_pop){
|
3214
|
-
{
|
3215
|
-
{
|
3216
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3217
|
-
DISPATCH_ORIGINAL_INSN(pop);
|
3218
|
-
|
3219
|
-
END_INSN(trace_pop);}}}
|
3220
|
-
INSN_ENTRY(trace_dup){
|
3221
|
-
{
|
3222
|
-
{
|
3223
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3224
|
-
DISPATCH_ORIGINAL_INSN(dup);
|
3225
|
-
|
3226
|
-
END_INSN(trace_dup);}}}
|
3227
|
-
INSN_ENTRY(trace_dupn){
|
3228
|
-
{
|
3229
|
-
{
|
3230
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3231
|
-
DISPATCH_ORIGINAL_INSN(dupn);
|
3232
|
-
|
3233
|
-
END_INSN(trace_dupn);}}}
|
3234
|
-
INSN_ENTRY(trace_swap){
|
3235
|
-
{
|
3236
|
-
{
|
3237
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3238
|
-
DISPATCH_ORIGINAL_INSN(swap);
|
3239
|
-
|
3240
|
-
END_INSN(trace_swap);}}}
|
3241
|
-
INSN_ENTRY(trace_reverse){
|
3242
|
-
{
|
3243
|
-
{
|
3244
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3245
|
-
DISPATCH_ORIGINAL_INSN(reverse);
|
3246
|
-
|
3247
|
-
END_INSN(trace_reverse);}}}
|
3248
|
-
INSN_ENTRY(trace_reput){
|
3249
|
-
{
|
3250
|
-
{
|
3251
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3252
|
-
DISPATCH_ORIGINAL_INSN(reput);
|
3253
|
-
|
3254
|
-
END_INSN(trace_reput);}}}
|
3255
|
-
INSN_ENTRY(trace_topn){
|
3256
|
-
{
|
3257
|
-
{
|
3258
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3259
|
-
DISPATCH_ORIGINAL_INSN(topn);
|
3260
|
-
|
3261
|
-
END_INSN(trace_topn);}}}
|
3262
|
-
INSN_ENTRY(trace_setn){
|
3263
|
-
{
|
3264
|
-
{
|
3265
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3266
|
-
DISPATCH_ORIGINAL_INSN(setn);
|
3267
|
-
|
3268
|
-
END_INSN(trace_setn);}}}
|
3269
|
-
INSN_ENTRY(trace_adjuststack){
|
3270
|
-
{
|
3271
|
-
{
|
3272
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3273
|
-
DISPATCH_ORIGINAL_INSN(adjuststack);
|
3274
|
-
|
3275
|
-
END_INSN(trace_adjuststack);}}}
|
3276
|
-
INSN_ENTRY(trace_defined){
|
3277
|
-
{
|
3278
|
-
{
|
3279
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3280
|
-
DISPATCH_ORIGINAL_INSN(defined);
|
3281
|
-
|
3282
|
-
END_INSN(trace_defined);}}}
|
3283
|
-
INSN_ENTRY(trace_checkmatch){
|
3284
|
-
{
|
3285
|
-
{
|
3286
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3287
|
-
DISPATCH_ORIGINAL_INSN(checkmatch);
|
3288
|
-
|
3289
|
-
END_INSN(trace_checkmatch);}}}
|
3290
|
-
INSN_ENTRY(trace_checkkeyword){
|
3291
|
-
{
|
3292
|
-
{
|
3293
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3294
|
-
DISPATCH_ORIGINAL_INSN(checkkeyword);
|
3295
|
-
|
3296
|
-
END_INSN(trace_checkkeyword);}}}
|
3297
|
-
INSN_ENTRY(trace_tracecoverage){
|
3298
|
-
{
|
3299
|
-
{
|
3300
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3301
|
-
DISPATCH_ORIGINAL_INSN(tracecoverage);
|
3302
|
-
|
3303
|
-
END_INSN(trace_tracecoverage);}}}
|
3304
|
-
INSN_ENTRY(trace_defineclass){
|
3305
|
-
{
|
3306
|
-
{
|
3307
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3308
|
-
DISPATCH_ORIGINAL_INSN(defineclass);
|
3309
|
-
|
3310
|
-
END_INSN(trace_defineclass);}}}
|
3311
|
-
INSN_ENTRY(trace_send){
|
3312
|
-
{
|
3313
|
-
{
|
3314
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3315
|
-
DISPATCH_ORIGINAL_INSN(send);
|
3316
|
-
|
3317
|
-
END_INSN(trace_send);}}}
|
3318
|
-
INSN_ENTRY(trace_opt_str_freeze){
|
3319
|
-
{
|
3320
|
-
{
|
3321
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3322
|
-
DISPATCH_ORIGINAL_INSN(opt_str_freeze);
|
3323
|
-
|
3324
|
-
END_INSN(trace_opt_str_freeze);}}}
|
3325
|
-
INSN_ENTRY(trace_opt_str_uminus){
|
3326
|
-
{
|
3327
|
-
{
|
3328
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3329
|
-
DISPATCH_ORIGINAL_INSN(opt_str_uminus);
|
3330
|
-
|
3331
|
-
END_INSN(trace_opt_str_uminus);}}}
|
3332
|
-
INSN_ENTRY(trace_opt_newarray_max){
|
3333
|
-
{
|
3334
|
-
{
|
3335
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3336
|
-
DISPATCH_ORIGINAL_INSN(opt_newarray_max);
|
3337
|
-
|
3338
|
-
END_INSN(trace_opt_newarray_max);}}}
|
3339
|
-
INSN_ENTRY(trace_opt_newarray_min){
|
3340
|
-
{
|
3341
|
-
{
|
3342
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3343
|
-
DISPATCH_ORIGINAL_INSN(opt_newarray_min);
|
3344
|
-
|
3345
|
-
END_INSN(trace_opt_newarray_min);}}}
|
3346
|
-
INSN_ENTRY(trace_opt_send_without_block){
|
3347
|
-
{
|
3348
|
-
{
|
3349
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3350
|
-
DISPATCH_ORIGINAL_INSN(opt_send_without_block);
|
3351
|
-
|
3352
|
-
END_INSN(trace_opt_send_without_block);}}}
|
3353
|
-
INSN_ENTRY(trace_invokesuper){
|
3354
|
-
{
|
3355
|
-
{
|
3356
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3357
|
-
DISPATCH_ORIGINAL_INSN(invokesuper);
|
3358
|
-
|
3359
|
-
END_INSN(trace_invokesuper);}}}
|
3360
|
-
INSN_ENTRY(trace_invokeblock){
|
3361
|
-
{
|
3362
|
-
{
|
3363
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3364
|
-
DISPATCH_ORIGINAL_INSN(invokeblock);
|
3365
|
-
|
3366
|
-
END_INSN(trace_invokeblock);}}}
|
3367
|
-
INSN_ENTRY(trace_leave){
|
3368
|
-
{
|
3369
|
-
{
|
3370
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3371
|
-
DISPATCH_ORIGINAL_INSN(leave);
|
3372
|
-
|
3373
|
-
END_INSN(trace_leave);}}}
|
3374
|
-
INSN_ENTRY(trace_throw){
|
3375
|
-
{
|
3376
|
-
{
|
3377
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3378
|
-
DISPATCH_ORIGINAL_INSN(throw);
|
3379
|
-
|
3380
|
-
END_INSN(trace_throw);}}}
|
3381
|
-
INSN_ENTRY(trace_jump){
|
3382
|
-
{
|
3383
|
-
{
|
3384
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3385
|
-
DISPATCH_ORIGINAL_INSN(jump);
|
3386
|
-
|
3387
|
-
END_INSN(trace_jump);}}}
|
3388
|
-
INSN_ENTRY(trace_branchif){
|
3389
|
-
{
|
3390
|
-
{
|
3391
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3392
|
-
DISPATCH_ORIGINAL_INSN(branchif);
|
3393
|
-
|
3394
|
-
END_INSN(trace_branchif);}}}
|
3395
|
-
INSN_ENTRY(trace_branchunless){
|
3396
|
-
{
|
3397
|
-
{
|
3398
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3399
|
-
DISPATCH_ORIGINAL_INSN(branchunless);
|
3400
|
-
|
3401
|
-
END_INSN(trace_branchunless);}}}
|
3402
|
-
INSN_ENTRY(trace_branchnil){
|
3403
|
-
{
|
3404
|
-
{
|
3405
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3406
|
-
DISPATCH_ORIGINAL_INSN(branchnil);
|
3407
|
-
|
3408
|
-
END_INSN(trace_branchnil);}}}
|
3409
|
-
INSN_ENTRY(trace_branchiftype){
|
3410
|
-
{
|
3411
|
-
{
|
3412
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3413
|
-
DISPATCH_ORIGINAL_INSN(branchiftype);
|
3414
|
-
|
3415
|
-
END_INSN(trace_branchiftype);}}}
|
3416
|
-
INSN_ENTRY(trace_getinlinecache){
|
3417
|
-
{
|
3418
|
-
{
|
3419
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3420
|
-
DISPATCH_ORIGINAL_INSN(getinlinecache);
|
3421
|
-
|
3422
|
-
END_INSN(trace_getinlinecache);}}}
|
3423
|
-
INSN_ENTRY(trace_setinlinecache){
|
3424
|
-
{
|
3425
|
-
{
|
3426
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3427
|
-
DISPATCH_ORIGINAL_INSN(setinlinecache);
|
3428
|
-
|
3429
|
-
END_INSN(trace_setinlinecache);}}}
|
3430
|
-
INSN_ENTRY(trace_once){
|
3431
|
-
{
|
3432
|
-
{
|
3433
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3434
|
-
DISPATCH_ORIGINAL_INSN(once);
|
3435
|
-
|
3436
|
-
END_INSN(trace_once);}}}
|
3437
|
-
INSN_ENTRY(trace_opt_case_dispatch){
|
3438
|
-
{
|
3439
|
-
{
|
3440
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3441
|
-
DISPATCH_ORIGINAL_INSN(opt_case_dispatch);
|
3442
|
-
|
3443
|
-
END_INSN(trace_opt_case_dispatch);}}}
|
3444
|
-
INSN_ENTRY(trace_opt_plus){
|
3445
|
-
{
|
3446
|
-
{
|
3447
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3448
|
-
DISPATCH_ORIGINAL_INSN(opt_plus);
|
3449
|
-
|
3450
|
-
END_INSN(trace_opt_plus);}}}
|
3451
|
-
INSN_ENTRY(trace_opt_minus){
|
3452
|
-
{
|
3453
|
-
{
|
3454
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3455
|
-
DISPATCH_ORIGINAL_INSN(opt_minus);
|
3456
|
-
|
3457
|
-
END_INSN(trace_opt_minus);}}}
|
3458
|
-
INSN_ENTRY(trace_opt_mult){
|
3459
|
-
{
|
3460
|
-
{
|
3461
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3462
|
-
DISPATCH_ORIGINAL_INSN(opt_mult);
|
3463
|
-
|
3464
|
-
END_INSN(trace_opt_mult);}}}
|
3465
|
-
INSN_ENTRY(trace_opt_div){
|
3466
|
-
{
|
3467
|
-
{
|
3468
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3469
|
-
DISPATCH_ORIGINAL_INSN(opt_div);
|
3470
|
-
|
3471
|
-
END_INSN(trace_opt_div);}}}
|
3472
|
-
INSN_ENTRY(trace_opt_mod){
|
3473
|
-
{
|
3474
|
-
{
|
3475
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3476
|
-
DISPATCH_ORIGINAL_INSN(opt_mod);
|
3477
|
-
|
3478
|
-
END_INSN(trace_opt_mod);}}}
|
3479
|
-
INSN_ENTRY(trace_opt_eq){
|
3480
|
-
{
|
3481
|
-
{
|
3482
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3483
|
-
DISPATCH_ORIGINAL_INSN(opt_eq);
|
3484
|
-
|
3485
|
-
END_INSN(trace_opt_eq);}}}
|
3486
|
-
INSN_ENTRY(trace_opt_neq){
|
3487
|
-
{
|
3488
|
-
{
|
3489
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3490
|
-
DISPATCH_ORIGINAL_INSN(opt_neq);
|
3491
|
-
|
3492
|
-
END_INSN(trace_opt_neq);}}}
|
3493
|
-
INSN_ENTRY(trace_opt_lt){
|
3494
|
-
{
|
3495
|
-
{
|
3496
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3497
|
-
DISPATCH_ORIGINAL_INSN(opt_lt);
|
3498
|
-
|
3499
|
-
END_INSN(trace_opt_lt);}}}
|
3500
|
-
INSN_ENTRY(trace_opt_le){
|
3501
|
-
{
|
3502
|
-
{
|
3503
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3504
|
-
DISPATCH_ORIGINAL_INSN(opt_le);
|
3505
|
-
|
3506
|
-
END_INSN(trace_opt_le);}}}
|
3507
|
-
INSN_ENTRY(trace_opt_gt){
|
3508
|
-
{
|
3509
|
-
{
|
3510
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3511
|
-
DISPATCH_ORIGINAL_INSN(opt_gt);
|
3512
|
-
|
3513
|
-
END_INSN(trace_opt_gt);}}}
|
3514
|
-
INSN_ENTRY(trace_opt_ge){
|
3515
|
-
{
|
3516
|
-
{
|
3517
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3518
|
-
DISPATCH_ORIGINAL_INSN(opt_ge);
|
3519
|
-
|
3520
|
-
END_INSN(trace_opt_ge);}}}
|
3521
|
-
INSN_ENTRY(trace_opt_ltlt){
|
3522
|
-
{
|
3523
|
-
{
|
3524
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3525
|
-
DISPATCH_ORIGINAL_INSN(opt_ltlt);
|
3526
|
-
|
3527
|
-
END_INSN(trace_opt_ltlt);}}}
|
3528
|
-
INSN_ENTRY(trace_opt_aref){
|
3529
|
-
{
|
3530
|
-
{
|
3531
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3532
|
-
DISPATCH_ORIGINAL_INSN(opt_aref);
|
3533
|
-
|
3534
|
-
END_INSN(trace_opt_aref);}}}
|
3535
|
-
INSN_ENTRY(trace_opt_aset){
|
3536
|
-
{
|
3537
|
-
{
|
3538
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3539
|
-
DISPATCH_ORIGINAL_INSN(opt_aset);
|
3540
|
-
|
3541
|
-
END_INSN(trace_opt_aset);}}}
|
3542
|
-
INSN_ENTRY(trace_opt_aset_with){
|
3543
|
-
{
|
3544
|
-
{
|
3545
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3546
|
-
DISPATCH_ORIGINAL_INSN(opt_aset_with);
|
3547
|
-
|
3548
|
-
END_INSN(trace_opt_aset_with);}}}
|
3549
|
-
INSN_ENTRY(trace_opt_aref_with){
|
3550
|
-
{
|
3551
|
-
{
|
3552
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3553
|
-
DISPATCH_ORIGINAL_INSN(opt_aref_with);
|
3554
|
-
|
3555
|
-
END_INSN(trace_opt_aref_with);}}}
|
3556
|
-
INSN_ENTRY(trace_opt_length){
|
3557
|
-
{
|
3558
|
-
{
|
3559
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3560
|
-
DISPATCH_ORIGINAL_INSN(opt_length);
|
3561
|
-
|
3562
|
-
END_INSN(trace_opt_length);}}}
|
3563
|
-
INSN_ENTRY(trace_opt_size){
|
3564
|
-
{
|
3565
|
-
{
|
3566
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3567
|
-
DISPATCH_ORIGINAL_INSN(opt_size);
|
3568
|
-
|
3569
|
-
END_INSN(trace_opt_size);}}}
|
3570
|
-
INSN_ENTRY(trace_opt_empty_p){
|
3571
|
-
{
|
3572
|
-
{
|
3573
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3574
|
-
DISPATCH_ORIGINAL_INSN(opt_empty_p);
|
3575
|
-
|
3576
|
-
END_INSN(trace_opt_empty_p);}}}
|
3577
|
-
INSN_ENTRY(trace_opt_succ){
|
3578
|
-
{
|
3579
|
-
{
|
3580
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3581
|
-
DISPATCH_ORIGINAL_INSN(opt_succ);
|
3582
|
-
|
3583
|
-
END_INSN(trace_opt_succ);}}}
|
3584
|
-
INSN_ENTRY(trace_opt_not){
|
3585
|
-
{
|
3586
|
-
{
|
3587
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3588
|
-
DISPATCH_ORIGINAL_INSN(opt_not);
|
3589
|
-
|
3590
|
-
END_INSN(trace_opt_not);}}}
|
3591
|
-
INSN_ENTRY(trace_opt_regexpmatch1){
|
3592
|
-
{
|
3593
|
-
{
|
3594
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3595
|
-
DISPATCH_ORIGINAL_INSN(opt_regexpmatch1);
|
3596
|
-
|
3597
|
-
END_INSN(trace_opt_regexpmatch1);}}}
|
3598
|
-
INSN_ENTRY(trace_opt_regexpmatch2){
|
3599
|
-
{
|
3600
|
-
{
|
3601
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3602
|
-
DISPATCH_ORIGINAL_INSN(opt_regexpmatch2);
|
3603
|
-
|
3604
|
-
END_INSN(trace_opt_regexpmatch2);}}}
|
3605
|
-
INSN_ENTRY(trace_opt_call_c_function){
|
3606
|
-
{
|
3607
|
-
{
|
3608
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3609
|
-
DISPATCH_ORIGINAL_INSN(opt_call_c_function);
|
3610
|
-
|
3611
|
-
END_INSN(trace_opt_call_c_function);}}}
|
3612
|
-
INSN_ENTRY(trace_bitblt){
|
3613
|
-
{
|
3614
|
-
{
|
3615
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3616
|
-
DISPATCH_ORIGINAL_INSN(bitblt);
|
3617
|
-
|
3618
|
-
END_INSN(trace_bitblt);}}}
|
3619
|
-
INSN_ENTRY(trace_answer){
|
3620
|
-
{
|
3621
|
-
{
|
3622
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3623
|
-
DISPATCH_ORIGINAL_INSN(answer);
|
3624
|
-
|
3625
|
-
END_INSN(trace_answer);}}}
|
3626
|
-
INSN_ENTRY(trace_getlocal_OP__WC__0){
|
3627
|
-
{
|
3628
|
-
{
|
3629
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3630
|
-
DISPATCH_ORIGINAL_INSN(getlocal_OP__WC__0);
|
3631
|
-
|
3632
|
-
END_INSN(trace_getlocal_OP__WC__0);}}}
|
3633
|
-
INSN_ENTRY(trace_getlocal_OP__WC__1){
|
3634
|
-
{
|
3635
|
-
{
|
3636
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3637
|
-
DISPATCH_ORIGINAL_INSN(getlocal_OP__WC__1);
|
3638
|
-
|
3639
|
-
END_INSN(trace_getlocal_OP__WC__1);}}}
|
3640
|
-
INSN_ENTRY(trace_setlocal_OP__WC__0){
|
3641
|
-
{
|
3642
|
-
{
|
3643
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3644
|
-
DISPATCH_ORIGINAL_INSN(setlocal_OP__WC__0);
|
3645
|
-
|
3646
|
-
END_INSN(trace_setlocal_OP__WC__0);}}}
|
3647
|
-
INSN_ENTRY(trace_setlocal_OP__WC__1){
|
3648
|
-
{
|
3649
|
-
{
|
3650
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3651
|
-
DISPATCH_ORIGINAL_INSN(setlocal_OP__WC__1);
|
3652
|
-
|
3653
|
-
END_INSN(trace_setlocal_OP__WC__1);}}}
|
3654
|
-
INSN_ENTRY(trace_putobject_OP_INT2FIX_O_0_C_){
|
3655
|
-
{
|
3656
|
-
{
|
3657
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3658
|
-
DISPATCH_ORIGINAL_INSN(putobject_OP_INT2FIX_O_0_C_);
|
3659
|
-
|
3660
|
-
END_INSN(trace_putobject_OP_INT2FIX_O_0_C_);}}}
|
3661
|
-
INSN_ENTRY(trace_putobject_OP_INT2FIX_O_1_C_){
|
3662
|
-
{
|
3663
|
-
{
|
3664
|
-
vm_trace(ec, GET_CFP(), GET_PC());
|
3665
|
-
DISPATCH_ORIGINAL_INSN(putobject_OP_INT2FIX_O_1_C_);
|
3666
|
-
|
3667
|
-
END_INSN(trace_putobject_OP_INT2FIX_O_1_C_);}}}
|