#[allow(non_camel_case_types)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub enum Opcode {
PHI,
INLINEASM,
INLINEASM_BR,
CFI_INSTRUCTION,
EH_LABEL,
GC_LABEL,
ANNOTATION_LABEL,
KILL,
EXTRACT_SUBREG,
INSERT_SUBREG,
IMPLICIT_DEF,
INIT_UNDEF,
SUBREG_TO_REG,
COPY_TO_REGCLASS,
DBG_VALUE,
DBG_VALUE_LIST,
DBG_INSTR_REF,
DBG_PHI,
DBG_LABEL,
REG_SEQUENCE,
COPY,
COPY_LANEMASK,
BUNDLE,
LIFETIME_START,
LIFETIME_END,
PSEUDO_PROBE,
ARITH_FENCE,
STACKMAP,
FENTRY_CALL,
PATCHPOINT,
LOAD_STACK_GUARD,
PREALLOCATED_SETUP,
PREALLOCATED_ARG,
STATEPOINT,
LOCAL_ESCAPE,
FAULTING_OP,
PATCHABLE_OP,
PATCHABLE_FUNCTION_ENTER,
PATCHABLE_RET,
PATCHABLE_FUNCTION_EXIT,
PATCHABLE_TAIL_CALL,
PATCHABLE_EVENT_CALL,
PATCHABLE_TYPED_EVENT_CALL,
ICALL_BRANCH_FUNNEL,
FAKE_USE,
MEMBARRIER,
JUMP_TABLE_DEBUG_INFO,
RELOC_NONE,
CONVERGENCECTRL_ENTRY,
CONVERGENCECTRL_ANCHOR,
CONVERGENCECTRL_LOOP,
CONVERGENCECTRL_GLUE,
G_ASSERT_SEXT,
G_ASSERT_ZEXT,
G_ASSERT_ALIGN,
G_ADD,
G_SUB,
G_MUL,
G_SDIV,
G_UDIV,
G_SREM,
G_UREM,
G_SDIVREM,
G_UDIVREM,
G_AND,
G_OR,
G_XOR,
G_ABDS,
G_ABDU,
G_UAVGFLOOR,
G_UAVGCEIL,
G_SAVGFLOOR,
G_SAVGCEIL,
G_IMPLICIT_DEF,
G_PHI,
G_FRAME_INDEX,
G_GLOBAL_VALUE,
G_PTRAUTH_GLOBAL_VALUE,
G_CONSTANT_POOL,
G_EXTRACT,
G_UNMERGE_VALUES,
G_INSERT,
G_MERGE_VALUES,
G_BUILD_VECTOR,
G_BUILD_VECTOR_TRUNC,
G_CONCAT_VECTORS,
G_PTRTOINT,
G_INTTOPTR,
G_BITCAST,
G_FREEZE,
G_CONSTANT_FOLD_BARRIER,
G_INTRINSIC_FPTRUNC_ROUND,
G_INTRINSIC_TRUNC,
G_INTRINSIC_ROUND,
G_INTRINSIC_LRINT,
G_INTRINSIC_LLRINT,
G_INTRINSIC_ROUNDEVEN,
G_READCYCLECOUNTER,
G_READSTEADYCOUNTER,
G_LOAD,
G_SEXTLOAD,
G_ZEXTLOAD,
G_INDEXED_LOAD,
G_INDEXED_SEXTLOAD,
G_INDEXED_ZEXTLOAD,
G_STORE,
G_INDEXED_STORE,
G_ATOMIC_CMPXCHG_WITH_SUCCESS,
G_ATOMIC_CMPXCHG,
G_ATOMICRMW_XCHG,
G_ATOMICRMW_ADD,
G_ATOMICRMW_SUB,
G_ATOMICRMW_AND,
G_ATOMICRMW_NAND,
G_ATOMICRMW_OR,
G_ATOMICRMW_XOR,
G_ATOMICRMW_MAX,
G_ATOMICRMW_MIN,
G_ATOMICRMW_UMAX,
G_ATOMICRMW_UMIN,
G_ATOMICRMW_FADD,
G_ATOMICRMW_FSUB,
G_ATOMICRMW_FMAX,
G_ATOMICRMW_FMIN,
G_ATOMICRMW_FMAXIMUM,
G_ATOMICRMW_FMINIMUM,
G_ATOMICRMW_UINC_WRAP,
G_ATOMICRMW_UDEC_WRAP,
G_ATOMICRMW_USUB_COND,
G_ATOMICRMW_USUB_SAT,
G_FENCE,
G_PREFETCH,
G_BRCOND,
G_BRINDIRECT,
G_INVOKE_REGION_START,
G_INTRINSIC,
G_INTRINSIC_W_SIDE_EFFECTS,
G_INTRINSIC_CONVERGENT,
G_INTRINSIC_CONVERGENT_W_SIDE_EFFECTS,
G_ANYEXT,
G_TRUNC,
G_TRUNC_SSAT_S,
G_TRUNC_SSAT_U,
G_TRUNC_USAT_U,
G_CONSTANT,
G_FCONSTANT,
G_VASTART,
G_VAARG,
G_SEXT,
G_SEXT_INREG,
G_ZEXT,
G_SHL,
G_LSHR,
G_ASHR,
G_FSHL,
G_FSHR,
G_ROTR,
G_ROTL,
G_ICMP,
G_FCMP,
G_SCMP,
G_UCMP,
G_SELECT,
G_UADDO,
G_UADDE,
G_USUBO,
G_USUBE,
G_SADDO,
G_SADDE,
G_SSUBO,
G_SSUBE,
G_UMULO,
G_SMULO,
G_UMULH,
G_SMULH,
G_UADDSAT,
G_SADDSAT,
G_USUBSAT,
G_SSUBSAT,
G_USHLSAT,
G_SSHLSAT,
G_SMULFIX,
G_UMULFIX,
G_SMULFIXSAT,
G_UMULFIXSAT,
G_SDIVFIX,
G_UDIVFIX,
G_SDIVFIXSAT,
G_UDIVFIXSAT,
G_FADD,
G_FSUB,
G_FMUL,
G_FMA,
G_FMAD,
G_FDIV,
G_FREM,
G_FMODF,
G_FPOW,
G_FPOWI,
G_FEXP,
G_FEXP2,
G_FEXP10,
G_FLOG,
G_FLOG2,
G_FLOG10,
G_FLDEXP,
G_FFREXP,
G_FNEG,
G_FPEXT,
G_FPTRUNC,
G_FPTOSI,
G_FPTOUI,
G_SITOFP,
G_UITOFP,
G_FPTOSI_SAT,
G_FPTOUI_SAT,
G_FABS,
G_FCOPYSIGN,
G_IS_FPCLASS,
G_FCANONICALIZE,
G_FMINNUM,
G_FMAXNUM,
G_FMINNUM_IEEE,
G_FMAXNUM_IEEE,
G_FMINIMUM,
G_FMAXIMUM,
G_FMINIMUMNUM,
G_FMAXIMUMNUM,
G_GET_FPENV,
G_SET_FPENV,
G_RESET_FPENV,
G_GET_FPMODE,
G_SET_FPMODE,
G_RESET_FPMODE,
G_GET_ROUNDING,
G_SET_ROUNDING,
G_PTR_ADD,
G_PTRMASK,
G_SMIN,
G_SMAX,
G_UMIN,
G_UMAX,
G_ABS,
G_LROUND,
G_LLROUND,
G_BR,
G_BRJT,
G_VSCALE,
G_INSERT_SUBVECTOR,
G_EXTRACT_SUBVECTOR,
G_INSERT_VECTOR_ELT,
G_EXTRACT_VECTOR_ELT,
G_SHUFFLE_VECTOR,
G_SPLAT_VECTOR,
G_STEP_VECTOR,
G_VECTOR_COMPRESS,
G_CTTZ,
G_CTTZ_ZERO_UNDEF,
G_CTLZ,
G_CTLZ_ZERO_UNDEF,
G_CTPOP,
G_BSWAP,
G_BITREVERSE,
G_FCEIL,
G_FCOS,
G_FSIN,
G_FSINCOS,
G_FTAN,
G_FACOS,
G_FASIN,
G_FATAN,
G_FATAN2,
G_FCOSH,
G_FSINH,
G_FTANH,
G_FSQRT,
G_FFLOOR,
G_FRINT,
G_FNEARBYINT,
G_ADDRSPACE_CAST,
G_BLOCK_ADDR,
G_JUMP_TABLE,
G_DYN_STACKALLOC,
G_STACKSAVE,
G_STACKRESTORE,
G_STRICT_FADD,
G_STRICT_FSUB,
G_STRICT_FMUL,
G_STRICT_FDIV,
G_STRICT_FREM,
G_STRICT_FMA,
G_STRICT_FSQRT,
G_STRICT_FLDEXP,
G_READ_REGISTER,
G_WRITE_REGISTER,
G_MEMCPY,
G_MEMCPY_INLINE,
G_MEMMOVE,
G_MEMSET,
G_BZERO,
G_TRAP,
G_DEBUGTRAP,
G_UBSANTRAP,
G_VECREDUCE_SEQ_FADD,
G_VECREDUCE_SEQ_FMUL,
G_VECREDUCE_FADD,
G_VECREDUCE_FMUL,
G_VECREDUCE_FMAX,
G_VECREDUCE_FMIN,
G_VECREDUCE_FMAXIMUM,
G_VECREDUCE_FMINIMUM,
G_VECREDUCE_ADD,
G_VECREDUCE_MUL,
G_VECREDUCE_AND,
G_VECREDUCE_OR,
G_VECREDUCE_XOR,
G_VECREDUCE_SMAX,
G_VECREDUCE_SMIN,
G_VECREDUCE_UMAX,
G_VECREDUCE_UMIN,
G_SBFX,
G_UBFX,
ADJCALLSTACKDOWN,
ADJCALLSTACKUP,
FI_ri,
LDIMM64,
MEMCPY,
Select,
Select_32,
Select_32_64,
Select_64_32,
Select_Ri,
Select_Ri_32,
Select_Ri_32_64,
Select_Ri_64_32,
ADDR_SPACE_CAST,
ADD_ri,
ADD_ri_32,
ADD_rr,
ADD_rr_32,
AND_ri,
AND_ri_32,
AND_rr,
AND_rr_32,
BE16,
BE32,
BE64,
BSWAP16,
BSWAP32,
BSWAP64,
CMPXCHGD,
CMPXCHGW32,
CORE_LD32,
CORE_LD64,
CORE_SHIFT,
CORE_ST,
DIV_ri,
DIV_ri_32,
DIV_rr,
DIV_rr_32,
JAL,
JALX,
JCOND,
JEQ_ri,
JEQ_ri_32,
JEQ_rr,
JEQ_rr_32,
JMP,
JMPL,
JNE_ri,
JNE_ri_32,
JNE_rr,
JNE_rr_32,
JSET_ri,
JSET_ri_32,
JSET_rr,
JSET_rr_32,
JSGE_ri,
JSGE_ri_32,
JSGE_rr,
JSGE_rr_32,
JSGT_ri,
JSGT_ri_32,
JSGT_rr,
JSGT_rr_32,
JSLE_ri,
JSLE_ri_32,
JSLE_rr,
JSLE_rr_32,
JSLT_ri,
JSLT_ri_32,
JSLT_rr,
JSLT_rr_32,
JUGE_ri,
JUGE_ri_32,
JUGE_rr,
JUGE_rr_32,
JUGT_ri,
JUGT_ri_32,
JUGT_rr,
JUGT_rr_32,
JULE_ri,
JULE_ri_32,
JULE_rr,
JULE_rr_32,
JULT_ri,
JULT_ri_32,
JULT_rr,
JULT_rr_32,
JX,
LDB,
LDB32,
LDBACQ32,
LDBSX,
LDD,
LDDACQ,
LDH,
LDH32,
LDHACQ32,
LDHSX,
LDW,
LDW32,
LDWACQ32,
LDWSX,
LD_ABS_B,
LD_ABS_H,
LD_ABS_W,
LD_IND_B,
LD_IND_H,
LD_IND_W,
LD_imm64,
LD_pseudo,
LE16,
LE32,
LE64,
MOD_ri,
MOD_ri_32,
MOD_rr,
MOD_rr_32,
MOVSX_rr_16,
MOVSX_rr_32,
MOVSX_rr_32_16,
MOVSX_rr_32_8,
MOVSX_rr_8,
MOV_32_64,
MOV_ri,
MOV_ri_32,
MOV_rr,
MOV_rr_32,
MUL_ri,
MUL_ri_32,
MUL_rr,
MUL_rr_32,
NEG_32,
NEG_64,
NOP,
OR_ri,
OR_ri_32,
OR_rr,
OR_rr_32,
RET,
SDIV_ri,
SDIV_ri_32,
SDIV_rr,
SDIV_rr_32,
SLL_ri,
SLL_ri_32,
SLL_rr,
SLL_rr_32,
SMOD_ri,
SMOD_ri_32,
SMOD_rr,
SMOD_rr_32,
SRA_ri,
SRA_ri_32,
SRA_rr,
SRA_rr_32,
SRL_ri,
SRL_ri_32,
SRL_rr,
SRL_rr_32,
STB,
STB32,
STBREL32,
STB_imm,
STD,
STDREL,
STD_imm,
STH,
STH32,
STHREL32,
STH_imm,
STW,
STW32,
STWREL32,
STW_imm,
SUB_ri,
SUB_ri_32,
SUB_rr,
SUB_rr_32,
XADDD,
XADDW,
XADDW32,
XANDD,
XANDW32,
XCHGD,
XCHGW32,
XFADDD,
XFADDW32,
XFANDD,
XFANDW32,
XFORD,
XFORW32,
XFXORD,
XFXORW32,
XORD,
XORW32,
XOR_ri,
XOR_ri_32,
XOR_rr,
XOR_rr_32,
XXORD,
XXORW32,
INSTRUCTION_LIST_END,
UNKNOWN(u64),
}
impl From<u64> for Opcode {
fn from(value: u64) -> Self {
match value {
0 => Opcode::PHI,
1 => Opcode::INLINEASM,
2 => Opcode::INLINEASM_BR,
3 => Opcode::CFI_INSTRUCTION,
4 => Opcode::EH_LABEL,
5 => Opcode::GC_LABEL,
6 => Opcode::ANNOTATION_LABEL,
7 => Opcode::KILL,
8 => Opcode::EXTRACT_SUBREG,
9 => Opcode::INSERT_SUBREG,
10 => Opcode::IMPLICIT_DEF,
11 => Opcode::INIT_UNDEF,
12 => Opcode::SUBREG_TO_REG,
13 => Opcode::COPY_TO_REGCLASS,
14 => Opcode::DBG_VALUE,
15 => Opcode::DBG_VALUE_LIST,
16 => Opcode::DBG_INSTR_REF,
17 => Opcode::DBG_PHI,
18 => Opcode::DBG_LABEL,
19 => Opcode::REG_SEQUENCE,
20 => Opcode::COPY,
21 => Opcode::COPY_LANEMASK,
22 => Opcode::BUNDLE,
23 => Opcode::LIFETIME_START,
24 => Opcode::LIFETIME_END,
25 => Opcode::PSEUDO_PROBE,
26 => Opcode::ARITH_FENCE,
27 => Opcode::STACKMAP,
28 => Opcode::FENTRY_CALL,
29 => Opcode::PATCHPOINT,
30 => Opcode::LOAD_STACK_GUARD,
31 => Opcode::PREALLOCATED_SETUP,
32 => Opcode::PREALLOCATED_ARG,
33 => Opcode::STATEPOINT,
34 => Opcode::LOCAL_ESCAPE,
35 => Opcode::FAULTING_OP,
36 => Opcode::PATCHABLE_OP,
37 => Opcode::PATCHABLE_FUNCTION_ENTER,
38 => Opcode::PATCHABLE_RET,
39 => Opcode::PATCHABLE_FUNCTION_EXIT,
40 => Opcode::PATCHABLE_TAIL_CALL,
41 => Opcode::PATCHABLE_EVENT_CALL,
42 => Opcode::PATCHABLE_TYPED_EVENT_CALL,
43 => Opcode::ICALL_BRANCH_FUNNEL,
44 => Opcode::FAKE_USE,
45 => Opcode::MEMBARRIER,
46 => Opcode::JUMP_TABLE_DEBUG_INFO,
47 => Opcode::RELOC_NONE,
48 => Opcode::CONVERGENCECTRL_ENTRY,
49 => Opcode::CONVERGENCECTRL_ANCHOR,
50 => Opcode::CONVERGENCECTRL_LOOP,
51 => Opcode::CONVERGENCECTRL_GLUE,
52 => Opcode::G_ASSERT_SEXT,
53 => Opcode::G_ASSERT_ZEXT,
54 => Opcode::G_ASSERT_ALIGN,
55 => Opcode::G_ADD,
56 => Opcode::G_SUB,
57 => Opcode::G_MUL,
58 => Opcode::G_SDIV,
59 => Opcode::G_UDIV,
60 => Opcode::G_SREM,
61 => Opcode::G_UREM,
62 => Opcode::G_SDIVREM,
63 => Opcode::G_UDIVREM,
64 => Opcode::G_AND,
65 => Opcode::G_OR,
66 => Opcode::G_XOR,
67 => Opcode::G_ABDS,
68 => Opcode::G_ABDU,
69 => Opcode::G_UAVGFLOOR,
70 => Opcode::G_UAVGCEIL,
71 => Opcode::G_SAVGFLOOR,
72 => Opcode::G_SAVGCEIL,
73 => Opcode::G_IMPLICIT_DEF,
74 => Opcode::G_PHI,
75 => Opcode::G_FRAME_INDEX,
76 => Opcode::G_GLOBAL_VALUE,
77 => Opcode::G_PTRAUTH_GLOBAL_VALUE,
78 => Opcode::G_CONSTANT_POOL,
79 => Opcode::G_EXTRACT,
80 => Opcode::G_UNMERGE_VALUES,
81 => Opcode::G_INSERT,
82 => Opcode::G_MERGE_VALUES,
83 => Opcode::G_BUILD_VECTOR,
84 => Opcode::G_BUILD_VECTOR_TRUNC,
85 => Opcode::G_CONCAT_VECTORS,
86 => Opcode::G_PTRTOINT,
87 => Opcode::G_INTTOPTR,
88 => Opcode::G_BITCAST,
89 => Opcode::G_FREEZE,
90 => Opcode::G_CONSTANT_FOLD_BARRIER,
91 => Opcode::G_INTRINSIC_FPTRUNC_ROUND,
92 => Opcode::G_INTRINSIC_TRUNC,
93 => Opcode::G_INTRINSIC_ROUND,
94 => Opcode::G_INTRINSIC_LRINT,
95 => Opcode::G_INTRINSIC_LLRINT,
96 => Opcode::G_INTRINSIC_ROUNDEVEN,
97 => Opcode::G_READCYCLECOUNTER,
98 => Opcode::G_READSTEADYCOUNTER,
99 => Opcode::G_LOAD,
100 => Opcode::G_SEXTLOAD,
101 => Opcode::G_ZEXTLOAD,
102 => Opcode::G_INDEXED_LOAD,
103 => Opcode::G_INDEXED_SEXTLOAD,
104 => Opcode::G_INDEXED_ZEXTLOAD,
105 => Opcode::G_STORE,
106 => Opcode::G_INDEXED_STORE,
107 => Opcode::G_ATOMIC_CMPXCHG_WITH_SUCCESS,
108 => Opcode::G_ATOMIC_CMPXCHG,
109 => Opcode::G_ATOMICRMW_XCHG,
110 => Opcode::G_ATOMICRMW_ADD,
111 => Opcode::G_ATOMICRMW_SUB,
112 => Opcode::G_ATOMICRMW_AND,
113 => Opcode::G_ATOMICRMW_NAND,
114 => Opcode::G_ATOMICRMW_OR,
115 => Opcode::G_ATOMICRMW_XOR,
116 => Opcode::G_ATOMICRMW_MAX,
117 => Opcode::G_ATOMICRMW_MIN,
118 => Opcode::G_ATOMICRMW_UMAX,
119 => Opcode::G_ATOMICRMW_UMIN,
120 => Opcode::G_ATOMICRMW_FADD,
121 => Opcode::G_ATOMICRMW_FSUB,
122 => Opcode::G_ATOMICRMW_FMAX,
123 => Opcode::G_ATOMICRMW_FMIN,
124 => Opcode::G_ATOMICRMW_FMAXIMUM,
125 => Opcode::G_ATOMICRMW_FMINIMUM,
126 => Opcode::G_ATOMICRMW_UINC_WRAP,
127 => Opcode::G_ATOMICRMW_UDEC_WRAP,
128 => Opcode::G_ATOMICRMW_USUB_COND,
129 => Opcode::G_ATOMICRMW_USUB_SAT,
130 => Opcode::G_FENCE,
131 => Opcode::G_PREFETCH,
132 => Opcode::G_BRCOND,
133 => Opcode::G_BRINDIRECT,
134 => Opcode::G_INVOKE_REGION_START,
135 => Opcode::G_INTRINSIC,
136 => Opcode::G_INTRINSIC_W_SIDE_EFFECTS,
137 => Opcode::G_INTRINSIC_CONVERGENT,
138 => Opcode::G_INTRINSIC_CONVERGENT_W_SIDE_EFFECTS,
139 => Opcode::G_ANYEXT,
140 => Opcode::G_TRUNC,
141 => Opcode::G_TRUNC_SSAT_S,
142 => Opcode::G_TRUNC_SSAT_U,
143 => Opcode::G_TRUNC_USAT_U,
144 => Opcode::G_CONSTANT,
145 => Opcode::G_FCONSTANT,
146 => Opcode::G_VASTART,
147 => Opcode::G_VAARG,
148 => Opcode::G_SEXT,
149 => Opcode::G_SEXT_INREG,
150 => Opcode::G_ZEXT,
151 => Opcode::G_SHL,
152 => Opcode::G_LSHR,
153 => Opcode::G_ASHR,
154 => Opcode::G_FSHL,
155 => Opcode::G_FSHR,
156 => Opcode::G_ROTR,
157 => Opcode::G_ROTL,
158 => Opcode::G_ICMP,
159 => Opcode::G_FCMP,
160 => Opcode::G_SCMP,
161 => Opcode::G_UCMP,
162 => Opcode::G_SELECT,
163 => Opcode::G_UADDO,
164 => Opcode::G_UADDE,
165 => Opcode::G_USUBO,
166 => Opcode::G_USUBE,
167 => Opcode::G_SADDO,
168 => Opcode::G_SADDE,
169 => Opcode::G_SSUBO,
170 => Opcode::G_SSUBE,
171 => Opcode::G_UMULO,
172 => Opcode::G_SMULO,
173 => Opcode::G_UMULH,
174 => Opcode::G_SMULH,
175 => Opcode::G_UADDSAT,
176 => Opcode::G_SADDSAT,
177 => Opcode::G_USUBSAT,
178 => Opcode::G_SSUBSAT,
179 => Opcode::G_USHLSAT,
180 => Opcode::G_SSHLSAT,
181 => Opcode::G_SMULFIX,
182 => Opcode::G_UMULFIX,
183 => Opcode::G_SMULFIXSAT,
184 => Opcode::G_UMULFIXSAT,
185 => Opcode::G_SDIVFIX,
186 => Opcode::G_UDIVFIX,
187 => Opcode::G_SDIVFIXSAT,
188 => Opcode::G_UDIVFIXSAT,
189 => Opcode::G_FADD,
190 => Opcode::G_FSUB,
191 => Opcode::G_FMUL,
192 => Opcode::G_FMA,
193 => Opcode::G_FMAD,
194 => Opcode::G_FDIV,
195 => Opcode::G_FREM,
196 => Opcode::G_FMODF,
197 => Opcode::G_FPOW,
198 => Opcode::G_FPOWI,
199 => Opcode::G_FEXP,
200 => Opcode::G_FEXP2,
201 => Opcode::G_FEXP10,
202 => Opcode::G_FLOG,
203 => Opcode::G_FLOG2,
204 => Opcode::G_FLOG10,
205 => Opcode::G_FLDEXP,
206 => Opcode::G_FFREXP,
207 => Opcode::G_FNEG,
208 => Opcode::G_FPEXT,
209 => Opcode::G_FPTRUNC,
210 => Opcode::G_FPTOSI,
211 => Opcode::G_FPTOUI,
212 => Opcode::G_SITOFP,
213 => Opcode::G_UITOFP,
214 => Opcode::G_FPTOSI_SAT,
215 => Opcode::G_FPTOUI_SAT,
216 => Opcode::G_FABS,
217 => Opcode::G_FCOPYSIGN,
218 => Opcode::G_IS_FPCLASS,
219 => Opcode::G_FCANONICALIZE,
220 => Opcode::G_FMINNUM,
221 => Opcode::G_FMAXNUM,
222 => Opcode::G_FMINNUM_IEEE,
223 => Opcode::G_FMAXNUM_IEEE,
224 => Opcode::G_FMINIMUM,
225 => Opcode::G_FMAXIMUM,
226 => Opcode::G_FMINIMUMNUM,
227 => Opcode::G_FMAXIMUMNUM,
228 => Opcode::G_GET_FPENV,
229 => Opcode::G_SET_FPENV,
230 => Opcode::G_RESET_FPENV,
231 => Opcode::G_GET_FPMODE,
232 => Opcode::G_SET_FPMODE,
233 => Opcode::G_RESET_FPMODE,
234 => Opcode::G_GET_ROUNDING,
235 => Opcode::G_SET_ROUNDING,
236 => Opcode::G_PTR_ADD,
237 => Opcode::G_PTRMASK,
238 => Opcode::G_SMIN,
239 => Opcode::G_SMAX,
240 => Opcode::G_UMIN,
241 => Opcode::G_UMAX,
242 => Opcode::G_ABS,
243 => Opcode::G_LROUND,
244 => Opcode::G_LLROUND,
245 => Opcode::G_BR,
246 => Opcode::G_BRJT,
247 => Opcode::G_VSCALE,
248 => Opcode::G_INSERT_SUBVECTOR,
249 => Opcode::G_EXTRACT_SUBVECTOR,
250 => Opcode::G_INSERT_VECTOR_ELT,
251 => Opcode::G_EXTRACT_VECTOR_ELT,
252 => Opcode::G_SHUFFLE_VECTOR,
253 => Opcode::G_SPLAT_VECTOR,
254 => Opcode::G_STEP_VECTOR,
255 => Opcode::G_VECTOR_COMPRESS,
256 => Opcode::G_CTTZ,
257 => Opcode::G_CTTZ_ZERO_UNDEF,
258 => Opcode::G_CTLZ,
259 => Opcode::G_CTLZ_ZERO_UNDEF,
260 => Opcode::G_CTPOP,
261 => Opcode::G_BSWAP,
262 => Opcode::G_BITREVERSE,
263 => Opcode::G_FCEIL,
264 => Opcode::G_FCOS,
265 => Opcode::G_FSIN,
266 => Opcode::G_FSINCOS,
267 => Opcode::G_FTAN,
268 => Opcode::G_FACOS,
269 => Opcode::G_FASIN,
270 => Opcode::G_FATAN,
271 => Opcode::G_FATAN2,
272 => Opcode::G_FCOSH,
273 => Opcode::G_FSINH,
274 => Opcode::G_FTANH,
275 => Opcode::G_FSQRT,
276 => Opcode::G_FFLOOR,
277 => Opcode::G_FRINT,
278 => Opcode::G_FNEARBYINT,
279 => Opcode::G_ADDRSPACE_CAST,
280 => Opcode::G_BLOCK_ADDR,
281 => Opcode::G_JUMP_TABLE,
282 => Opcode::G_DYN_STACKALLOC,
283 => Opcode::G_STACKSAVE,
284 => Opcode::G_STACKRESTORE,
285 => Opcode::G_STRICT_FADD,
286 => Opcode::G_STRICT_FSUB,
287 => Opcode::G_STRICT_FMUL,
288 => Opcode::G_STRICT_FDIV,
289 => Opcode::G_STRICT_FREM,
290 => Opcode::G_STRICT_FMA,
291 => Opcode::G_STRICT_FSQRT,
292 => Opcode::G_STRICT_FLDEXP,
293 => Opcode::G_READ_REGISTER,
294 => Opcode::G_WRITE_REGISTER,
295 => Opcode::G_MEMCPY,
296 => Opcode::G_MEMCPY_INLINE,
297 => Opcode::G_MEMMOVE,
298 => Opcode::G_MEMSET,
299 => Opcode::G_BZERO,
300 => Opcode::G_TRAP,
301 => Opcode::G_DEBUGTRAP,
302 => Opcode::G_UBSANTRAP,
303 => Opcode::G_VECREDUCE_SEQ_FADD,
304 => Opcode::G_VECREDUCE_SEQ_FMUL,
305 => Opcode::G_VECREDUCE_FADD,
306 => Opcode::G_VECREDUCE_FMUL,
307 => Opcode::G_VECREDUCE_FMAX,
308 => Opcode::G_VECREDUCE_FMIN,
309 => Opcode::G_VECREDUCE_FMAXIMUM,
310 => Opcode::G_VECREDUCE_FMINIMUM,
311 => Opcode::G_VECREDUCE_ADD,
312 => Opcode::G_VECREDUCE_MUL,
313 => Opcode::G_VECREDUCE_AND,
314 => Opcode::G_VECREDUCE_OR,
315 => Opcode::G_VECREDUCE_XOR,
316 => Opcode::G_VECREDUCE_SMAX,
317 => Opcode::G_VECREDUCE_SMIN,
318 => Opcode::G_VECREDUCE_UMAX,
319 => Opcode::G_VECREDUCE_UMIN,
320 => Opcode::G_SBFX,
321 => Opcode::G_UBFX,
322 => Opcode::ADJCALLSTACKDOWN,
323 => Opcode::ADJCALLSTACKUP,
324 => Opcode::FI_ri,
325 => Opcode::LDIMM64,
326 => Opcode::MEMCPY,
327 => Opcode::Select,
328 => Opcode::Select_32,
329 => Opcode::Select_32_64,
330 => Opcode::Select_64_32,
331 => Opcode::Select_Ri,
332 => Opcode::Select_Ri_32,
333 => Opcode::Select_Ri_32_64,
334 => Opcode::Select_Ri_64_32,
335 => Opcode::ADDR_SPACE_CAST,
336 => Opcode::ADD_ri,
337 => Opcode::ADD_ri_32,
338 => Opcode::ADD_rr,
339 => Opcode::ADD_rr_32,
340 => Opcode::AND_ri,
341 => Opcode::AND_ri_32,
342 => Opcode::AND_rr,
343 => Opcode::AND_rr_32,
344 => Opcode::BE16,
345 => Opcode::BE32,
346 => Opcode::BE64,
347 => Opcode::BSWAP16,
348 => Opcode::BSWAP32,
349 => Opcode::BSWAP64,
350 => Opcode::CMPXCHGD,
351 => Opcode::CMPXCHGW32,
352 => Opcode::CORE_LD32,
353 => Opcode::CORE_LD64,
354 => Opcode::CORE_SHIFT,
355 => Opcode::CORE_ST,
356 => Opcode::DIV_ri,
357 => Opcode::DIV_ri_32,
358 => Opcode::DIV_rr,
359 => Opcode::DIV_rr_32,
360 => Opcode::JAL,
361 => Opcode::JALX,
362 => Opcode::JCOND,
363 => Opcode::JEQ_ri,
364 => Opcode::JEQ_ri_32,
365 => Opcode::JEQ_rr,
366 => Opcode::JEQ_rr_32,
367 => Opcode::JMP,
368 => Opcode::JMPL,
369 => Opcode::JNE_ri,
370 => Opcode::JNE_ri_32,
371 => Opcode::JNE_rr,
372 => Opcode::JNE_rr_32,
373 => Opcode::JSET_ri,
374 => Opcode::JSET_ri_32,
375 => Opcode::JSET_rr,
376 => Opcode::JSET_rr_32,
377 => Opcode::JSGE_ri,
378 => Opcode::JSGE_ri_32,
379 => Opcode::JSGE_rr,
380 => Opcode::JSGE_rr_32,
381 => Opcode::JSGT_ri,
382 => Opcode::JSGT_ri_32,
383 => Opcode::JSGT_rr,
384 => Opcode::JSGT_rr_32,
385 => Opcode::JSLE_ri,
386 => Opcode::JSLE_ri_32,
387 => Opcode::JSLE_rr,
388 => Opcode::JSLE_rr_32,
389 => Opcode::JSLT_ri,
390 => Opcode::JSLT_ri_32,
391 => Opcode::JSLT_rr,
392 => Opcode::JSLT_rr_32,
393 => Opcode::JUGE_ri,
394 => Opcode::JUGE_ri_32,
395 => Opcode::JUGE_rr,
396 => Opcode::JUGE_rr_32,
397 => Opcode::JUGT_ri,
398 => Opcode::JUGT_ri_32,
399 => Opcode::JUGT_rr,
400 => Opcode::JUGT_rr_32,
401 => Opcode::JULE_ri,
402 => Opcode::JULE_ri_32,
403 => Opcode::JULE_rr,
404 => Opcode::JULE_rr_32,
405 => Opcode::JULT_ri,
406 => Opcode::JULT_ri_32,
407 => Opcode::JULT_rr,
408 => Opcode::JULT_rr_32,
409 => Opcode::JX,
410 => Opcode::LDB,
411 => Opcode::LDB32,
412 => Opcode::LDBACQ32,
413 => Opcode::LDBSX,
414 => Opcode::LDD,
415 => Opcode::LDDACQ,
416 => Opcode::LDH,
417 => Opcode::LDH32,
418 => Opcode::LDHACQ32,
419 => Opcode::LDHSX,
420 => Opcode::LDW,
421 => Opcode::LDW32,
422 => Opcode::LDWACQ32,
423 => Opcode::LDWSX,
424 => Opcode::LD_ABS_B,
425 => Opcode::LD_ABS_H,
426 => Opcode::LD_ABS_W,
427 => Opcode::LD_IND_B,
428 => Opcode::LD_IND_H,
429 => Opcode::LD_IND_W,
430 => Opcode::LD_imm64,
431 => Opcode::LD_pseudo,
432 => Opcode::LE16,
433 => Opcode::LE32,
434 => Opcode::LE64,
435 => Opcode::MOD_ri,
436 => Opcode::MOD_ri_32,
437 => Opcode::MOD_rr,
438 => Opcode::MOD_rr_32,
439 => Opcode::MOVSX_rr_16,
440 => Opcode::MOVSX_rr_32,
441 => Opcode::MOVSX_rr_32_16,
442 => Opcode::MOVSX_rr_32_8,
443 => Opcode::MOVSX_rr_8,
444 => Opcode::MOV_32_64,
445 => Opcode::MOV_ri,
446 => Opcode::MOV_ri_32,
447 => Opcode::MOV_rr,
448 => Opcode::MOV_rr_32,
449 => Opcode::MUL_ri,
450 => Opcode::MUL_ri_32,
451 => Opcode::MUL_rr,
452 => Opcode::MUL_rr_32,
453 => Opcode::NEG_32,
454 => Opcode::NEG_64,
455 => Opcode::NOP,
456 => Opcode::OR_ri,
457 => Opcode::OR_ri_32,
458 => Opcode::OR_rr,
459 => Opcode::OR_rr_32,
460 => Opcode::RET,
461 => Opcode::SDIV_ri,
462 => Opcode::SDIV_ri_32,
463 => Opcode::SDIV_rr,
464 => Opcode::SDIV_rr_32,
465 => Opcode::SLL_ri,
466 => Opcode::SLL_ri_32,
467 => Opcode::SLL_rr,
468 => Opcode::SLL_rr_32,
469 => Opcode::SMOD_ri,
470 => Opcode::SMOD_ri_32,
471 => Opcode::SMOD_rr,
472 => Opcode::SMOD_rr_32,
473 => Opcode::SRA_ri,
474 => Opcode::SRA_ri_32,
475 => Opcode::SRA_rr,
476 => Opcode::SRA_rr_32,
477 => Opcode::SRL_ri,
478 => Opcode::SRL_ri_32,
479 => Opcode::SRL_rr,
480 => Opcode::SRL_rr_32,
481 => Opcode::STB,
482 => Opcode::STB32,
483 => Opcode::STBREL32,
484 => Opcode::STB_imm,
485 => Opcode::STD,
486 => Opcode::STDREL,
487 => Opcode::STD_imm,
488 => Opcode::STH,
489 => Opcode::STH32,
490 => Opcode::STHREL32,
491 => Opcode::STH_imm,
492 => Opcode::STW,
493 => Opcode::STW32,
494 => Opcode::STWREL32,
495 => Opcode::STW_imm,
496 => Opcode::SUB_ri,
497 => Opcode::SUB_ri_32,
498 => Opcode::SUB_rr,
499 => Opcode::SUB_rr_32,
500 => Opcode::XADDD,
501 => Opcode::XADDW,
502 => Opcode::XADDW32,
503 => Opcode::XANDD,
504 => Opcode::XANDW32,
505 => Opcode::XCHGD,
506 => Opcode::XCHGW32,
507 => Opcode::XFADDD,
508 => Opcode::XFADDW32,
509 => Opcode::XFANDD,
510 => Opcode::XFANDW32,
511 => Opcode::XFORD,
512 => Opcode::XFORW32,
513 => Opcode::XFXORD,
514 => Opcode::XFXORW32,
515 => Opcode::XORD,
516 => Opcode::XORW32,
517 => Opcode::XOR_ri,
518 => Opcode::XOR_ri_32,
519 => Opcode::XOR_rr,
520 => Opcode::XOR_rr_32,
521 => Opcode::XXORD,
522 => Opcode::XXORW32,
523 => Opcode::INSTRUCTION_LIST_END,
_ => Opcode::UNKNOWN(value),
}
}
}