debase-ruby_core_source 0.10.2 → 0.10.11
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 +5 -5
- data/CHANGELOG.md +34 -0
- data/README.md +6 -2
- data/Rakefile +6 -3
- data/debase-ruby_core_source.gemspec +2 -1
- data/lib/debase/ruby_core_source.rb +6 -5
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/addr2line.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/ccan/build_assert/build_assert.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/ccan/check_type/check_type.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/ccan/container_of/container_of.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/ccan/list/list.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/ccan/str/str.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/constant.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/debug_counter.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/dln.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/encindex.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/eval_intern.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/gc.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/id.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/id_table.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/insns.inc +2 -2
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/insns_info.inc +157 -157
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/internal.h +5 -4
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/iseq.h +2 -2
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/known_errors.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/method.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/node.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/node_name.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/opt_sc.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/optinsn.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/optunifs.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/parse.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/probes_helper.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/regenc.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/regint.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/regparse.h +0 -0
- data/lib/debase/ruby_core_source/ruby-2.5.1-p57/revision.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/ruby_assert.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/ruby_atomic.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/siphash.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/symbol.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/thread_pthread.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/thread_win32.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/timev.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/transcode_data.h +0 -0
- data/lib/debase/ruby_core_source/ruby-2.5.1-p57/version.h +73 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/vm.inc +13 -13
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/vm_call_iseq_optimized.inc +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/vm_core.h +3 -4
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.5.1-p57}/vm_debug.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/vm_exec.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/vm_insnhelper.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/vm_opts.h +1 -2
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.5.1-p57}/vmtc.inc +2 -2
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/addr2line.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/ccan/build_assert/build_assert.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/ccan/check_type/check_type.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/ccan/container_of/container_of.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/ccan/list/list.h +20 -5
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/ccan/str/str.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/constant.h +1 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/debug_counter.h +283 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/dln.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/encindex.h +2 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/eval_intern.h +45 -53
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/gc.h +2 -3
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/hrtime.h +168 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/id.h +4 -2
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/id_table.h +0 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/insns.inc +249 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/insns_info.inc +9374 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/internal.h +608 -100
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/iseq.h +127 -91
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/known_errors.inc +477 -432
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/method.h +28 -15
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/mjit.h +148 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/mjit_compile.inc +4224 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/node.h +449 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/node_name.inc +6 -18
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/opt_sc.inc +109 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/optinsn.inc +128 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/optunifs.inc +43 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/parse.h +210 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/probes_helper.h +42 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/regenc.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/regint.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/regparse.h +1 -1
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/revision.h +1 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/ruby_assert.h +6 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/ruby_atomic.h +14 -3
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/siphash.h +1 -1
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/symbol.h +1 -1
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/thread_pthread.h +75 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/thread_win32.h +0 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/timev.h +53 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/transcode_data.h +0 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/transient_heap.h +60 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/version.h +7 -7
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/vm.inc +4502 -0
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/vm_call_iseq_optimized.inc +213 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/vm_core.h +385 -182
- data/lib/debase/ruby_core_source/{ruby-2.5.0-rc1 → ruby-2.6.0-p0}/vm_debug.h +0 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/vm_exec.h +33 -13
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/vm_insnhelper.h +316 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.0-p0}/vm_opts.h +18 -5
- data/lib/debase/ruby_core_source/ruby-2.6.0-p0/vmtc.inc +243 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/addr2line.h +21 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/ccan/build_assert/build_assert.h +40 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/ccan/check_type/check_type.h +63 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/ccan/container_of/container_of.h +142 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/ccan/list/list.h +788 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/ccan/str/str.h +16 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/constant.h +51 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/debug_counter.h +283 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/dln.h +51 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/encindex.h +69 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/eval_intern.h +333 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/gc.h +116 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/hrtime.h +168 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/id.h +252 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/id_table.h +31 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/insns.inc +249 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/insns_info.inc +9374 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/internal.h +2470 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/iseq.h +304 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/known_errors.inc +791 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/method.h +229 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/mjit.h +148 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/mjit_compile.inc +4226 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/node.h +449 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/node_name.inc +200 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/opt_sc.inc +109 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/optinsn.inc +128 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/optunifs.inc +43 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.5-p114}/parse.h +47 -31
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/probes_helper.h +42 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/regenc.h +254 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/regint.h +938 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/regparse.h +370 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/revision.h +1 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/ruby_assert.h +60 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/ruby_atomic.h +244 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/siphash.h +48 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/symbol.h +112 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/thread_pthread.h +75 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/thread_win32.h +36 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/timev.h +53 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/transcode_data.h +139 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/transient_heap.h +60 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.6.5-p114}/version.h +7 -7
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vm.inc +4504 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vm_call_iseq_optimized.inc +213 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vm_core.h +1910 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vm_debug.h +37 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vm_exec.h +202 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vm_insnhelper.h +316 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vm_opts.h +70 -0
- data/lib/debase/ruby_core_source/ruby-2.6.5-p114/vmtc.inc +243 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/addr2line.h +21 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/builtin.h +78 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/ccan/build_assert/build_assert.h +40 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/ccan/check_type/check_type.h +63 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/ccan/container_of/container_of.h +142 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/ccan/list/list.h +788 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/ccan/str/str.h +16 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/constant.h +50 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/debug_counter.h +390 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/dln.h +51 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/encindex.h +69 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/eval_intern.h +312 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/gc.h +131 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/hrtime.h +168 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/id.h +290 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/id_table.h +34 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/insns.inc +253 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/insns_info.inc +9197 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/internal.h +2697 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/iseq.h +312 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/known_errors.inc +791 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/method.h +229 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/mjit.h +177 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/mjit_compile.inc +7779 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/node.h +476 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/node_name.inc +208 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/opt_sc.inc +109 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/optinsn.inc +128 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/optunifs.inc +43 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/parse.h +210 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/probes_helper.h +42 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/regenc.h +254 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/regint.h +938 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/regparse.h +370 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/revision.h +2 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/ruby_assert.h +15 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/ruby_atomic.h +244 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/siphash.h +48 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/symbol.h +119 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/thread_pthread.h +75 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/thread_win32.h +36 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/timev.h +56 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/transcode_data.h +139 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/transient_heap.h +62 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/variable.h +9 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/version.h +77 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/vm.inc +5466 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/vm_call_iseq_optimized.inc +237 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/vm_core.h +1968 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/vm_debug.h +34 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/vm_exec.h +193 -0
- data/lib/debase/ruby_core_source/{ruby-2.5.0-preview1 → ruby-2.7.0-p0}/vm_insnhelper.h +81 -64
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/vm_opts.h +72 -0
- data/lib/debase/ruby_core_source/ruby-2.7.0-p0/vmtc.inc +247 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/addr2line.h +20 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/builtin.h +83 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ccan/build_assert/build_assert.h +40 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ccan/check_type/check_type.h +63 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ccan/container_of/container_of.h +142 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ccan/list/list.h +788 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ccan/str/str.h +16 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/constant.h +55 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/debug_counter.h +423 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/dln.h +36 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/encindex.h +70 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/eval_intern.h +312 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/gc.h +140 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/hrtime.h +168 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/id.h +290 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/id_table.h +36 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/insns.inc +249 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/insns_info.inc +8979 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal.h +107 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/array.h +114 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/bignum.h +246 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/bits.h +566 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/class.h +168 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/compar.h +50 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/compile.h +32 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/compilers.h +108 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/complex.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/cont.h +25 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/dir.h +17 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/enc.h +20 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/encoding.h +28 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/enum.h +19 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/enumerator.h +22 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/error.h +131 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/eval.h +33 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/file.h +39 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/fixnum.h +185 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/gc.h +154 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/hash.h +240 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/imemo.h +243 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/inits.h +51 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/io.h +35 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/load.h +19 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/loadpath.h +17 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/math.h +24 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/missing.h +19 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/mjit.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/numeric.h +252 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/object.h +83 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/parse.h +23 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/proc.h +32 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/process.h +136 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/random.h +17 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/range.h +37 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/rational.h +69 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/re.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/sanitizers.h +191 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/scheduler.h +35 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/serial.h +24 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/signal.h +22 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/static_assert.h +17 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/string.h +135 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/struct.h +154 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/symbol.h +41 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/thread.h +60 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/time.h +35 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/transcode.h +21 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/util.h +31 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/variable.h +83 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/vm.h +135 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/internal/warnings.h +17 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/iseq.h +304 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/known_errors.inc +791 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/method.h +245 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/mjit.h +197 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/mjit_compile.inc +8082 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/node.h +484 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/node_name.inc +210 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/opt_sc.inc +109 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/optinsn.inc +128 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/optunifs.inc +43 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/parse.h +211 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/probes_helper.h +44 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ractor.h +271 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ractor_pub.h +50 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/regenc.h +254 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/regint.h +938 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/regparse.h +370 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/revision.h +2 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ruby_assert.h +15 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/ruby_atomic.h +236 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/siphash.h +48 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/symbol.h +119 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/thread_pthread.h +106 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/thread_win32.h +66 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/timev.h +57 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/transcode_data.h +138 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/transient_heap.h +61 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/variable.h +21 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/version.h +89 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm.inc +5360 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_call_iseq_optimized.inc +244 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_callinfo.h +457 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_core.h +1952 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_debug.h +116 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_exec.h +196 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_insnhelper.h +260 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_opts.h +73 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vm_sync.h +97 -0
- data/lib/debase/ruby_core_source/ruby-3.0.0-preview1/vmtc.inc +243 -0
- data/lib/debase/ruby_core_source/version.rb +1 -1
- metadata +335 -102
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/insns.inc +0 -118
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/insns_info.inc +0 -827
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/node.h +0 -523
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/opt_sc.inc +0 -809
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/optinsn.inc +0 -77
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/optunifs.inc +0 -49
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/probes_helper.h +0 -43
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/revision.h +0 -1
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/vm.inc +0 -2935
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/vm_call_iseq_optimized.inc +0 -212
- data/lib/debase/ruby_core_source/ruby-2.5.0-preview1/vmtc.inc +0 -115
- data/lib/debase/ruby_core_source/ruby-2.5.0-rc1/debug_counter.h +0 -109
- data/lib/debase/ruby_core_source/ruby-2.5.0-rc1/revision.h +0 -1
- data/lib/debase/ruby_core_source/ruby-2.5.0-rc1/thread_pthread.h +0 -54
- data/lib/debase/ruby_core_source/ruby-2.5.0-rc1/timev.h +0 -42
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
vm_opts.h - VM optimize option
|
|
5
5
|
|
|
6
|
-
$Author:
|
|
6
|
+
$Author: k0kubun $
|
|
7
7
|
|
|
8
8
|
Copyright (C) 2004-2007 Koichi Sasada
|
|
9
9
|
|
|
@@ -18,7 +18,6 @@
|
|
|
18
18
|
* Following definitions are default values.
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
|
-
#define OPT_TRACE_INSTRUCTION 1
|
|
22
21
|
#define OPT_TAILCALL_OPTIMIZATION 0
|
|
23
22
|
#define OPT_PEEPHOLE_OPTIMIZATION 1
|
|
24
23
|
#define OPT_SPECIALISED_INSTRUCTION 1
|
|
@@ -31,9 +30,19 @@
|
|
|
31
30
|
*/
|
|
32
31
|
|
|
33
32
|
/* C compiler dependent */
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
|
|
34
|
+
/*
|
|
35
|
+
* 0: direct (using labeled goto using GCC special)
|
|
36
|
+
* 1: token (switch/case)
|
|
37
|
+
* 2: call (function call for each insn dispatch)
|
|
38
|
+
*/
|
|
39
|
+
#ifndef OPT_THREADED_CODE
|
|
40
|
+
#define OPT_THREADED_CODE 0
|
|
41
|
+
#endif
|
|
42
|
+
|
|
43
|
+
#define OPT_DIRECT_THREADED_CODE (OPT_THREADED_CODE == 0)
|
|
44
|
+
#define OPT_TOKEN_THREADED_CODE (OPT_THREADED_CODE == 1)
|
|
45
|
+
#define OPT_CALL_THREADED_CODE (OPT_THREADED_CODE == 2)
|
|
37
46
|
|
|
38
47
|
/* VM running option */
|
|
39
48
|
#define OPT_CHECKED_RUN 1
|
|
@@ -41,6 +50,10 @@
|
|
|
41
50
|
#define OPT_GLOBAL_METHOD_CACHE 1
|
|
42
51
|
#define OPT_BLOCKINLINING 0
|
|
43
52
|
|
|
53
|
+
#ifndef OPT_IC_FOR_IVAR
|
|
54
|
+
#define OPT_IC_FOR_IVAR 1
|
|
55
|
+
#endif
|
|
56
|
+
|
|
44
57
|
/* architecture independent, affects generated code */
|
|
45
58
|
#define OPT_OPERANDS_UNIFICATION 1
|
|
46
59
|
#define OPT_INSTRUCTIONS_UNIFICATION 0
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
/* -*- mode:c; style:ruby; coding: utf-8; indent-tabs-mode: nil -*- */
|
|
2
|
+
|
|
3
|
+
/* This is an auto-generated file and is a part of the programming language
|
|
4
|
+
* Ruby. The person who created a program to generate this file (``I''
|
|
5
|
+
* hereafter) would like to refrain from defining licensing of this generated
|
|
6
|
+
* source code.
|
|
7
|
+
*
|
|
8
|
+
* This file consist of many small parts of codes copyrighted by each authors,
|
|
9
|
+
* not only the ``I'' person. Those original authors agree with some
|
|
10
|
+
* open-source license. I believe that the license we agree is the condition
|
|
11
|
+
* mentioned in the file COPYING. It states "4. You may modify and include
|
|
12
|
+
* the part of the software into any other software ...". But the problem is,
|
|
13
|
+
* the license never makes it clear if such modified parts still remain in the
|
|
14
|
+
* same license, or not. The fact that we agree with the source code's
|
|
15
|
+
* licensing terms do not automatically define that of generated ones. This is
|
|
16
|
+
* the reason why this file is under unclear situation. All that I know is
|
|
17
|
+
* that above provision guarantees this file to exist.
|
|
18
|
+
*
|
|
19
|
+
* Please let me hesitate to declare something about this nuanced contract. I
|
|
20
|
+
* am not in the position to take over other authors' license to merge into my
|
|
21
|
+
* one. Changing them to (say) GPLv3 is not doable by myself. Perhaps someday
|
|
22
|
+
* it might turn out to be okay to say this file is under a license. I wish the
|
|
23
|
+
* situation would become more clear in the future. */
|
|
24
|
+
/*******************************************************************/
|
|
25
|
+
/*******************************************************************/
|
|
26
|
+
/*******************************************************************/
|
|
27
|
+
/**
|
|
28
|
+
This file is for threaded code.
|
|
29
|
+
|
|
30
|
+
----
|
|
31
|
+
This file is auto generated by insns2vm.rb
|
|
32
|
+
DO NOT TOUCH!
|
|
33
|
+
|
|
34
|
+
If you want to fix something, you must edit "tool/ruby_vm/views/vmtc.inc.erb"
|
|
35
|
+
or tool/insns2vm.rb
|
|
36
|
+
*/
|
|
37
|
+
|
|
38
|
+
static const void *const insns_address_table[] = {
|
|
39
|
+
LABEL_PTR(nop),
|
|
40
|
+
LABEL_PTR(getlocal),
|
|
41
|
+
LABEL_PTR(setlocal),
|
|
42
|
+
LABEL_PTR(getblockparam),
|
|
43
|
+
LABEL_PTR(setblockparam),
|
|
44
|
+
LABEL_PTR(getblockparamproxy),
|
|
45
|
+
LABEL_PTR(getspecial),
|
|
46
|
+
LABEL_PTR(setspecial),
|
|
47
|
+
LABEL_PTR(getinstancevariable),
|
|
48
|
+
LABEL_PTR(setinstancevariable),
|
|
49
|
+
LABEL_PTR(getclassvariable),
|
|
50
|
+
LABEL_PTR(setclassvariable),
|
|
51
|
+
LABEL_PTR(getconstant),
|
|
52
|
+
LABEL_PTR(setconstant),
|
|
53
|
+
LABEL_PTR(getglobal),
|
|
54
|
+
LABEL_PTR(setglobal),
|
|
55
|
+
LABEL_PTR(putnil),
|
|
56
|
+
LABEL_PTR(putself),
|
|
57
|
+
LABEL_PTR(putobject),
|
|
58
|
+
LABEL_PTR(putspecialobject),
|
|
59
|
+
LABEL_PTR(putiseq),
|
|
60
|
+
LABEL_PTR(putstring),
|
|
61
|
+
LABEL_PTR(concatstrings),
|
|
62
|
+
LABEL_PTR(tostring),
|
|
63
|
+
LABEL_PTR(freezestring),
|
|
64
|
+
LABEL_PTR(toregexp),
|
|
65
|
+
LABEL_PTR(intern),
|
|
66
|
+
LABEL_PTR(newarray),
|
|
67
|
+
LABEL_PTR(duparray),
|
|
68
|
+
LABEL_PTR(duphash),
|
|
69
|
+
LABEL_PTR(expandarray),
|
|
70
|
+
LABEL_PTR(concatarray),
|
|
71
|
+
LABEL_PTR(splatarray),
|
|
72
|
+
LABEL_PTR(newhash),
|
|
73
|
+
LABEL_PTR(newrange),
|
|
74
|
+
LABEL_PTR(pop),
|
|
75
|
+
LABEL_PTR(dup),
|
|
76
|
+
LABEL_PTR(dupn),
|
|
77
|
+
LABEL_PTR(swap),
|
|
78
|
+
LABEL_PTR(reverse),
|
|
79
|
+
LABEL_PTR(reput),
|
|
80
|
+
LABEL_PTR(topn),
|
|
81
|
+
LABEL_PTR(setn),
|
|
82
|
+
LABEL_PTR(adjuststack),
|
|
83
|
+
LABEL_PTR(defined),
|
|
84
|
+
LABEL_PTR(checkmatch),
|
|
85
|
+
LABEL_PTR(checkkeyword),
|
|
86
|
+
LABEL_PTR(checktype),
|
|
87
|
+
LABEL_PTR(defineclass),
|
|
88
|
+
LABEL_PTR(send),
|
|
89
|
+
LABEL_PTR(opt_send_without_block),
|
|
90
|
+
LABEL_PTR(opt_str_freeze),
|
|
91
|
+
LABEL_PTR(opt_str_uminus),
|
|
92
|
+
LABEL_PTR(opt_newarray_max),
|
|
93
|
+
LABEL_PTR(opt_newarray_min),
|
|
94
|
+
LABEL_PTR(invokesuper),
|
|
95
|
+
LABEL_PTR(invokeblock),
|
|
96
|
+
LABEL_PTR(leave),
|
|
97
|
+
LABEL_PTR(throw),
|
|
98
|
+
LABEL_PTR(jump),
|
|
99
|
+
LABEL_PTR(branchif),
|
|
100
|
+
LABEL_PTR(branchunless),
|
|
101
|
+
LABEL_PTR(branchnil),
|
|
102
|
+
LABEL_PTR(opt_getinlinecache),
|
|
103
|
+
LABEL_PTR(opt_setinlinecache),
|
|
104
|
+
LABEL_PTR(once),
|
|
105
|
+
LABEL_PTR(opt_case_dispatch),
|
|
106
|
+
LABEL_PTR(opt_plus),
|
|
107
|
+
LABEL_PTR(opt_minus),
|
|
108
|
+
LABEL_PTR(opt_mult),
|
|
109
|
+
LABEL_PTR(opt_div),
|
|
110
|
+
LABEL_PTR(opt_mod),
|
|
111
|
+
LABEL_PTR(opt_eq),
|
|
112
|
+
LABEL_PTR(opt_neq),
|
|
113
|
+
LABEL_PTR(opt_lt),
|
|
114
|
+
LABEL_PTR(opt_le),
|
|
115
|
+
LABEL_PTR(opt_gt),
|
|
116
|
+
LABEL_PTR(opt_ge),
|
|
117
|
+
LABEL_PTR(opt_ltlt),
|
|
118
|
+
LABEL_PTR(opt_and),
|
|
119
|
+
LABEL_PTR(opt_or),
|
|
120
|
+
LABEL_PTR(opt_aref),
|
|
121
|
+
LABEL_PTR(opt_aset),
|
|
122
|
+
LABEL_PTR(opt_aset_with),
|
|
123
|
+
LABEL_PTR(opt_aref_with),
|
|
124
|
+
LABEL_PTR(opt_length),
|
|
125
|
+
LABEL_PTR(opt_size),
|
|
126
|
+
LABEL_PTR(opt_empty_p),
|
|
127
|
+
LABEL_PTR(opt_succ),
|
|
128
|
+
LABEL_PTR(opt_not),
|
|
129
|
+
LABEL_PTR(opt_regexpmatch1),
|
|
130
|
+
LABEL_PTR(opt_regexpmatch2),
|
|
131
|
+
LABEL_PTR(opt_call_c_function),
|
|
132
|
+
LABEL_PTR(bitblt),
|
|
133
|
+
LABEL_PTR(answer),
|
|
134
|
+
LABEL_PTR(getlocal_WC_0),
|
|
135
|
+
LABEL_PTR(getlocal_WC_1),
|
|
136
|
+
LABEL_PTR(setlocal_WC_0),
|
|
137
|
+
LABEL_PTR(setlocal_WC_1),
|
|
138
|
+
LABEL_PTR(putobject_INT2FIX_0_),
|
|
139
|
+
LABEL_PTR(putobject_INT2FIX_1_),
|
|
140
|
+
LABEL_PTR(trace_nop),
|
|
141
|
+
LABEL_PTR(trace_getlocal),
|
|
142
|
+
LABEL_PTR(trace_setlocal),
|
|
143
|
+
LABEL_PTR(trace_getblockparam),
|
|
144
|
+
LABEL_PTR(trace_setblockparam),
|
|
145
|
+
LABEL_PTR(trace_getblockparamproxy),
|
|
146
|
+
LABEL_PTR(trace_getspecial),
|
|
147
|
+
LABEL_PTR(trace_setspecial),
|
|
148
|
+
LABEL_PTR(trace_getinstancevariable),
|
|
149
|
+
LABEL_PTR(trace_setinstancevariable),
|
|
150
|
+
LABEL_PTR(trace_getclassvariable),
|
|
151
|
+
LABEL_PTR(trace_setclassvariable),
|
|
152
|
+
LABEL_PTR(trace_getconstant),
|
|
153
|
+
LABEL_PTR(trace_setconstant),
|
|
154
|
+
LABEL_PTR(trace_getglobal),
|
|
155
|
+
LABEL_PTR(trace_setglobal),
|
|
156
|
+
LABEL_PTR(trace_putnil),
|
|
157
|
+
LABEL_PTR(trace_putself),
|
|
158
|
+
LABEL_PTR(trace_putobject),
|
|
159
|
+
LABEL_PTR(trace_putspecialobject),
|
|
160
|
+
LABEL_PTR(trace_putiseq),
|
|
161
|
+
LABEL_PTR(trace_putstring),
|
|
162
|
+
LABEL_PTR(trace_concatstrings),
|
|
163
|
+
LABEL_PTR(trace_tostring),
|
|
164
|
+
LABEL_PTR(trace_freezestring),
|
|
165
|
+
LABEL_PTR(trace_toregexp),
|
|
166
|
+
LABEL_PTR(trace_intern),
|
|
167
|
+
LABEL_PTR(trace_newarray),
|
|
168
|
+
LABEL_PTR(trace_duparray),
|
|
169
|
+
LABEL_PTR(trace_duphash),
|
|
170
|
+
LABEL_PTR(trace_expandarray),
|
|
171
|
+
LABEL_PTR(trace_concatarray),
|
|
172
|
+
LABEL_PTR(trace_splatarray),
|
|
173
|
+
LABEL_PTR(trace_newhash),
|
|
174
|
+
LABEL_PTR(trace_newrange),
|
|
175
|
+
LABEL_PTR(trace_pop),
|
|
176
|
+
LABEL_PTR(trace_dup),
|
|
177
|
+
LABEL_PTR(trace_dupn),
|
|
178
|
+
LABEL_PTR(trace_swap),
|
|
179
|
+
LABEL_PTR(trace_reverse),
|
|
180
|
+
LABEL_PTR(trace_reput),
|
|
181
|
+
LABEL_PTR(trace_topn),
|
|
182
|
+
LABEL_PTR(trace_setn),
|
|
183
|
+
LABEL_PTR(trace_adjuststack),
|
|
184
|
+
LABEL_PTR(trace_defined),
|
|
185
|
+
LABEL_PTR(trace_checkmatch),
|
|
186
|
+
LABEL_PTR(trace_checkkeyword),
|
|
187
|
+
LABEL_PTR(trace_checktype),
|
|
188
|
+
LABEL_PTR(trace_defineclass),
|
|
189
|
+
LABEL_PTR(trace_send),
|
|
190
|
+
LABEL_PTR(trace_opt_send_without_block),
|
|
191
|
+
LABEL_PTR(trace_opt_str_freeze),
|
|
192
|
+
LABEL_PTR(trace_opt_str_uminus),
|
|
193
|
+
LABEL_PTR(trace_opt_newarray_max),
|
|
194
|
+
LABEL_PTR(trace_opt_newarray_min),
|
|
195
|
+
LABEL_PTR(trace_invokesuper),
|
|
196
|
+
LABEL_PTR(trace_invokeblock),
|
|
197
|
+
LABEL_PTR(trace_leave),
|
|
198
|
+
LABEL_PTR(trace_throw),
|
|
199
|
+
LABEL_PTR(trace_jump),
|
|
200
|
+
LABEL_PTR(trace_branchif),
|
|
201
|
+
LABEL_PTR(trace_branchunless),
|
|
202
|
+
LABEL_PTR(trace_branchnil),
|
|
203
|
+
LABEL_PTR(trace_opt_getinlinecache),
|
|
204
|
+
LABEL_PTR(trace_opt_setinlinecache),
|
|
205
|
+
LABEL_PTR(trace_once),
|
|
206
|
+
LABEL_PTR(trace_opt_case_dispatch),
|
|
207
|
+
LABEL_PTR(trace_opt_plus),
|
|
208
|
+
LABEL_PTR(trace_opt_minus),
|
|
209
|
+
LABEL_PTR(trace_opt_mult),
|
|
210
|
+
LABEL_PTR(trace_opt_div),
|
|
211
|
+
LABEL_PTR(trace_opt_mod),
|
|
212
|
+
LABEL_PTR(trace_opt_eq),
|
|
213
|
+
LABEL_PTR(trace_opt_neq),
|
|
214
|
+
LABEL_PTR(trace_opt_lt),
|
|
215
|
+
LABEL_PTR(trace_opt_le),
|
|
216
|
+
LABEL_PTR(trace_opt_gt),
|
|
217
|
+
LABEL_PTR(trace_opt_ge),
|
|
218
|
+
LABEL_PTR(trace_opt_ltlt),
|
|
219
|
+
LABEL_PTR(trace_opt_and),
|
|
220
|
+
LABEL_PTR(trace_opt_or),
|
|
221
|
+
LABEL_PTR(trace_opt_aref),
|
|
222
|
+
LABEL_PTR(trace_opt_aset),
|
|
223
|
+
LABEL_PTR(trace_opt_aset_with),
|
|
224
|
+
LABEL_PTR(trace_opt_aref_with),
|
|
225
|
+
LABEL_PTR(trace_opt_length),
|
|
226
|
+
LABEL_PTR(trace_opt_size),
|
|
227
|
+
LABEL_PTR(trace_opt_empty_p),
|
|
228
|
+
LABEL_PTR(trace_opt_succ),
|
|
229
|
+
LABEL_PTR(trace_opt_not),
|
|
230
|
+
LABEL_PTR(trace_opt_regexpmatch1),
|
|
231
|
+
LABEL_PTR(trace_opt_regexpmatch2),
|
|
232
|
+
LABEL_PTR(trace_opt_call_c_function),
|
|
233
|
+
LABEL_PTR(trace_bitblt),
|
|
234
|
+
LABEL_PTR(trace_answer),
|
|
235
|
+
LABEL_PTR(trace_getlocal_WC_0),
|
|
236
|
+
LABEL_PTR(trace_getlocal_WC_1),
|
|
237
|
+
LABEL_PTR(trace_setlocal_WC_0),
|
|
238
|
+
LABEL_PTR(trace_setlocal_WC_1),
|
|
239
|
+
LABEL_PTR(trace_putobject_INT2FIX_0_),
|
|
240
|
+
LABEL_PTR(trace_putobject_INT2FIX_1_),
|
|
241
|
+
};
|
|
242
|
+
|
|
243
|
+
ASSERT_VM_INSTRUCTION_SIZE(insns_address_table);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**********************************************************************
|
|
2
|
+
|
|
3
|
+
addr2line.h -
|
|
4
|
+
|
|
5
|
+
$Author$
|
|
6
|
+
|
|
7
|
+
Copyright (C) 2010 Shinichiro Hamaji
|
|
8
|
+
|
|
9
|
+
**********************************************************************/
|
|
10
|
+
|
|
11
|
+
#ifndef RUBY_ADDR2LINE_H
|
|
12
|
+
#define RUBY_ADDR2LINE_H
|
|
13
|
+
|
|
14
|
+
#if (defined(USE_ELF) || defined(HAVE_MACH_O_LOADER_H))
|
|
15
|
+
|
|
16
|
+
void
|
|
17
|
+
rb_dump_backtrace_with_lines(int num_traces, void **traces);
|
|
18
|
+
|
|
19
|
+
#endif /* USE_ELF */
|
|
20
|
+
|
|
21
|
+
#endif /* RUBY_ADDR2LINE_H */
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/* CC0 (Public domain) - see ccan/licenses/CC0 file for details */
|
|
2
|
+
#ifndef CCAN_BUILD_ASSERT_H
|
|
3
|
+
#define CCAN_BUILD_ASSERT_H
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* BUILD_ASSERT - assert a build-time dependency.
|
|
7
|
+
* @cond: the compile-time condition which must be true.
|
|
8
|
+
*
|
|
9
|
+
* Your compile will fail if the condition isn't true, or can't be evaluated
|
|
10
|
+
* by the compiler. This can only be used within a function.
|
|
11
|
+
*
|
|
12
|
+
* Example:
|
|
13
|
+
* #include <stddef.h>
|
|
14
|
+
* ...
|
|
15
|
+
* static char *foo_to_char(struct foo *foo)
|
|
16
|
+
* {
|
|
17
|
+
* // This code needs string to be at start of foo.
|
|
18
|
+
* BUILD_ASSERT(offsetof(struct foo, string) == 0);
|
|
19
|
+
* return (char *)foo;
|
|
20
|
+
* }
|
|
21
|
+
*/
|
|
22
|
+
#define BUILD_ASSERT(cond) \
|
|
23
|
+
do { (void) sizeof(char [1 - 2*!(cond)]); } while(0)
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* BUILD_ASSERT_OR_ZERO - assert a build-time dependency, as an expression.
|
|
27
|
+
* @cond: the compile-time condition which must be true.
|
|
28
|
+
*
|
|
29
|
+
* Your compile will fail if the condition isn't true, or can't be evaluated
|
|
30
|
+
* by the compiler. This can be used in an expression: its value is "0".
|
|
31
|
+
*
|
|
32
|
+
* Example:
|
|
33
|
+
* #define foo_to_char(foo) \
|
|
34
|
+
* ((char *)(foo) \
|
|
35
|
+
* + BUILD_ASSERT_OR_ZERO(offsetof(struct foo, string) == 0))
|
|
36
|
+
*/
|
|
37
|
+
#define BUILD_ASSERT_OR_ZERO(cond) \
|
|
38
|
+
(sizeof(char [1 - 2*!(cond)]) - 1)
|
|
39
|
+
|
|
40
|
+
#endif /* CCAN_BUILD_ASSERT_H */
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/* CC0 (Public domain) - see ccan/licenses/CC0 file for details */
|
|
2
|
+
#ifndef CCAN_CHECK_TYPE_H
|
|
3
|
+
#define CCAN_CHECK_TYPE_H
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* check_type - issue a warning or build failure if type is not correct.
|
|
7
|
+
* @expr: the expression whose type we should check (not evaluated).
|
|
8
|
+
* @type: the exact type we expect the expression to be.
|
|
9
|
+
*
|
|
10
|
+
* This macro is usually used within other macros to try to ensure that a macro
|
|
11
|
+
* argument is of the expected type. No type promotion of the expression is
|
|
12
|
+
* done: an unsigned int is not the same as an int!
|
|
13
|
+
*
|
|
14
|
+
* check_type() always evaluates to 0.
|
|
15
|
+
*
|
|
16
|
+
* If your compiler does not support typeof, then the best we can do is fail
|
|
17
|
+
* to compile if the sizes of the types are unequal (a less complete check).
|
|
18
|
+
*
|
|
19
|
+
* Example:
|
|
20
|
+
* // They should always pass a 64-bit value to _set_some_value!
|
|
21
|
+
* #define set_some_value(expr) \
|
|
22
|
+
* _set_some_value((check_type((expr), uint64_t), (expr)))
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* check_types_match - issue a warning or build failure if types are not same.
|
|
27
|
+
* @expr1: the first expression (not evaluated).
|
|
28
|
+
* @expr2: the second expression (not evaluated).
|
|
29
|
+
*
|
|
30
|
+
* This macro is usually used within other macros to try to ensure that
|
|
31
|
+
* arguments are of identical types. No type promotion of the expressions is
|
|
32
|
+
* done: an unsigned int is not the same as an int!
|
|
33
|
+
*
|
|
34
|
+
* check_types_match() always evaluates to 0.
|
|
35
|
+
*
|
|
36
|
+
* If your compiler does not support typeof, then the best we can do is fail
|
|
37
|
+
* to compile if the sizes of the types are unequal (a less complete check).
|
|
38
|
+
*
|
|
39
|
+
* Example:
|
|
40
|
+
* // Do subtraction to get to enclosing type, but make sure that
|
|
41
|
+
* // pointer is of correct type for that member.
|
|
42
|
+
* #define container_of(mbr_ptr, encl_type, mbr) \
|
|
43
|
+
* (check_types_match((mbr_ptr), &((encl_type *)0)->mbr), \
|
|
44
|
+
* ((encl_type *) \
|
|
45
|
+
* ((char *)(mbr_ptr) - offsetof(enclosing_type, mbr))))
|
|
46
|
+
*/
|
|
47
|
+
#if HAVE_TYPEOF
|
|
48
|
+
#define check_type(expr, type) \
|
|
49
|
+
((typeof(expr) *)0 != (type *)0)
|
|
50
|
+
|
|
51
|
+
#define check_types_match(expr1, expr2) \
|
|
52
|
+
((typeof(expr1) *)0 != (typeof(expr2) *)0)
|
|
53
|
+
#else
|
|
54
|
+
#include "ccan/build_assert/build_assert.h"
|
|
55
|
+
/* Without typeof, we can only test the sizes. */
|
|
56
|
+
#define check_type(expr, type) \
|
|
57
|
+
BUILD_ASSERT_OR_ZERO(sizeof(expr) == sizeof(type))
|
|
58
|
+
|
|
59
|
+
#define check_types_match(expr1, expr2) \
|
|
60
|
+
BUILD_ASSERT_OR_ZERO(sizeof(expr1) == sizeof(expr2))
|
|
61
|
+
#endif /* HAVE_TYPEOF */
|
|
62
|
+
|
|
63
|
+
#endif /* CCAN_CHECK_TYPE_H */
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/* CC0 (Public domain) - see ccan/licenses/CC0 file for details */
|
|
2
|
+
#ifndef CCAN_CONTAINER_OF_H
|
|
3
|
+
#define CCAN_CONTAINER_OF_H
|
|
4
|
+
#include "ccan/check_type/check_type.h"
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* container_of - get pointer to enclosing structure
|
|
8
|
+
* @member_ptr: pointer to the structure member
|
|
9
|
+
* @containing_type: the type this member is within
|
|
10
|
+
* @member: the name of this member within the structure.
|
|
11
|
+
*
|
|
12
|
+
* Given a pointer to a member of a structure, this macro does pointer
|
|
13
|
+
* subtraction to return the pointer to the enclosing type.
|
|
14
|
+
*
|
|
15
|
+
* Example:
|
|
16
|
+
* struct foo {
|
|
17
|
+
* int fielda, fieldb;
|
|
18
|
+
* // ...
|
|
19
|
+
* };
|
|
20
|
+
* struct info {
|
|
21
|
+
* int some_other_field;
|
|
22
|
+
* struct foo my_foo;
|
|
23
|
+
* };
|
|
24
|
+
*
|
|
25
|
+
* static struct info *foo_to_info(struct foo *foo)
|
|
26
|
+
* {
|
|
27
|
+
* return container_of(foo, struct info, my_foo);
|
|
28
|
+
* }
|
|
29
|
+
*/
|
|
30
|
+
#define container_of(member_ptr, containing_type, member) \
|
|
31
|
+
((containing_type *) \
|
|
32
|
+
((char *)(member_ptr) \
|
|
33
|
+
- container_off(containing_type, member)) \
|
|
34
|
+
+ check_types_match(*(member_ptr), ((containing_type *)0)->member))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* container_of_or_null - get pointer to enclosing structure, or NULL
|
|
39
|
+
* @member_ptr: pointer to the structure member
|
|
40
|
+
* @containing_type: the type this member is within
|
|
41
|
+
* @member: the name of this member within the structure.
|
|
42
|
+
*
|
|
43
|
+
* Given a pointer to a member of a structure, this macro does pointer
|
|
44
|
+
* subtraction to return the pointer to the enclosing type, unless it
|
|
45
|
+
* is given NULL, in which case it also returns NULL.
|
|
46
|
+
*
|
|
47
|
+
* Example:
|
|
48
|
+
* struct foo {
|
|
49
|
+
* int fielda, fieldb;
|
|
50
|
+
* // ...
|
|
51
|
+
* };
|
|
52
|
+
* struct info {
|
|
53
|
+
* int some_other_field;
|
|
54
|
+
* struct foo my_foo;
|
|
55
|
+
* };
|
|
56
|
+
*
|
|
57
|
+
* static struct info *foo_to_info_allowing_null(struct foo *foo)
|
|
58
|
+
* {
|
|
59
|
+
* return container_of_or_null(foo, struct info, my_foo);
|
|
60
|
+
* }
|
|
61
|
+
*/
|
|
62
|
+
static inline char *container_of_or_null_(void *member_ptr, size_t offset)
|
|
63
|
+
{
|
|
64
|
+
return member_ptr ? (char *)member_ptr - offset : NULL;
|
|
65
|
+
}
|
|
66
|
+
#define container_of_or_null(member_ptr, containing_type, member) \
|
|
67
|
+
((containing_type *) \
|
|
68
|
+
container_of_or_null_(member_ptr, \
|
|
69
|
+
container_off(containing_type, member)) \
|
|
70
|
+
+ check_types_match(*(member_ptr), ((containing_type *)0)->member))
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* container_off - get offset to enclosing structure
|
|
74
|
+
* @containing_type: the type this member is within
|
|
75
|
+
* @member: the name of this member within the structure.
|
|
76
|
+
*
|
|
77
|
+
* Given a pointer to a member of a structure, this macro does
|
|
78
|
+
* typechecking and figures out the offset to the enclosing type.
|
|
79
|
+
*
|
|
80
|
+
* Example:
|
|
81
|
+
* struct foo {
|
|
82
|
+
* int fielda, fieldb;
|
|
83
|
+
* // ...
|
|
84
|
+
* };
|
|
85
|
+
* struct info {
|
|
86
|
+
* int some_other_field;
|
|
87
|
+
* struct foo my_foo;
|
|
88
|
+
* };
|
|
89
|
+
*
|
|
90
|
+
* static struct info *foo_to_info(struct foo *foo)
|
|
91
|
+
* {
|
|
92
|
+
* size_t off = container_off(struct info, my_foo);
|
|
93
|
+
* return (void *)((char *)foo - off);
|
|
94
|
+
* }
|
|
95
|
+
*/
|
|
96
|
+
#define container_off(containing_type, member) \
|
|
97
|
+
offsetof(containing_type, member)
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* container_of_var - get pointer to enclosing structure using a variable
|
|
101
|
+
* @member_ptr: pointer to the structure member
|
|
102
|
+
* @container_var: a pointer of same type as this member's container
|
|
103
|
+
* @member: the name of this member within the structure.
|
|
104
|
+
*
|
|
105
|
+
* Given a pointer to a member of a structure, this macro does pointer
|
|
106
|
+
* subtraction to return the pointer to the enclosing type.
|
|
107
|
+
*
|
|
108
|
+
* Example:
|
|
109
|
+
* static struct info *foo_to_i(struct foo *foo)
|
|
110
|
+
* {
|
|
111
|
+
* struct info *i = container_of_var(foo, i, my_foo);
|
|
112
|
+
* return i;
|
|
113
|
+
* }
|
|
114
|
+
*/
|
|
115
|
+
#if HAVE_TYPEOF
|
|
116
|
+
#define container_of_var(member_ptr, container_var, member) \
|
|
117
|
+
container_of(member_ptr, typeof(*container_var), member)
|
|
118
|
+
#else
|
|
119
|
+
#define container_of_var(member_ptr, container_var, member) \
|
|
120
|
+
((void *)((char *)(member_ptr) - \
|
|
121
|
+
container_off_var(container_var, member)))
|
|
122
|
+
#endif
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* container_off_var - get offset of a field in enclosing structure
|
|
126
|
+
* @container_var: a pointer to a container structure
|
|
127
|
+
* @member: the name of a member within the structure.
|
|
128
|
+
*
|
|
129
|
+
* Given (any) pointer to a structure and a its member name, this
|
|
130
|
+
* macro does pointer subtraction to return offset of member in a
|
|
131
|
+
* structure memory layout.
|
|
132
|
+
*
|
|
133
|
+
*/
|
|
134
|
+
#if HAVE_TYPEOF
|
|
135
|
+
#define container_off_var(var, member) \
|
|
136
|
+
container_off(typeof(*var), member)
|
|
137
|
+
#else
|
|
138
|
+
#define container_off_var(var, member) \
|
|
139
|
+
((const char *)&(var)->member - (const char *)(var))
|
|
140
|
+
#endif
|
|
141
|
+
|
|
142
|
+
#endif /* CCAN_CONTAINER_OF_H */
|