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.
5 /*******************************************************************************************
7 ** Auto-generated file. Do NOT modify! **
9 ** smopcode.def - Opcodes used in the state machine in JIT. **
11 ** To generate this file, run "makeSmOpcodeDef.pl > smopcode.def" **
13 *******************************************************************************************/
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