// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.

/*******************************************************************************************
 **                                                                                       **
 ** Auto-generated file. Do NOT modify!                                                   **
 **                                                                                       **
 ** smopcode.def - Opcodes used in the state machine in JIT.                              **
 **                                                                                       **
 ** To generate this file, run "makeSmOpcodeDef.pl > smopcode.def"                        **
 **                                                                                       **
 *******************************************************************************************/

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