debase-ruby_core_source 3.3.5 → 3.3.6
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/.gitignore +2 -1
- data/.idea/vcs.xml +28 -0
- data/CHANGELOG.md +8 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/addr2line.h +22 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/builtin.h +119 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/build_assert/build_assert.h +40 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/check_type/check_type.h +63 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/container_of/container_of.h +142 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/list/list.h +791 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ccan/str/str.h +17 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/constant.h +53 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/darray.h +209 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/debug_counter.h +423 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/dln.h +32 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/encindex.h +70 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/eval_intern.h +324 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/hrtime.h +237 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/id.h +347 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/id_table.h +39 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/insns.inc +265 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/insns_info.inc +9902 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/array.h +152 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/basic_operators.h +64 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/bignum.h +244 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/bits.h +568 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/class.h +283 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/cmdlineopt.h +65 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compar.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compile.h +34 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/compilers.h +107 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/complex.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/cont.h +35 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/dir.h +16 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enc.h +19 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/encoding.h +36 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enum.h +18 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/enumerator.h +21 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/error.h +218 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/eval.h +33 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/file.h +38 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/fixnum.h +184 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/gc.h +322 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/hash.h +192 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/imemo.h +261 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/inits.h +47 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/io.h +143 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/load.h +18 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/loadpath.h +16 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/math.h +23 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/missing.h +19 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/numeric.h +274 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/object.h +63 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/parse.h +129 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/proc.h +30 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/process.h +124 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/ractor.h +6 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/random.h +17 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/range.h +40 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/rational.h +71 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/re.h +28 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/ruby_parser.h +102 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/sanitizers.h +326 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/serial.h +23 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/signal.h +24 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/st.h +11 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/static_assert.h +16 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/string.h +186 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/struct.h +127 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/symbol.h +45 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/thread.h +85 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/time.h +34 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/transcode.h +23 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/util.h +27 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/variable.h +72 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/vm.h +137 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal/warnings.h +16 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/internal.h +108 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/iseq.h +340 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/known_errors.inc +1419 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/method.h +255 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/node.h +111 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/node_name.inc +224 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/optinsn.inc +128 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/optunifs.inc +43 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parse.h +244 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_bits.h +564 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_node.h +32 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_st.h +162 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/parser_value.h +106 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/ast.h +7524 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/defines.h +242 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/diagnostic.h +450 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/encoding.h +283 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/extension.h +19 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/node.h +129 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/options.h +396 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/pack.h +163 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/parser.h +933 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/prettyprint.h +34 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/prism.h +336 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/regexp.h +43 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/static_literals.h +121 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_buffer.h +218 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_char.h +204 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_constant_pool.h +218 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_integer.h +126 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_list.h +97 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_memchr.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_newline_list.h +113 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_string.h +190 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strncasecmp.h +32 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/util/pm_strpbrk.h +46 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism/version.h +29 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/prism_compile.h +99 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/probes_helper.h +42 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ractor_core.h +382 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/regenc.h +254 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/regint.h +1006 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/regparse.h +371 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/revision.h +5 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/rjit.h +101 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/rjit_c.h +165 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ruby_assert.h +14 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/ruby_atomic.h +23 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/rubyparser.h +1350 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/shape.h +234 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/siphash.h +48 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/symbol.h +123 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/thread_none.h +21 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/thread_pthread.h +168 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/thread_win32.h +58 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/timev.h +58 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/transcode_data.h +138 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/variable.h +39 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/version.h +69 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm.inc +5840 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_call_iseq_optimized.inc +244 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_callinfo.h +627 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_core.h +2222 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_debug.h +124 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_exec.h +199 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_insnhelper.h +277 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_opts.h +67 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vm_sync.h +137 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/vmtc.inc +259 -0
- data/lib/debase/ruby_core_source/ruby-3.4.0-preview2/yjit.h +79 -0
- data/lib/debase/ruby_core_source/version.rb +1 -1
- metadata +150 -6
@@ -0,0 +1,347 @@
|
|
1
|
+
/* DO NOT EDIT THIS FILE DIRECTLY */
|
2
|
+
/**********************************************************************
|
3
|
+
|
4
|
+
id.h -
|
5
|
+
|
6
|
+
$Author$
|
7
|
+
created at: Sun Oct 19 21:12:51 2008
|
8
|
+
|
9
|
+
Copyright (C) 2007 Koichi Sasada
|
10
|
+
|
11
|
+
**********************************************************************/
|
12
|
+
|
13
|
+
#ifndef RUBY_ID_H
|
14
|
+
#define RUBY_ID_H
|
15
|
+
|
16
|
+
enum ruby_id_types {
|
17
|
+
RUBY_ID_STATIC_SYM = 0x01,
|
18
|
+
RUBY_ID_LOCAL = 0x00,
|
19
|
+
RUBY_ID_INSTANCE = (0x01<<1),
|
20
|
+
RUBY_ID_GLOBAL = (0x03<<1),
|
21
|
+
RUBY_ID_ATTRSET = (0x04<<1),
|
22
|
+
RUBY_ID_CONST = (0x05<<1),
|
23
|
+
RUBY_ID_CLASS = (0x06<<1),
|
24
|
+
RUBY_ID_JUNK = (0x07<<1),
|
25
|
+
RUBY_ID_INTERNAL = RUBY_ID_JUNK,
|
26
|
+
RUBY_ID_SCOPE_SHIFT = 4,
|
27
|
+
RUBY_ID_SCOPE_MASK = (~(~0U<<(RUBY_ID_SCOPE_SHIFT-1))<<1)
|
28
|
+
};
|
29
|
+
|
30
|
+
#define ID_STATIC_SYM RUBY_ID_STATIC_SYM
|
31
|
+
#define ID_SCOPE_SHIFT RUBY_ID_SCOPE_SHIFT
|
32
|
+
#define ID_SCOPE_MASK RUBY_ID_SCOPE_MASK
|
33
|
+
#define ID_LOCAL RUBY_ID_LOCAL
|
34
|
+
#define ID_INSTANCE RUBY_ID_INSTANCE
|
35
|
+
#define ID_GLOBAL RUBY_ID_GLOBAL
|
36
|
+
#define ID_ATTRSET RUBY_ID_ATTRSET
|
37
|
+
#define ID_CONST RUBY_ID_CONST
|
38
|
+
#define ID_CLASS RUBY_ID_CLASS
|
39
|
+
#define ID_JUNK RUBY_ID_JUNK
|
40
|
+
#define ID_INTERNAL RUBY_ID_INTERNAL
|
41
|
+
|
42
|
+
#define symIFUNC ID2SYM(idIFUNC)
|
43
|
+
#define symCFUNC ID2SYM(idCFUNC)
|
44
|
+
|
45
|
+
#define RUBY_TOKEN_DOT2 128
|
46
|
+
#define RUBY_TOKEN_DOT3 129
|
47
|
+
#define RUBY_TOKEN_BDOT2 130
|
48
|
+
#define RUBY_TOKEN_BDOT3 131
|
49
|
+
#define RUBY_TOKEN_UPLUS 132
|
50
|
+
#define RUBY_TOKEN_UMINUS 133
|
51
|
+
#define RUBY_TOKEN_POW 134
|
52
|
+
#define RUBY_TOKEN_CMP 135
|
53
|
+
#define RUBY_TOKEN_LSHFT 136
|
54
|
+
#define RUBY_TOKEN_RSHFT 137
|
55
|
+
#define RUBY_TOKEN_LEQ 138
|
56
|
+
#define RUBY_TOKEN_GEQ 139
|
57
|
+
#define RUBY_TOKEN_EQ 140
|
58
|
+
#define RUBY_TOKEN_EQQ 141
|
59
|
+
#define RUBY_TOKEN_NEQ 142
|
60
|
+
#define RUBY_TOKEN_MATCH 143
|
61
|
+
#define RUBY_TOKEN_NMATCH 144
|
62
|
+
#define RUBY_TOKEN_AREF 145
|
63
|
+
#define RUBY_TOKEN_ASET 146
|
64
|
+
#define RUBY_TOKEN_COLON2 147
|
65
|
+
#define RUBY_TOKEN_ANDOP 148
|
66
|
+
#define RUBY_TOKEN_OROP 149
|
67
|
+
#define RUBY_TOKEN_ANDDOT 150
|
68
|
+
#define RUBY_TOKEN(t) RUBY_TOKEN_##t
|
69
|
+
|
70
|
+
#define RUBY_TOKEN2ID_TYPE(tok, type) ((tok<<RUBY_ID_SCOPE_SHIFT)|type|RUBY_ID_STATIC_SYM)
|
71
|
+
#define TOKEN2LOCALID(tok) RUBY_TOKEN2ID_TYPE(tok, RUBY_ID_LOCAL)
|
72
|
+
#define TOKEN2INSTANCEID(tok) RUBY_TOKEN2ID_TYPE(tok, RUBY_ID_INSTANCE)
|
73
|
+
#define TOKEN2GLOBALID(tok) RUBY_TOKEN2ID_TYPE(tok, RUBY_ID_GLOBAL)
|
74
|
+
#define TOKEN2CONSTID(tok) RUBY_TOKEN2ID_TYPE(tok, RUBY_ID_CONST)
|
75
|
+
#define TOKEN2CLASSID(tok) RUBY_TOKEN2ID_TYPE(tok, RUBY_ID_CLASS)
|
76
|
+
#define TOKEN2ATTRSETID(tok) RUBY_TOKEN2ID_TYPE(tok, RUBY_ID_ATTRSET)
|
77
|
+
|
78
|
+
enum ruby_method_ids {
|
79
|
+
idDot2 = RUBY_TOKEN(DOT2),
|
80
|
+
idDot3 = RUBY_TOKEN(DOT3),
|
81
|
+
idUPlus = RUBY_TOKEN(UPLUS),
|
82
|
+
idUMinus = RUBY_TOKEN(UMINUS),
|
83
|
+
idPow = RUBY_TOKEN(POW),
|
84
|
+
idCmp = RUBY_TOKEN(CMP),
|
85
|
+
idPLUS = '+',
|
86
|
+
idMINUS = '-',
|
87
|
+
idMULT = '*',
|
88
|
+
idDIV = '/',
|
89
|
+
idMOD = '%',
|
90
|
+
idLTLT = RUBY_TOKEN(LSHFT),
|
91
|
+
idGTGT = RUBY_TOKEN(RSHFT),
|
92
|
+
idLT = '<',
|
93
|
+
idLE = RUBY_TOKEN(LEQ),
|
94
|
+
idGT = '>',
|
95
|
+
idGE = RUBY_TOKEN(GEQ),
|
96
|
+
idEq = RUBY_TOKEN(EQ),
|
97
|
+
idEqq = RUBY_TOKEN(EQQ),
|
98
|
+
idNeq = RUBY_TOKEN(NEQ),
|
99
|
+
idNot = '!',
|
100
|
+
idAnd = '&',
|
101
|
+
idOr = '|',
|
102
|
+
idBackquote = '`',
|
103
|
+
idEqTilde = RUBY_TOKEN(MATCH),
|
104
|
+
idNeqTilde = RUBY_TOKEN(NMATCH),
|
105
|
+
idAREF = RUBY_TOKEN(AREF),
|
106
|
+
idASET = RUBY_TOKEN(ASET),
|
107
|
+
idCOLON2 = RUBY_TOKEN(COLON2),
|
108
|
+
idANDOP = RUBY_TOKEN(ANDOP),
|
109
|
+
idOROP = RUBY_TOKEN(OROP),
|
110
|
+
idANDDOT = RUBY_TOKEN(ANDDOT),
|
111
|
+
tPRESERVED_ID_BEGIN = 150,
|
112
|
+
idNilP,
|
113
|
+
idNULL,
|
114
|
+
idEmptyP,
|
115
|
+
idEqlP,
|
116
|
+
idRespond_to,
|
117
|
+
idRespond_to_missing,
|
118
|
+
idIFUNC,
|
119
|
+
idCFUNC,
|
120
|
+
id_core_set_method_alias,
|
121
|
+
id_core_set_variable_alias,
|
122
|
+
id_core_undef_method,
|
123
|
+
id_core_define_method,
|
124
|
+
id_core_define_singleton_method,
|
125
|
+
id_core_set_postexe,
|
126
|
+
id_core_hash_merge_ptr,
|
127
|
+
id_core_hash_merge_kwd,
|
128
|
+
id_core_raise,
|
129
|
+
id_core_sprintf,
|
130
|
+
id_debug_created_info,
|
131
|
+
tPRESERVED_ID_END,
|
132
|
+
|
133
|
+
/* LOCAL tokens {{{ */
|
134
|
+
tTOKEN_LOCAL_BEGIN = tPRESERVED_ID_END-1,
|
135
|
+
tMax,
|
136
|
+
tMin,
|
137
|
+
tHash,
|
138
|
+
tFreeze,
|
139
|
+
tInspect,
|
140
|
+
tIntern,
|
141
|
+
tObject_id,
|
142
|
+
tConst_added,
|
143
|
+
tConst_missing,
|
144
|
+
tMethodMissing,
|
145
|
+
tMethod_added,
|
146
|
+
tSingleton_method_added,
|
147
|
+
tMethod_removed,
|
148
|
+
tSingleton_method_removed,
|
149
|
+
tMethod_undefined,
|
150
|
+
tSingleton_method_undefined,
|
151
|
+
tLength,
|
152
|
+
tSize,
|
153
|
+
tGets,
|
154
|
+
tSucc,
|
155
|
+
tEach,
|
156
|
+
tProc,
|
157
|
+
tLambda,
|
158
|
+
tSend,
|
159
|
+
t__send__,
|
160
|
+
t__recursive_key__,
|
161
|
+
tInitialize,
|
162
|
+
tInitialize_copy,
|
163
|
+
tInitialize_clone,
|
164
|
+
tInitialize_dup,
|
165
|
+
tTo_int,
|
166
|
+
tTo_ary,
|
167
|
+
tTo_str,
|
168
|
+
tTo_sym,
|
169
|
+
tTo_hash,
|
170
|
+
tTo_proc,
|
171
|
+
tTo_io,
|
172
|
+
tTo_a,
|
173
|
+
tTo_s,
|
174
|
+
tTo_i,
|
175
|
+
tTo_f,
|
176
|
+
tTo_r,
|
177
|
+
tBt,
|
178
|
+
tBt_locations,
|
179
|
+
tCall,
|
180
|
+
tMesg,
|
181
|
+
tException,
|
182
|
+
tLocals,
|
183
|
+
tNOT,
|
184
|
+
tAND,
|
185
|
+
tOR,
|
186
|
+
tDiv,
|
187
|
+
tDivmod,
|
188
|
+
tFdiv,
|
189
|
+
tQuo,
|
190
|
+
tName,
|
191
|
+
tNil,
|
192
|
+
tPath,
|
193
|
+
tPack,
|
194
|
+
tBuffer,
|
195
|
+
tUScore,
|
196
|
+
tNUMPARAM_1,
|
197
|
+
tNUMPARAM_2,
|
198
|
+
tNUMPARAM_3,
|
199
|
+
tNUMPARAM_4,
|
200
|
+
tNUMPARAM_5,
|
201
|
+
tNUMPARAM_6,
|
202
|
+
tNUMPARAM_7,
|
203
|
+
tNUMPARAM_8,
|
204
|
+
tNUMPARAM_9,
|
205
|
+
tDefault,
|
206
|
+
tTOKEN_LOCAL_END,
|
207
|
+
/* LOCAL tokens }}} */
|
208
|
+
|
209
|
+
/* INSTANCE tokens {{{ */
|
210
|
+
tTOKEN_INSTANCE_BEGIN = tTOKEN_LOCAL_END-1,
|
211
|
+
tTOKEN_INSTANCE_END,
|
212
|
+
/* INSTANCE tokens }}} */
|
213
|
+
|
214
|
+
/* GLOBAL tokens {{{ */
|
215
|
+
tTOKEN_GLOBAL_BEGIN = tTOKEN_INSTANCE_END-1,
|
216
|
+
tLASTLINE,
|
217
|
+
tBACKREF,
|
218
|
+
tERROR_INFO,
|
219
|
+
tTOKEN_GLOBAL_END,
|
220
|
+
/* GLOBAL tokens }}} */
|
221
|
+
|
222
|
+
/* CONST tokens {{{ */
|
223
|
+
tTOKEN_CONST_BEGIN = tTOKEN_GLOBAL_END-1,
|
224
|
+
tTOKEN_CONST_END,
|
225
|
+
/* CONST tokens }}} */
|
226
|
+
|
227
|
+
/* CLASS tokens {{{ */
|
228
|
+
tTOKEN_CLASS_BEGIN = tTOKEN_CONST_END-1,
|
229
|
+
tTOKEN_CLASS_END,
|
230
|
+
/* CLASS tokens }}} */
|
231
|
+
|
232
|
+
/* ATTRSET tokens {{{ */
|
233
|
+
tTOKEN_ATTRSET_BEGIN = tTOKEN_CLASS_END-1,
|
234
|
+
tTOKEN_ATTRSET_END,
|
235
|
+
/* ATTRSET tokens }}} */
|
236
|
+
|
237
|
+
tNEXT_ID = tTOKEN_ATTRSET_END,
|
238
|
+
|
239
|
+
/* LOCAL IDs {{{ */
|
240
|
+
#define DEFINE_LOCALID_FROM_TOKEN(n) id##n = TOKEN2LOCALID(t##n)
|
241
|
+
DEFINE_LOCALID_FROM_TOKEN(Max),
|
242
|
+
DEFINE_LOCALID_FROM_TOKEN(Min),
|
243
|
+
DEFINE_LOCALID_FROM_TOKEN(Hash),
|
244
|
+
DEFINE_LOCALID_FROM_TOKEN(Freeze),
|
245
|
+
DEFINE_LOCALID_FROM_TOKEN(Inspect),
|
246
|
+
DEFINE_LOCALID_FROM_TOKEN(Intern),
|
247
|
+
DEFINE_LOCALID_FROM_TOKEN(Object_id),
|
248
|
+
DEFINE_LOCALID_FROM_TOKEN(Const_added),
|
249
|
+
DEFINE_LOCALID_FROM_TOKEN(Const_missing),
|
250
|
+
DEFINE_LOCALID_FROM_TOKEN(MethodMissing),
|
251
|
+
DEFINE_LOCALID_FROM_TOKEN(Method_added),
|
252
|
+
DEFINE_LOCALID_FROM_TOKEN(Singleton_method_added),
|
253
|
+
DEFINE_LOCALID_FROM_TOKEN(Method_removed),
|
254
|
+
DEFINE_LOCALID_FROM_TOKEN(Singleton_method_removed),
|
255
|
+
DEFINE_LOCALID_FROM_TOKEN(Method_undefined),
|
256
|
+
DEFINE_LOCALID_FROM_TOKEN(Singleton_method_undefined),
|
257
|
+
DEFINE_LOCALID_FROM_TOKEN(Length),
|
258
|
+
DEFINE_LOCALID_FROM_TOKEN(Size),
|
259
|
+
DEFINE_LOCALID_FROM_TOKEN(Gets),
|
260
|
+
DEFINE_LOCALID_FROM_TOKEN(Succ),
|
261
|
+
DEFINE_LOCALID_FROM_TOKEN(Each),
|
262
|
+
DEFINE_LOCALID_FROM_TOKEN(Proc),
|
263
|
+
DEFINE_LOCALID_FROM_TOKEN(Lambda),
|
264
|
+
DEFINE_LOCALID_FROM_TOKEN(Send),
|
265
|
+
DEFINE_LOCALID_FROM_TOKEN(__send__),
|
266
|
+
DEFINE_LOCALID_FROM_TOKEN(__recursive_key__),
|
267
|
+
DEFINE_LOCALID_FROM_TOKEN(Initialize),
|
268
|
+
DEFINE_LOCALID_FROM_TOKEN(Initialize_copy),
|
269
|
+
DEFINE_LOCALID_FROM_TOKEN(Initialize_clone),
|
270
|
+
DEFINE_LOCALID_FROM_TOKEN(Initialize_dup),
|
271
|
+
DEFINE_LOCALID_FROM_TOKEN(To_int),
|
272
|
+
DEFINE_LOCALID_FROM_TOKEN(To_ary),
|
273
|
+
DEFINE_LOCALID_FROM_TOKEN(To_str),
|
274
|
+
DEFINE_LOCALID_FROM_TOKEN(To_sym),
|
275
|
+
DEFINE_LOCALID_FROM_TOKEN(To_hash),
|
276
|
+
DEFINE_LOCALID_FROM_TOKEN(To_proc),
|
277
|
+
DEFINE_LOCALID_FROM_TOKEN(To_io),
|
278
|
+
DEFINE_LOCALID_FROM_TOKEN(To_a),
|
279
|
+
DEFINE_LOCALID_FROM_TOKEN(To_s),
|
280
|
+
DEFINE_LOCALID_FROM_TOKEN(To_i),
|
281
|
+
DEFINE_LOCALID_FROM_TOKEN(To_f),
|
282
|
+
DEFINE_LOCALID_FROM_TOKEN(To_r),
|
283
|
+
DEFINE_LOCALID_FROM_TOKEN(Bt),
|
284
|
+
DEFINE_LOCALID_FROM_TOKEN(Bt_locations),
|
285
|
+
DEFINE_LOCALID_FROM_TOKEN(Call),
|
286
|
+
DEFINE_LOCALID_FROM_TOKEN(Mesg),
|
287
|
+
DEFINE_LOCALID_FROM_TOKEN(Exception),
|
288
|
+
DEFINE_LOCALID_FROM_TOKEN(Locals),
|
289
|
+
DEFINE_LOCALID_FROM_TOKEN(NOT),
|
290
|
+
DEFINE_LOCALID_FROM_TOKEN(AND),
|
291
|
+
DEFINE_LOCALID_FROM_TOKEN(OR),
|
292
|
+
DEFINE_LOCALID_FROM_TOKEN(Div),
|
293
|
+
DEFINE_LOCALID_FROM_TOKEN(Divmod),
|
294
|
+
DEFINE_LOCALID_FROM_TOKEN(Fdiv),
|
295
|
+
DEFINE_LOCALID_FROM_TOKEN(Quo),
|
296
|
+
DEFINE_LOCALID_FROM_TOKEN(Name),
|
297
|
+
DEFINE_LOCALID_FROM_TOKEN(Nil),
|
298
|
+
DEFINE_LOCALID_FROM_TOKEN(Path),
|
299
|
+
DEFINE_LOCALID_FROM_TOKEN(Pack),
|
300
|
+
DEFINE_LOCALID_FROM_TOKEN(Buffer),
|
301
|
+
DEFINE_LOCALID_FROM_TOKEN(UScore),
|
302
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_1),
|
303
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_2),
|
304
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_3),
|
305
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_4),
|
306
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_5),
|
307
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_6),
|
308
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_7),
|
309
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_8),
|
310
|
+
DEFINE_LOCALID_FROM_TOKEN(NUMPARAM_9),
|
311
|
+
DEFINE_LOCALID_FROM_TOKEN(Default),
|
312
|
+
#undef DEFINE_LOCALID_FROM_TOKEN
|
313
|
+
/* LOCAL IDs }}} */
|
314
|
+
|
315
|
+
/* INSTANCE IDs {{{ */
|
316
|
+
#define DEFINE_INSTANCEID_FROM_TOKEN(n) id##n = TOKEN2INSTANCEID(t##n)
|
317
|
+
#undef DEFINE_INSTANCEID_FROM_TOKEN
|
318
|
+
/* INSTANCE IDs }}} */
|
319
|
+
|
320
|
+
/* GLOBAL IDs {{{ */
|
321
|
+
#define DEFINE_GLOBALID_FROM_TOKEN(n) id##n = TOKEN2GLOBALID(t##n)
|
322
|
+
DEFINE_GLOBALID_FROM_TOKEN(LASTLINE),
|
323
|
+
DEFINE_GLOBALID_FROM_TOKEN(BACKREF),
|
324
|
+
DEFINE_GLOBALID_FROM_TOKEN(ERROR_INFO),
|
325
|
+
#undef DEFINE_GLOBALID_FROM_TOKEN
|
326
|
+
/* GLOBAL IDs }}} */
|
327
|
+
|
328
|
+
/* CONST IDs {{{ */
|
329
|
+
#define DEFINE_CONSTID_FROM_TOKEN(n) id##n = TOKEN2CONSTID(t##n)
|
330
|
+
#undef DEFINE_CONSTID_FROM_TOKEN
|
331
|
+
/* CONST IDs }}} */
|
332
|
+
|
333
|
+
/* CLASS IDs {{{ */
|
334
|
+
#define DEFINE_CLASSID_FROM_TOKEN(n) id##n = TOKEN2CLASSID(t##n)
|
335
|
+
#undef DEFINE_CLASSID_FROM_TOKEN
|
336
|
+
/* CLASS IDs }}} */
|
337
|
+
|
338
|
+
/* ATTRSET IDs {{{ */
|
339
|
+
#define DEFINE_ATTRSETID_FROM_TOKEN(n) id##n = TOKEN2ATTRSETID(t##n)
|
340
|
+
#undef DEFINE_ATTRSETID_FROM_TOKEN
|
341
|
+
/* ATTRSET IDs }}} */
|
342
|
+
|
343
|
+
tLAST_OP_ID = tPRESERVED_ID_END-1,
|
344
|
+
idLAST_OP_ID = tLAST_OP_ID >> ID_SCOPE_SHIFT
|
345
|
+
};
|
346
|
+
|
347
|
+
#endif /* RUBY_ID_H */
|
@@ -0,0 +1,39 @@
|
|
1
|
+
#ifndef RUBY_ID_TABLE_H
|
2
|
+
#define RUBY_ID_TABLE_H 1
|
3
|
+
#include "ruby/internal/config.h"
|
4
|
+
#include <stddef.h>
|
5
|
+
#include "ruby/ruby.h"
|
6
|
+
|
7
|
+
struct rb_id_table;
|
8
|
+
|
9
|
+
/* compatible with ST_* */
|
10
|
+
enum rb_id_table_iterator_result {
|
11
|
+
ID_TABLE_CONTINUE = ST_CONTINUE,
|
12
|
+
ID_TABLE_STOP = ST_STOP,
|
13
|
+
ID_TABLE_DELETE = ST_DELETE,
|
14
|
+
ID_TABLE_REPLACE = ST_REPLACE,
|
15
|
+
ID_TABLE_ITERATOR_RESULT_END
|
16
|
+
};
|
17
|
+
|
18
|
+
struct rb_id_table *rb_id_table_create(size_t size);
|
19
|
+
void rb_id_table_free(struct rb_id_table *tbl);
|
20
|
+
void rb_id_table_clear(struct rb_id_table *tbl);
|
21
|
+
|
22
|
+
size_t rb_id_table_memsize(const struct rb_id_table *tbl);
|
23
|
+
|
24
|
+
int rb_id_table_insert(struct rb_id_table *tbl, ID id, VALUE val);
|
25
|
+
int rb_id_table_lookup(struct rb_id_table *tbl, ID id, VALUE *valp);
|
26
|
+
int rb_id_table_delete(struct rb_id_table *tbl, ID id);
|
27
|
+
|
28
|
+
typedef enum rb_id_table_iterator_result rb_id_table_update_value_callback_func_t(VALUE *val, void *data, int existing);
|
29
|
+
typedef enum rb_id_table_iterator_result rb_id_table_foreach_func_t(ID id, VALUE val, void *data);
|
30
|
+
typedef enum rb_id_table_iterator_result rb_id_table_foreach_values_func_t(VALUE val, void *data);
|
31
|
+
void rb_id_table_foreach(struct rb_id_table *tbl, rb_id_table_foreach_func_t *func, void *data);
|
32
|
+
void rb_id_table_foreach_values(struct rb_id_table *tbl, rb_id_table_foreach_values_func_t *func, void *data);
|
33
|
+
void rb_id_table_foreach_values_with_replace(struct rb_id_table *tbl, rb_id_table_foreach_values_func_t *func, rb_id_table_update_value_callback_func_t *replace, void *data);
|
34
|
+
|
35
|
+
RUBY_SYMBOL_EXPORT_BEGIN
|
36
|
+
size_t rb_id_table_size(const struct rb_id_table *tbl);
|
37
|
+
RUBY_SYMBOL_EXPORT_END
|
38
|
+
|
39
|
+
#endif /* RUBY_ID_TABLE_H */
|
@@ -0,0 +1,265 @@
|
|
1
|
+
/* -*- C -*- */
|
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 consists of many small parts of codes copyrighted by each author,
|
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 does not automatically define that of generated ones. This
|
16
|
+
* is the reason why this file is under an unclear situation. All what I know
|
17
|
+
* is 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
|
23
|
+
* the situation would become more clear in the future. */
|
24
|
+
|
25
|
+
/*******************************************************************/
|
26
|
+
/*******************************************************************/
|
27
|
+
/*******************************************************************/
|
28
|
+
/**
|
29
|
+
This file contains YARV instruction list.
|
30
|
+
|
31
|
+
----
|
32
|
+
This file is auto generated by insns2vm.rb
|
33
|
+
DO NOT TOUCH!
|
34
|
+
|
35
|
+
If you want to fix something, you must edit "tool/ruby_vm/views/insns.inc.erb"
|
36
|
+
or tool/insns2vm.rb
|
37
|
+
*/
|
38
|
+
|
39
|
+
/* BIN : Basic Instruction Name */
|
40
|
+
#define BIN(n) YARVINSN_##n
|
41
|
+
|
42
|
+
enum ruby_vminsn_type {
|
43
|
+
BIN(nop),
|
44
|
+
BIN(getlocal),
|
45
|
+
BIN(setlocal),
|
46
|
+
BIN(getblockparam),
|
47
|
+
BIN(setblockparam),
|
48
|
+
BIN(getblockparamproxy),
|
49
|
+
BIN(getspecial),
|
50
|
+
BIN(setspecial),
|
51
|
+
BIN(getinstancevariable),
|
52
|
+
BIN(setinstancevariable),
|
53
|
+
BIN(getclassvariable),
|
54
|
+
BIN(setclassvariable),
|
55
|
+
BIN(opt_getconstant_path),
|
56
|
+
BIN(getconstant),
|
57
|
+
BIN(setconstant),
|
58
|
+
BIN(getglobal),
|
59
|
+
BIN(setglobal),
|
60
|
+
BIN(putnil),
|
61
|
+
BIN(putself),
|
62
|
+
BIN(putobject),
|
63
|
+
BIN(putspecialobject),
|
64
|
+
BIN(putstring),
|
65
|
+
BIN(putchilledstring),
|
66
|
+
BIN(concatstrings),
|
67
|
+
BIN(anytostring),
|
68
|
+
BIN(toregexp),
|
69
|
+
BIN(intern),
|
70
|
+
BIN(newarray),
|
71
|
+
BIN(pushtoarraykwsplat),
|
72
|
+
BIN(duparray),
|
73
|
+
BIN(duphash),
|
74
|
+
BIN(expandarray),
|
75
|
+
BIN(concatarray),
|
76
|
+
BIN(concattoarray),
|
77
|
+
BIN(pushtoarray),
|
78
|
+
BIN(splatarray),
|
79
|
+
BIN(splatkw),
|
80
|
+
BIN(newhash),
|
81
|
+
BIN(newrange),
|
82
|
+
BIN(pop),
|
83
|
+
BIN(dup),
|
84
|
+
BIN(dupn),
|
85
|
+
BIN(swap),
|
86
|
+
BIN(opt_reverse),
|
87
|
+
BIN(topn),
|
88
|
+
BIN(setn),
|
89
|
+
BIN(adjuststack),
|
90
|
+
BIN(defined),
|
91
|
+
BIN(definedivar),
|
92
|
+
BIN(checkmatch),
|
93
|
+
BIN(checkkeyword),
|
94
|
+
BIN(checktype),
|
95
|
+
BIN(defineclass),
|
96
|
+
BIN(definemethod),
|
97
|
+
BIN(definesmethod),
|
98
|
+
BIN(send),
|
99
|
+
BIN(sendforward),
|
100
|
+
BIN(opt_send_without_block),
|
101
|
+
BIN(objtostring),
|
102
|
+
BIN(opt_ary_freeze),
|
103
|
+
BIN(opt_hash_freeze),
|
104
|
+
BIN(opt_str_freeze),
|
105
|
+
BIN(opt_nil_p),
|
106
|
+
BIN(opt_str_uminus),
|
107
|
+
BIN(opt_newarray_send),
|
108
|
+
BIN(invokesuper),
|
109
|
+
BIN(invokesuperforward),
|
110
|
+
BIN(invokeblock),
|
111
|
+
BIN(leave),
|
112
|
+
BIN(throw),
|
113
|
+
BIN(jump),
|
114
|
+
BIN(branchif),
|
115
|
+
BIN(branchunless),
|
116
|
+
BIN(branchnil),
|
117
|
+
BIN(once),
|
118
|
+
BIN(opt_case_dispatch),
|
119
|
+
BIN(opt_plus),
|
120
|
+
BIN(opt_minus),
|
121
|
+
BIN(opt_mult),
|
122
|
+
BIN(opt_div),
|
123
|
+
BIN(opt_mod),
|
124
|
+
BIN(opt_eq),
|
125
|
+
BIN(opt_neq),
|
126
|
+
BIN(opt_lt),
|
127
|
+
BIN(opt_le),
|
128
|
+
BIN(opt_gt),
|
129
|
+
BIN(opt_ge),
|
130
|
+
BIN(opt_ltlt),
|
131
|
+
BIN(opt_and),
|
132
|
+
BIN(opt_or),
|
133
|
+
BIN(opt_aref),
|
134
|
+
BIN(opt_aset),
|
135
|
+
BIN(opt_aset_with),
|
136
|
+
BIN(opt_aref_with),
|
137
|
+
BIN(opt_length),
|
138
|
+
BIN(opt_size),
|
139
|
+
BIN(opt_empty_p),
|
140
|
+
BIN(opt_succ),
|
141
|
+
BIN(opt_not),
|
142
|
+
BIN(opt_regexpmatch2),
|
143
|
+
BIN(invokebuiltin),
|
144
|
+
BIN(opt_invokebuiltin_delegate),
|
145
|
+
BIN(opt_invokebuiltin_delegate_leave),
|
146
|
+
BIN(getlocal_WC_0),
|
147
|
+
BIN(getlocal_WC_1),
|
148
|
+
BIN(setlocal_WC_0),
|
149
|
+
BIN(setlocal_WC_1),
|
150
|
+
BIN(putobject_INT2FIX_0_),
|
151
|
+
BIN(putobject_INT2FIX_1_),
|
152
|
+
BIN(trace_nop),
|
153
|
+
BIN(trace_getlocal),
|
154
|
+
BIN(trace_setlocal),
|
155
|
+
BIN(trace_getblockparam),
|
156
|
+
BIN(trace_setblockparam),
|
157
|
+
BIN(trace_getblockparamproxy),
|
158
|
+
BIN(trace_getspecial),
|
159
|
+
BIN(trace_setspecial),
|
160
|
+
BIN(trace_getinstancevariable),
|
161
|
+
BIN(trace_setinstancevariable),
|
162
|
+
BIN(trace_getclassvariable),
|
163
|
+
BIN(trace_setclassvariable),
|
164
|
+
BIN(trace_opt_getconstant_path),
|
165
|
+
BIN(trace_getconstant),
|
166
|
+
BIN(trace_setconstant),
|
167
|
+
BIN(trace_getglobal),
|
168
|
+
BIN(trace_setglobal),
|
169
|
+
BIN(trace_putnil),
|
170
|
+
BIN(trace_putself),
|
171
|
+
BIN(trace_putobject),
|
172
|
+
BIN(trace_putspecialobject),
|
173
|
+
BIN(trace_putstring),
|
174
|
+
BIN(trace_putchilledstring),
|
175
|
+
BIN(trace_concatstrings),
|
176
|
+
BIN(trace_anytostring),
|
177
|
+
BIN(trace_toregexp),
|
178
|
+
BIN(trace_intern),
|
179
|
+
BIN(trace_newarray),
|
180
|
+
BIN(trace_pushtoarraykwsplat),
|
181
|
+
BIN(trace_duparray),
|
182
|
+
BIN(trace_duphash),
|
183
|
+
BIN(trace_expandarray),
|
184
|
+
BIN(trace_concatarray),
|
185
|
+
BIN(trace_concattoarray),
|
186
|
+
BIN(trace_pushtoarray),
|
187
|
+
BIN(trace_splatarray),
|
188
|
+
BIN(trace_splatkw),
|
189
|
+
BIN(trace_newhash),
|
190
|
+
BIN(trace_newrange),
|
191
|
+
BIN(trace_pop),
|
192
|
+
BIN(trace_dup),
|
193
|
+
BIN(trace_dupn),
|
194
|
+
BIN(trace_swap),
|
195
|
+
BIN(trace_opt_reverse),
|
196
|
+
BIN(trace_topn),
|
197
|
+
BIN(trace_setn),
|
198
|
+
BIN(trace_adjuststack),
|
199
|
+
BIN(trace_defined),
|
200
|
+
BIN(trace_definedivar),
|
201
|
+
BIN(trace_checkmatch),
|
202
|
+
BIN(trace_checkkeyword),
|
203
|
+
BIN(trace_checktype),
|
204
|
+
BIN(trace_defineclass),
|
205
|
+
BIN(trace_definemethod),
|
206
|
+
BIN(trace_definesmethod),
|
207
|
+
BIN(trace_send),
|
208
|
+
BIN(trace_sendforward),
|
209
|
+
BIN(trace_opt_send_without_block),
|
210
|
+
BIN(trace_objtostring),
|
211
|
+
BIN(trace_opt_ary_freeze),
|
212
|
+
BIN(trace_opt_hash_freeze),
|
213
|
+
BIN(trace_opt_str_freeze),
|
214
|
+
BIN(trace_opt_nil_p),
|
215
|
+
BIN(trace_opt_str_uminus),
|
216
|
+
BIN(trace_opt_newarray_send),
|
217
|
+
BIN(trace_invokesuper),
|
218
|
+
BIN(trace_invokesuperforward),
|
219
|
+
BIN(trace_invokeblock),
|
220
|
+
BIN(trace_leave),
|
221
|
+
BIN(trace_throw),
|
222
|
+
BIN(trace_jump),
|
223
|
+
BIN(trace_branchif),
|
224
|
+
BIN(trace_branchunless),
|
225
|
+
BIN(trace_branchnil),
|
226
|
+
BIN(trace_once),
|
227
|
+
BIN(trace_opt_case_dispatch),
|
228
|
+
BIN(trace_opt_plus),
|
229
|
+
BIN(trace_opt_minus),
|
230
|
+
BIN(trace_opt_mult),
|
231
|
+
BIN(trace_opt_div),
|
232
|
+
BIN(trace_opt_mod),
|
233
|
+
BIN(trace_opt_eq),
|
234
|
+
BIN(trace_opt_neq),
|
235
|
+
BIN(trace_opt_lt),
|
236
|
+
BIN(trace_opt_le),
|
237
|
+
BIN(trace_opt_gt),
|
238
|
+
BIN(trace_opt_ge),
|
239
|
+
BIN(trace_opt_ltlt),
|
240
|
+
BIN(trace_opt_and),
|
241
|
+
BIN(trace_opt_or),
|
242
|
+
BIN(trace_opt_aref),
|
243
|
+
BIN(trace_opt_aset),
|
244
|
+
BIN(trace_opt_aset_with),
|
245
|
+
BIN(trace_opt_aref_with),
|
246
|
+
BIN(trace_opt_length),
|
247
|
+
BIN(trace_opt_size),
|
248
|
+
BIN(trace_opt_empty_p),
|
249
|
+
BIN(trace_opt_succ),
|
250
|
+
BIN(trace_opt_not),
|
251
|
+
BIN(trace_opt_regexpmatch2),
|
252
|
+
BIN(trace_invokebuiltin),
|
253
|
+
BIN(trace_opt_invokebuiltin_delegate),
|
254
|
+
BIN(trace_opt_invokebuiltin_delegate_leave),
|
255
|
+
BIN(trace_getlocal_WC_0),
|
256
|
+
BIN(trace_getlocal_WC_1),
|
257
|
+
BIN(trace_setlocal_WC_0),
|
258
|
+
BIN(trace_setlocal_WC_1),
|
259
|
+
BIN(trace_putobject_INT2FIX_0_),
|
260
|
+
BIN(trace_putobject_INT2FIX_1_),
|
261
|
+
VM_INSTRUCTION_SIZE
|
262
|
+
};
|
263
|
+
|
264
|
+
#define ASSERT_VM_INSTRUCTION_SIZE(array) \
|
265
|
+
STATIC_ASSERT(numberof_##array, numberof(array) == VM_INSTRUCTION_SIZE)
|