1 | // Licensed to the .NET Foundation under one or more agreements. |
2 | // The .NET Foundation licenses this file to you under the MIT license. |
3 | // See the LICENSE file in the project root for more information. |
4 | |
5 | /******************************************************************************************* |
6 | ** ** |
7 | ** Auto-generated file. Do NOT modify! ** |
8 | ** ** |
9 | ** smopcode.def - Opcodes used in the state machine in JIT. ** |
10 | ** ** |
11 | ** To generate this file, run "makeSmOpcodeDef.pl > smopcode.def" ** |
12 | ** ** |
13 | *******************************************************************************************/ |
14 | |
15 | // |
16 | // SM opcode name SM opcode string |
17 | // ------------------------------------------------------------------------------------------- |
18 | SMOPDEF(SM_NOSHOW, "noshow" ) // 0 |
19 | SMOPDEF(SM_LDARG_0, "ldarg.0" ) // 1 |
20 | SMOPDEF(SM_LDARG_1, "ldarg.1" ) // 2 |
21 | SMOPDEF(SM_LDARG_2, "ldarg.2" ) // 3 |
22 | SMOPDEF(SM_LDARG_3, "ldarg.3" ) // 4 |
23 | SMOPDEF(SM_LDLOC_0, "ldloc.0" ) // 5 |
24 | SMOPDEF(SM_LDLOC_1, "ldloc.1" ) // 6 |
25 | SMOPDEF(SM_LDLOC_2, "ldloc.2" ) // 7 |
26 | SMOPDEF(SM_LDLOC_3, "ldloc.3" ) // 8 |
27 | SMOPDEF(SM_STLOC_0, "stloc.0" ) // 9 |
28 | SMOPDEF(SM_STLOC_1, "stloc.1" ) // 10 |
29 | SMOPDEF(SM_STLOC_2, "stloc.2" ) // 11 |
30 | SMOPDEF(SM_STLOC_3, "stloc.3" ) // 12 |
31 | SMOPDEF(SM_LDARG_S, "ldarg.s" ) // 13 |
32 | SMOPDEF(SM_LDARGA_S, "ldarga.s" ) // 14 |
33 | SMOPDEF(SM_STARG_S, "starg.s" ) // 15 |
34 | SMOPDEF(SM_LDLOC_S, "ldloc.s" ) // 16 |
35 | SMOPDEF(SM_LDLOCA_S, "ldloca.s" ) // 17 |
36 | SMOPDEF(SM_STLOC_S, "stloc.s" ) // 18 |
37 | SMOPDEF(SM_LDNULL, "ldnull" ) // 19 |
38 | SMOPDEF(SM_LDC_I4_M1, "ldc.i4.m1" ) // 20 |
39 | SMOPDEF(SM_LDC_I4_0, "ldc.i4.0" ) // 21 |
40 | SMOPDEF(SM_LDC_I4_1, "ldc.i4.1" ) // 22 |
41 | SMOPDEF(SM_LDC_I4_2, "ldc.i4.2" ) // 23 |
42 | SMOPDEF(SM_LDC_I4_3, "ldc.i4.3" ) // 24 |
43 | SMOPDEF(SM_LDC_I4_4, "ldc.i4.4" ) // 25 |
44 | SMOPDEF(SM_LDC_I4_5, "ldc.i4.5" ) // 26 |
45 | SMOPDEF(SM_LDC_I4_6, "ldc.i4.6" ) // 27 |
46 | SMOPDEF(SM_LDC_I4_7, "ldc.i4.7" ) // 28 |
47 | SMOPDEF(SM_LDC_I4_8, "ldc.i4.8" ) // 29 |
48 | SMOPDEF(SM_LDC_I4_S, "ldc.i4.s" ) // 30 |
49 | SMOPDEF(SM_LDC_I4, "ldc.i4" ) // 31 |
50 | SMOPDEF(SM_LDC_I8, "ldc.i8" ) // 32 |
51 | SMOPDEF(SM_LDC_R4, "ldc.r4" ) // 33 |
52 | SMOPDEF(SM_LDC_R8, "ldc.r8" ) // 34 |
53 | SMOPDEF(SM_UNUSED, "unused" ) // 35 |
54 | SMOPDEF(SM_DUP, "dup" ) // 36 |
55 | SMOPDEF(SM_POP, "pop" ) // 37 |
56 | SMOPDEF(SM_CALL, "call" ) // 38 |
57 | SMOPDEF(SM_CALLI, "calli" ) // 39 |
58 | SMOPDEF(SM_RET, "ret" ) // 40 |
59 | SMOPDEF(SM_BR_S, "br.s" ) // 41 |
60 | SMOPDEF(SM_BRFALSE_S, "brfalse.s" ) // 42 |
61 | SMOPDEF(SM_BRTRUE_S, "brtrue.s" ) // 43 |
62 | SMOPDEF(SM_BEQ_S, "beq.s" ) // 44 |
63 | SMOPDEF(SM_BGE_S, "bge.s" ) // 45 |
64 | SMOPDEF(SM_BGT_S, "bgt.s" ) // 46 |
65 | SMOPDEF(SM_BLE_S, "ble.s" ) // 47 |
66 | SMOPDEF(SM_BLT_S, "blt.s" ) // 48 |
67 | SMOPDEF(SM_BNE_UN_S, "bne.un.s" ) // 49 |
68 | SMOPDEF(SM_BGE_UN_S, "bge.un.s" ) // 50 |
69 | SMOPDEF(SM_BGT_UN_S, "bgt.un.s" ) // 51 |
70 | SMOPDEF(SM_BLE_UN_S, "ble.un.s" ) // 52 |
71 | SMOPDEF(SM_BLT_UN_S, "blt.un.s" ) // 53 |
72 | SMOPDEF(SM_LONG_BRANCH, "long.branch" ) // 54 |
73 | SMOPDEF(SM_SWITCH, "switch" ) // 55 |
74 | SMOPDEF(SM_LDIND_I1, "ldind.i1" ) // 56 |
75 | SMOPDEF(SM_LDIND_U1, "ldind.u1" ) // 57 |
76 | SMOPDEF(SM_LDIND_I2, "ldind.i2" ) // 58 |
77 | SMOPDEF(SM_LDIND_U2, "ldind.u2" ) // 59 |
78 | SMOPDEF(SM_LDIND_I4, "ldind.i4" ) // 60 |
79 | SMOPDEF(SM_LDIND_U4, "ldind.u4" ) // 61 |
80 | SMOPDEF(SM_LDIND_I8, "ldind.i8" ) // 62 |
81 | SMOPDEF(SM_LDIND_I, "ldind.i" ) // 63 |
82 | SMOPDEF(SM_LDIND_R4, "ldind.r4" ) // 64 |
83 | SMOPDEF(SM_LDIND_R8, "ldind.r8" ) // 65 |
84 | SMOPDEF(SM_LDIND_REF, "ldind.ref" ) // 66 |
85 | SMOPDEF(SM_STIND_REF, "stind.ref" ) // 67 |
86 | SMOPDEF(SM_STIND_I1, "stind.i1" ) // 68 |
87 | SMOPDEF(SM_STIND_I2, "stind.i2" ) // 69 |
88 | SMOPDEF(SM_STIND_I4, "stind.i4" ) // 70 |
89 | SMOPDEF(SM_STIND_I8, "stind.i8" ) // 71 |
90 | SMOPDEF(SM_STIND_R4, "stind.r4" ) // 72 |
91 | SMOPDEF(SM_STIND_R8, "stind.r8" ) // 73 |
92 | SMOPDEF(SM_ADD, "add" ) // 74 |
93 | SMOPDEF(SM_SUB, "sub" ) // 75 |
94 | SMOPDEF(SM_MUL, "mul" ) // 76 |
95 | SMOPDEF(SM_DIV, "div" ) // 77 |
96 | SMOPDEF(SM_DIV_UN, "div.un" ) // 78 |
97 | SMOPDEF(SM_REM, "rem" ) // 79 |
98 | SMOPDEF(SM_REM_UN, "rem.un" ) // 80 |
99 | SMOPDEF(SM_AND, "and" ) // 81 |
100 | SMOPDEF(SM_OR, "or" ) // 82 |
101 | SMOPDEF(SM_XOR, "xor" ) // 83 |
102 | SMOPDEF(SM_SHL, "shl" ) // 84 |
103 | SMOPDEF(SM_SHR, "shr" ) // 85 |
104 | SMOPDEF(SM_SHR_UN, "shr.un" ) // 86 |
105 | SMOPDEF(SM_NEG, "neg" ) // 87 |
106 | SMOPDEF(SM_NOT, "not" ) // 88 |
107 | SMOPDEF(SM_CONV_I1, "conv.i1" ) // 89 |
108 | SMOPDEF(SM_CONV_I2, "conv.i2" ) // 90 |
109 | SMOPDEF(SM_CONV_I4, "conv.i4" ) // 91 |
110 | SMOPDEF(SM_CONV_I8, "conv.i8" ) // 92 |
111 | SMOPDEF(SM_CONV_R4, "conv.r4" ) // 93 |
112 | SMOPDEF(SM_CONV_R8, "conv.r8" ) // 94 |
113 | SMOPDEF(SM_CONV_U4, "conv.u4" ) // 95 |
114 | SMOPDEF(SM_CONV_U8, "conv.u8" ) // 96 |
115 | SMOPDEF(SM_CALLVIRT, "callvirt" ) // 97 |
116 | SMOPDEF(SM_CPOBJ, "cpobj" ) // 98 |
117 | SMOPDEF(SM_LDOBJ, "ldobj" ) // 99 |
118 | SMOPDEF(SM_LDSTR, "ldstr" ) // 100 |
119 | SMOPDEF(SM_NEWOBJ, "newobj" ) // 101 |
120 | SMOPDEF(SM_CASTCLASS, "castclass" ) // 102 |
121 | SMOPDEF(SM_ISINST, "isinst" ) // 103 |
122 | SMOPDEF(SM_CONV_R_UN, "conv.r.un" ) // 104 |
123 | SMOPDEF(SM_UNBOX, "unbox" ) // 105 |
124 | SMOPDEF(SM_THROW, "throw" ) // 106 |
125 | SMOPDEF(SM_LDFLD, "ldfld" ) // 107 |
126 | SMOPDEF(SM_LDFLDA, "ldflda" ) // 108 |
127 | SMOPDEF(SM_STFLD, "stfld" ) // 109 |
128 | SMOPDEF(SM_LDSFLD, "ldsfld" ) // 110 |
129 | SMOPDEF(SM_LDSFLDA, "ldsflda" ) // 111 |
130 | SMOPDEF(SM_STSFLD, "stsfld" ) // 112 |
131 | SMOPDEF(SM_STOBJ, "stobj" ) // 113 |
132 | SMOPDEF(SM_OVF_NOTYPE_UN, "ovf.notype.un" ) // 114 |
133 | SMOPDEF(SM_BOX, "box" ) // 115 |
134 | SMOPDEF(SM_NEWARR, "newarr" ) // 116 |
135 | SMOPDEF(SM_LDLEN, "ldlen" ) // 117 |
136 | SMOPDEF(SM_LDELEMA, "ldelema" ) // 118 |
137 | SMOPDEF(SM_LDELEM_I1, "ldelem.i1" ) // 119 |
138 | SMOPDEF(SM_LDELEM_U1, "ldelem.u1" ) // 120 |
139 | SMOPDEF(SM_LDELEM_I2, "ldelem.i2" ) // 121 |
140 | SMOPDEF(SM_LDELEM_U2, "ldelem.u2" ) // 122 |
141 | SMOPDEF(SM_LDELEM_I4, "ldelem.i4" ) // 123 |
142 | SMOPDEF(SM_LDELEM_U4, "ldelem.u4" ) // 124 |
143 | SMOPDEF(SM_LDELEM_I8, "ldelem.i8" ) // 125 |
144 | SMOPDEF(SM_LDELEM_I, "ldelem.i" ) // 126 |
145 | SMOPDEF(SM_LDELEM_R4, "ldelem.r4" ) // 127 |
146 | SMOPDEF(SM_LDELEM_R8, "ldelem.r8" ) // 128 |
147 | SMOPDEF(SM_LDELEM_REF, "ldelem.ref" ) // 129 |
148 | SMOPDEF(SM_STELEM_I, "stelem.i" ) // 130 |
149 | SMOPDEF(SM_STELEM_I1, "stelem.i1" ) // 131 |
150 | SMOPDEF(SM_STELEM_I2, "stelem.i2" ) // 132 |
151 | SMOPDEF(SM_STELEM_I4, "stelem.i4" ) // 133 |
152 | SMOPDEF(SM_STELEM_I8, "stelem.i8" ) // 134 |
153 | SMOPDEF(SM_STELEM_R4, "stelem.r4" ) // 135 |
154 | SMOPDEF(SM_STELEM_R8, "stelem.r8" ) // 136 |
155 | SMOPDEF(SM_STELEM_REF, "stelem.ref" ) // 137 |
156 | SMOPDEF(SM_LDELEM, "ldelem" ) // 138 |
157 | SMOPDEF(SM_STELEM, "stelem" ) // 139 |
158 | SMOPDEF(SM_UNBOX_ANY, "unbox.any" ) // 140 |
159 | SMOPDEF(SM_CONV_OVF_I1, "conv.ovf.i1" ) // 141 |
160 | SMOPDEF(SM_CONV_OVF_U1, "conv.ovf.u1" ) // 142 |
161 | SMOPDEF(SM_CONV_OVF_I2, "conv.ovf.i2" ) // 143 |
162 | SMOPDEF(SM_CONV_OVF_U2, "conv.ovf.u2" ) // 144 |
163 | SMOPDEF(SM_CONV_OVF_I4, "conv.ovf.i4" ) // 145 |
164 | SMOPDEF(SM_CONV_OVF_U4, "conv.ovf.u4" ) // 146 |
165 | SMOPDEF(SM_CONV_OVF_I8, "conv.ovf.i8" ) // 147 |
166 | SMOPDEF(SM_CONV_OVF_U8, "conv.ovf.u8" ) // 148 |
167 | SMOPDEF(SM_REFANYVAL, "refanyval" ) // 149 |
168 | SMOPDEF(SM_CKFINITE, "ckfinite" ) // 150 |
169 | SMOPDEF(SM_MKREFANY, "mkrefany" ) // 151 |
170 | SMOPDEF(SM_LDTOKEN, "ldtoken" ) // 152 |
171 | SMOPDEF(SM_CONV_U2, "conv.u2" ) // 153 |
172 | SMOPDEF(SM_CONV_U1, "conv.u1" ) // 154 |
173 | SMOPDEF(SM_CONV_I, "conv.i" ) // 155 |
174 | SMOPDEF(SM_CONV_OVF_I, "conv.ovf.i" ) // 156 |
175 | SMOPDEF(SM_CONV_OVF_U, "conv.ovf.u" ) // 157 |
176 | SMOPDEF(SM_ADD_OVF, "add.ovf" ) // 158 |
177 | SMOPDEF(SM_MUL_OVF, "mul.ovf" ) // 159 |
178 | SMOPDEF(SM_SUB_OVF, "sub.ovf" ) // 160 |
179 | SMOPDEF(SM_LEAVE_S, "leave.s" ) // 161 |
180 | SMOPDEF(SM_STIND_I, "stind.i" ) // 162 |
181 | SMOPDEF(SM_CONV_U, "conv.u" ) // 163 |
182 | SMOPDEF(SM_PREFIX_N, "prefix.n" ) // 164 |
183 | SMOPDEF(SM_ARGLIST, "arglist" ) // 165 |
184 | SMOPDEF(SM_CEQ, "ceq" ) // 166 |
185 | SMOPDEF(SM_CGT, "cgt" ) // 167 |
186 | SMOPDEF(SM_CGT_UN, "cgt.un" ) // 168 |
187 | SMOPDEF(SM_CLT, "clt" ) // 169 |
188 | SMOPDEF(SM_CLT_UN, "clt.un" ) // 170 |
189 | SMOPDEF(SM_LDFTN, "ldftn" ) // 171 |
190 | SMOPDEF(SM_LDVIRTFTN, "ldvirtftn" ) // 172 |
191 | SMOPDEF(SM_LONG_LOC_ARG, "long.loc.arg" ) // 173 |
192 | SMOPDEF(SM_LOCALLOC, "localloc" ) // 174 |
193 | SMOPDEF(SM_UNALIGNED, "unaligned" ) // 175 |
194 | SMOPDEF(SM_VOLATILE, "volatile" ) // 176 |
195 | SMOPDEF(SM_TAILCALL, "tailcall" ) // 177 |
196 | SMOPDEF(SM_INITOBJ, "initobj" ) // 178 |
197 | SMOPDEF(SM_CONSTRAINED, "constrained" ) // 179 |
198 | SMOPDEF(SM_CPBLK, "cpblk" ) // 180 |
199 | SMOPDEF(SM_INITBLK, "initblk" ) // 181 |
200 | SMOPDEF(SM_RETHROW, "rethrow" ) // 182 |
201 | SMOPDEF(SM_SIZEOF, "sizeof" ) // 183 |
202 | SMOPDEF(SM_REFANYTYPE, "refanytype" ) // 184 |
203 | SMOPDEF(SM_READONLY, "readonly" ) // 185 |
204 | SMOPDEF(SM_LDARGA_S_NORMED, "ldarga.s.normed" ) // 186 |
205 | SMOPDEF(SM_LDLOCA_S_NORMED, "ldloca.s.normed" ) // 187 |
206 | |