3 #if (ANALYZE_DEV_USE_SPECIFIC_OPS)
4 OPDEF(CEE_LDIND_I1
, "ldind.i1", PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x46, NEXT
)
5 OPDEF(CEE_LDIND_U1
, "ldind.u1", PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x47, NEXT
)
6 OPDEF(CEE_LDIND_I2
, "ldind.i2", PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x48, NEXT
)
7 OPDEF(CEE_LDIND_U2
, "ldind.u2", PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x49, NEXT
)
8 OPDEF(CEE_LDIND_I4
, "ldind.i4", PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x4A, NEXT
)
9 OPDEF(CEE_LDIND_U4
, "ldind.u4", PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x4B, NEXT
)
10 OPDEF(CEE_LDIND_I8
, "ldind.i8", PopI
, PushI8
, InlineNone
, X
, 1, 0xFF, 0x4C, NEXT
)
11 OPDEF(CEE_LDIND_I
, "ldind.i", PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x4D, NEXT
)
12 OPDEF(CEE_LDIND_R4
, "ldind.r4", PopI
, PushR4
, InlineNone
, X
, 1, 0xFF, 0x4E, NEXT
)
13 OPDEF(CEE_LDIND_R8
, "ldind.r8", PopI
, PushR8
, InlineNone
, X
, 1, 0xFF, 0x4F, NEXT
)
14 OPDEF(CEE_LDIND_REF
, "ldind.ref", PopI
, PushRef
, InlineNone
, X
, 1, 0xFF, 0x50, NEXT
)
15 OPDEF(CEE_LDSTR
, "ldstr", Pop0
, PushRef
, InlineString
, X
, 1, 0xFF, 0x72, NEXT
)
16 OPDEF(CEE_STOBJ
, "stobj", PopI
+Pop1
, Push0
, InlineType
, X
, 1, 0xFF, 0x81, NEXT
)
20 OPDEF(CEE_CPOBJ
, "cpobj", PopI
+PopI
, Push0
, InlineType
, X
, 1, 0xFF, 0x70, NEXT
)
21 OPDEF(CEE_LDOBJ
, "ldobj", PopI
, Push1
, InlineType
, X
, 1, 0xFF, 0x71, NEXT
)
22 OPDEF(CEE_CASTCLASS
, "castclass", PopRef
, PushRef
, InlineType
, X
, 1, 0xFF, 0x74, NEXT
)
23 OPDEF(CEE_UNBOX
, "unbox", PopRef
, PushI
, InlineType
, X
, 1, 0xFF, 0x79, NEXT
)
24 OPDEF(CEE_UNBOX_ANY
, "unbox.any", PopRef
, Push1
, InlineType
, X
, 1, 0xFF, 0xA5, NEXT
)
26 OPDEF(CEE_MONO_OBJADDR
, "mono_objaddr", Pop1
, PushI
, InlineNone
, X
, 2, 0xF0, 0x01, NEXT
)
27 OPDEF(CEE_MONO_LDPTR
, "mono_ldptr", Pop0
, PushI
, InlineI
, X
, 2, 0xF0, 0x02, NEXT
)
28 OPDEF(CEE_MONO_VTADDR
, "mono_vtaddr", Pop1
, PushI
, InlineNone
, X
, 2, 0xF0, 0x03, NEXT
)
29 OPDEF(CEE_MONO_LDNATIVEOBJ
, "mono_ldnativeobj", PopI
, Push1
, InlineType
, X
, 2, 0xF0, 0x06, RETURN
)
30 OPDEF(CEE_MONO_CISINST
, "mono_cisinst", PopRef
, Push1
, InlineType
, X
, 2, 0xF0, 0x07, NEXT
)
31 OPDEF(CEE_MONO_CCASTCLASS
, "mono_ccastclass", PopRef
, Push1
, InlineType
, X
, 2, 0xF0, 0x08, NEXT
)
34 #if (SSAPRE_SPECIFIC_OPS)
35 OPDEF(CEE_LDARG
, "ldarg", Pop0
, Push1
, InlineVar
, X
, 2, 0xFE, 0x09, NEXT
)
36 OPDEF(CEE_LDARGA
, "ldarga", Pop0
, PushI
, InlineVar
, X
, 2, 0xFE, 0x0A, NEXT
)
37 OPDEF(CEE_LDLOC
, "ldloc", Pop0
, Push1
, InlineVar
, X
, 2, 0xFE, 0x0C, NEXT
)
38 OPDEF(CEE_LDLOCA
, "ldloca", Pop0
, PushI
, InlineVar
, X
, 2, 0xFE, 0x0D, NEXT
)
42 #if (TREEMOVE_SPECIFIC_OPS)
43 OPDEF(CEE_LDFLD
, "ldfld", PopRef
, Push1
, InlineField
, X
, 1, 0xFF, 0x7B, NEXT
)
44 OPDEF(CEE_LDFLDA
, "ldflda", PopRef
, PushI
, InlineField
, X
, 1, 0xFF, 0x7C, NEXT
)
45 OPDEF(CEE_STFLD
, "stfld", PopRef
+Pop1
, Push0
, InlineField
, X
, 1, 0xFF, 0x7D, NEXT
)
46 OPDEF(CEE_LDSFLD
, "ldsfld", Pop0
, Push1
, InlineField
, X
, 1, 0xFF, 0x7E, NEXT
)
47 OPDEF(CEE_LDSFLDA
, "ldsflda", Pop0
, PushI
, InlineField
, X
, 1, 0xFF, 0x7F, NEXT
)
48 OPDEF(CEE_STSFLD
, "stsfld", Pop1
, Push0
, InlineField
, X
, 1, 0xFF, 0x80, NEXT
)
52 #if (TREEMOVE_SPECIFIC_OPS)
53 OPDEF(CEE_LDLEN
, "ldlen", PopRef
, PushI
, InlineNone
, X
, 1, 0xFF, 0x8E, NEXT
)
54 OPDEF(CEE_LDELEMA
, "ldelema", PopRef
+PopI
, PushI
, InlineType
, X
, 1, 0xFF, 0x8F, NEXT
)
55 OPDEF(CEE_LDELEM_I1
, "ldelem.i1", PopRef
+PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x90, NEXT
)
56 OPDEF(CEE_LDELEM_U1
, "ldelem.u1", PopRef
+PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x91, NEXT
)
57 OPDEF(CEE_LDELEM_I2
, "ldelem.i2", PopRef
+PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x92, NEXT
)
58 OPDEF(CEE_LDELEM_U2
, "ldelem.u2", PopRef
+PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x93, NEXT
)
59 OPDEF(CEE_LDELEM_I4
, "ldelem.i4", PopRef
+PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x94, NEXT
)
60 OPDEF(CEE_LDELEM_U4
, "ldelem.u4", PopRef
+PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x95, NEXT
)
61 OPDEF(CEE_LDELEM_I8
, "ldelem.i8", PopRef
+PopI
, PushI8
, InlineNone
, X
, 1, 0xFF, 0x96, NEXT
)
62 OPDEF(CEE_LDELEM_I
, "ldelem.i", PopRef
+PopI
, PushI
, InlineNone
, X
, 1, 0xFF, 0x97, NEXT
)
63 OPDEF(CEE_LDELEM_R4
, "ldelem.r4", PopRef
+PopI
, PushR4
, InlineNone
, X
, 1, 0xFF, 0x98, NEXT
)
64 OPDEF(CEE_LDELEM_R8
, "ldelem.r8", PopRef
+PopI
, PushR8
, InlineNone
, X
, 1, 0xFF, 0x99, NEXT
)
65 OPDEF(CEE_LDELEM_REF
, "ldelem.ref", PopRef
+PopI
, PushRef
, InlineNone
, X
, 1, 0xFF, 0x9A, NEXT
)
66 OPDEF(CEE_LDELEM_ANY
, "ldelem.any", PopRef
+PopI
, Push1
, InlineType
, X
, 1, 0xFF, 0xA3, NEXT
)
69 OPDEF(CEE_ADD
, "add", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x58, NEXT
)
70 OPDEF(CEE_SUB
, "sub", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x59, NEXT
)
71 OPDEF(CEE_MUL
, "mul", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x5A, NEXT
)
72 OPDEF(CEE_DIV
, "div", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x5B, NEXT
)
73 OPDEF(CEE_DIV_UN
, "div.un", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x5C, NEXT
)
74 OPDEF(CEE_REM
, "rem", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x5D, NEXT
)
75 OPDEF(CEE_REM_UN
, "rem.un", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x5E, NEXT
)
76 OPDEF(CEE_AND
, "and", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x5F, NEXT
)
77 OPDEF(CEE_OR
, "or", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x60, NEXT
)
78 OPDEF(CEE_XOR
, "xor", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x61, NEXT
)
79 OPDEF(CEE_SHL
, "shl", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x62, NEXT
)
80 OPDEF(CEE_SHR
, "shr", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x63, NEXT
)
81 OPDEF(CEE_SHR_UN
, "shr.un", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x64, NEXT
)
82 OPDEF(CEE_NEG
, "neg", Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x65, NEXT
)
83 OPDEF(CEE_NOT
, "not", Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0x66, NEXT
)
84 OPDEF(CEE_CONV_I1
, "conv.i1", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x67, NEXT
)
85 OPDEF(CEE_CONV_I2
, "conv.i2", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x68, NEXT
)
86 OPDEF(CEE_CONV_I4
, "conv.i4", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x69, NEXT
)
87 OPDEF(CEE_CONV_I8
, "conv.i8", Pop1
, PushI8
, InlineNone
, X
, 1, 0xFF, 0x6A, NEXT
)
88 OPDEF(CEE_CONV_R4
, "conv.r4", Pop1
, PushR4
, InlineNone
, X
, 1, 0xFF, 0x6B, NEXT
)
89 OPDEF(CEE_CONV_R8
, "conv.r8", Pop1
, PushR8
, InlineNone
, X
, 1, 0xFF, 0x6C, NEXT
)
90 OPDEF(CEE_CONV_U4
, "conv.u4", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x6D, NEXT
)
91 OPDEF(CEE_CONV_U8
, "conv.u8", Pop1
, PushI8
, InlineNone
, X
, 1, 0xFF, 0x6E, NEXT
)
92 OPDEF(CEE_CONV_R_UN
, "conv.r.un", Pop1
, PushR8
, InlineNone
, X
, 1, 0xFF, 0x76, NEXT
)
94 OPDEF(CEE_CONV_U2
, "conv.u2", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xD1, NEXT
)
95 OPDEF(CEE_CONV_U1
, "conv.u1", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xD2, NEXT
)
96 OPDEF(CEE_CONV_I
, "conv.i", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xD3, NEXT
)
97 OPDEF(CEE_CONV_U
, "conv.u", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xE0, NEXT
)
101 OPDEF(CEE_CONV_OVF_I1_UN
, "conv.ovf.i1.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x82, NEXT
)
102 OPDEF(CEE_CONV_OVF_I2_UN
, "conv.ovf.i2.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x83, NEXT
)
103 OPDEF(CEE_CONV_OVF_I4_UN
, "conv.ovf.i4.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x84, NEXT
)
104 OPDEF(CEE_CONV_OVF_I8_UN
, "conv.ovf.i8.un", Pop1
, PushI8
, InlineNone
, X
, 1, 0xFF, 0x85, NEXT
)
105 OPDEF(CEE_CONV_OVF_U1_UN
, "conv.ovf.u1.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x86, NEXT
)
106 OPDEF(CEE_CONV_OVF_U2_UN
, "conv.ovf.u2.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x87, NEXT
)
107 OPDEF(CEE_CONV_OVF_U4_UN
, "conv.ovf.u4.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x88, NEXT
)
108 OPDEF(CEE_CONV_OVF_U8_UN
, "conv.ovf.u8.un", Pop1
, PushI8
, InlineNone
, X
, 1, 0xFF, 0x89, NEXT
)
109 OPDEF(CEE_CONV_OVF_I_UN
, "conv.ovf.i.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x8A, NEXT
)
110 OPDEF(CEE_CONV_OVF_U_UN
, "conv.ovf.u.un", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0x8B, NEXT
)
112 OPDEF(CEE_CONV_OVF_I1
, "conv.ovf.i1", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xB3, NEXT
)
113 OPDEF(CEE_CONV_OVF_U1
, "conv.ovf.u1", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xB4, NEXT
)
114 OPDEF(CEE_CONV_OVF_I2
, "conv.ovf.i2", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xB5, NEXT
)
115 OPDEF(CEE_CONV_OVF_U2
, "conv.ovf.u2", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xB6, NEXT
)
116 OPDEF(CEE_CONV_OVF_I4
, "conv.ovf.i4", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xB7, NEXT
)
117 OPDEF(CEE_CONV_OVF_U4
, "conv.ovf.u4", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xB8, NEXT
)
118 OPDEF(CEE_CONV_OVF_I8
, "conv.ovf.i8", Pop1
, PushI8
, InlineNone
, X
, 1, 0xFF, 0xB9, NEXT
)
119 OPDEF(CEE_CONV_OVF_U8
, "conv.ovf.u8", Pop1
, PushI8
, InlineNone
, X
, 1, 0xFF, 0xBA, NEXT
)
121 OPDEF(CEE_CONV_OVF_I
, "conv.ovf.i", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xD4, NEXT
)
122 OPDEF(CEE_CONV_OVF_U
, "conv.ovf.u", Pop1
, PushI
, InlineNone
, X
, 1, 0xFF, 0xD5, NEXT
)
123 OPDEF(CEE_ADD_OVF
, "add.ovf", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0xD6, NEXT
)
124 OPDEF(CEE_ADD_OVF_UN
, "add.ovf.un", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0xD7, NEXT
)
125 OPDEF(CEE_MUL_OVF
, "mul.ovf", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0xD8, NEXT
)
126 OPDEF(CEE_MUL_OVF_UN
, "mul.ovf.un", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0xD9, NEXT
)
127 OPDEF(CEE_SUB_OVF
, "sub.ovf", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0xDA, NEXT
)
128 OPDEF(CEE_SUB_OVF_UN
, "sub.ovf.un", Pop1
+Pop1
, Push1
, InlineNone
, X
, 1, 0xFF, 0xDB, NEXT
)