bad64/
op.rs

1use core::fmt;
2
3use bad64_sys::*;
4
5use cstr_core::CStr;
6use num_traits::ToPrimitive;
7
8// %s/^pub const \(Operation_ARM64_\(\w\+\)\): Operation = \d\+;/    \2 = \1 as u32,/g
9
10/// An instruction operation
11#[derive(Clone, Copy, Debug, Hash, Eq, PartialEq, FromPrimitive, ToPrimitive)]
12#[repr(u32)]
13#[allow(non_camel_case_types)]
14pub enum Op {
15    ABS = Operation_ARM64_ABS as u32,
16    ADC = Operation_ARM64_ADC as u32,
17    ADCLB = Operation_ARM64_ADCLB as u32,
18    ADCLT = Operation_ARM64_ADCLT as u32,
19    ADCS = Operation_ARM64_ADCS as u32,
20    ADD = Operation_ARM64_ADD as u32,
21    ADDG = Operation_ARM64_ADDG as u32,
22    ADDHA = Operation_ARM64_ADDHA as u32,
23    ADDHN = Operation_ARM64_ADDHN as u32,
24    ADDHN2 = Operation_ARM64_ADDHN2 as u32,
25    ADDHNB = Operation_ARM64_ADDHNB as u32,
26    ADDHNT = Operation_ARM64_ADDHNT as u32,
27    ADDP = Operation_ARM64_ADDP as u32,
28    ADDPL = Operation_ARM64_ADDPL as u32,
29    ADDPT = Operation_ARM64_ADDPT as u32,
30    ADDQV = Operation_ARM64_ADDQV as u32,
31    ADDS = Operation_ARM64_ADDS as u32,
32    ADDSPL = Operation_ARM64_ADDSPL as u32,
33    ADDSVL = Operation_ARM64_ADDSVL as u32,
34    ADDV = Operation_ARM64_ADDV as u32,
35    ADDVA = Operation_ARM64_ADDVA as u32,
36    ADDVL = Operation_ARM64_ADDVL as u32,
37    ADR = Operation_ARM64_ADR as u32,
38    ADRP = Operation_ARM64_ADRP as u32,
39    AESD = Operation_ARM64_AESD as u32,
40    AESDIMC = Operation_ARM64_AESDIMC as u32,
41    AESE = Operation_ARM64_AESE as u32,
42    AESEMC = Operation_ARM64_AESEMC as u32,
43    AESIMC = Operation_ARM64_AESIMC as u32,
44    AESMC = Operation_ARM64_AESMC as u32,
45    AND = Operation_ARM64_AND as u32,
46    ANDQV = Operation_ARM64_ANDQV as u32,
47    ANDS = Operation_ARM64_ANDS as u32,
48    ANDV = Operation_ARM64_ANDV as u32,
49    APAS = Operation_ARM64_APAS as u32,
50    ASR = Operation_ARM64_ASR as u32,
51    ASRD = Operation_ARM64_ASRD as u32,
52    ASRR = Operation_ARM64_ASRR as u32,
53    ASRV = Operation_ARM64_ASRV as u32,
54    AT = Operation_ARM64_AT as u32,
55    AUTDA = Operation_ARM64_AUTDA as u32,
56    AUTDB = Operation_ARM64_AUTDB as u32,
57    AUTDZA = Operation_ARM64_AUTDZA as u32,
58    AUTDZB = Operation_ARM64_AUTDZB as u32,
59    AUTIA = Operation_ARM64_AUTIA as u32,
60    AUTIA1716 = Operation_ARM64_AUTIA1716 as u32,
61    AUTIA171615 = Operation_ARM64_AUTIA171615 as u32,
62    AUTIASP = Operation_ARM64_AUTIASP as u32,
63    AUTIASPPC = Operation_ARM64_AUTIASPPC as u32,
64    AUTIASPPCR = Operation_ARM64_AUTIASPPCR as u32,
65    AUTIAZ = Operation_ARM64_AUTIAZ as u32,
66    AUTIB = Operation_ARM64_AUTIB as u32,
67    AUTIB1716 = Operation_ARM64_AUTIB1716 as u32,
68    AUTIB171615 = Operation_ARM64_AUTIB171615 as u32,
69    AUTIBSP = Operation_ARM64_AUTIBSP as u32,
70    AUTIBSPPC = Operation_ARM64_AUTIBSPPC as u32,
71    AUTIBSPPCR = Operation_ARM64_AUTIBSPPCR as u32,
72    AUTIBZ = Operation_ARM64_AUTIBZ as u32,
73    AUTIZA = Operation_ARM64_AUTIZA as u32,
74    AUTIZB = Operation_ARM64_AUTIZB as u32,
75    AXFLAG = Operation_ARM64_AXFLAG as u32,
76    B = Operation_ARM64_B as u32,
77    BC = Operation_ARM64_BC as u32,
78    BCAX = Operation_ARM64_BCAX as u32,
79    BDEP = Operation_ARM64_BDEP as u32,
80    BEXT = Operation_ARM64_BEXT as u32,
81    BF1CVT = Operation_ARM64_BF1CVT as u32,
82    BF1CVTL = Operation_ARM64_BF1CVTL as u32,
83    BF1CVTL2 = Operation_ARM64_BF1CVTL2 as u32,
84    BF1CVTLT = Operation_ARM64_BF1CVTLT as u32,
85    BF2CVT = Operation_ARM64_BF2CVT as u32,
86    BF2CVTL = Operation_ARM64_BF2CVTL as u32,
87    BF2CVTL2 = Operation_ARM64_BF2CVTL2 as u32,
88    BF2CVTLT = Operation_ARM64_BF2CVTLT as u32,
89    BFADD = Operation_ARM64_BFADD as u32,
90    BFC = Operation_ARM64_BFC as u32,
91    BFCLAMP = Operation_ARM64_BFCLAMP as u32,
92    BFCVT = Operation_ARM64_BFCVT as u32,
93    BFCVTN = Operation_ARM64_BFCVTN as u32,
94    BFCVTN2 = Operation_ARM64_BFCVTN2 as u32,
95    BFCVTNT = Operation_ARM64_BFCVTNT as u32,
96    BFDOT = Operation_ARM64_BFDOT as u32,
97    BFI = Operation_ARM64_BFI as u32,
98    BFM = Operation_ARM64_BFM as u32,
99    BFMAX = Operation_ARM64_BFMAX as u32,
100    BFMAXNM = Operation_ARM64_BFMAXNM as u32,
101    BFMIN = Operation_ARM64_BFMIN as u32,
102    BFMINNM = Operation_ARM64_BFMINNM as u32,
103    BFMLA = Operation_ARM64_BFMLA as u32,
104    BFMLAL = Operation_ARM64_BFMLAL as u32,
105    BFMLALB = Operation_ARM64_BFMLALB as u32,
106    BFMLALT = Operation_ARM64_BFMLALT as u32,
107    BFMLS = Operation_ARM64_BFMLS as u32,
108    BFMLSL = Operation_ARM64_BFMLSL as u32,
109    BFMLSLB = Operation_ARM64_BFMLSLB as u32,
110    BFMLSLT = Operation_ARM64_BFMLSLT as u32,
111    BFMMLA = Operation_ARM64_BFMMLA as u32,
112    BFMOP4A = Operation_ARM64_BFMOP4A as u32,
113    BFMOP4S = Operation_ARM64_BFMOP4S as u32,
114    BFMOPA = Operation_ARM64_BFMOPA as u32,
115    BFMOPS = Operation_ARM64_BFMOPS as u32,
116    BFMUL = Operation_ARM64_BFMUL as u32,
117    BFSCALE = Operation_ARM64_BFSCALE as u32,
118    BFSUB = Operation_ARM64_BFSUB as u32,
119    BFTMOPA = Operation_ARM64_BFTMOPA as u32,
120    BFVDOT = Operation_ARM64_BFVDOT as u32,
121    BFXIL = Operation_ARM64_BFXIL as u32,
122    BGRP = Operation_ARM64_BGRP as u32,
123    BIC = Operation_ARM64_BIC as u32,
124    BICS = Operation_ARM64_BICS as u32,
125    BIF = Operation_ARM64_BIF as u32,
126    BIT = Operation_ARM64_BIT as u32,
127    BL = Operation_ARM64_BL as u32,
128    BLR = Operation_ARM64_BLR as u32,
129    BLRAA = Operation_ARM64_BLRAA as u32,
130    BLRAAZ = Operation_ARM64_BLRAAZ as u32,
131    BLRAB = Operation_ARM64_BLRAB as u32,
132    BLRABZ = Operation_ARM64_BLRABZ as u32,
133    BMOPA = Operation_ARM64_BMOPA as u32,
134    BMOPS = Operation_ARM64_BMOPS as u32,
135    BR = Operation_ARM64_BR as u32,
136    BRAA = Operation_ARM64_BRAA as u32,
137    BRAAZ = Operation_ARM64_BRAAZ as u32,
138    BRAB = Operation_ARM64_BRAB as u32,
139    BRABZ = Operation_ARM64_BRABZ as u32,
140    BRB = Operation_ARM64_BRB as u32,
141    BRK = Operation_ARM64_BRK as u32,
142    BRKA = Operation_ARM64_BRKA as u32,
143    BRKAS = Operation_ARM64_BRKAS as u32,
144    BRKB = Operation_ARM64_BRKB as u32,
145    BRKBS = Operation_ARM64_BRKBS as u32,
146    BRKN = Operation_ARM64_BRKN as u32,
147    BRKNS = Operation_ARM64_BRKNS as u32,
148    BRKPA = Operation_ARM64_BRKPA as u32,
149    BRKPAS = Operation_ARM64_BRKPAS as u32,
150    BRKPB = Operation_ARM64_BRKPB as u32,
151    BRKPBS = Operation_ARM64_BRKPBS as u32,
152    BSL = Operation_ARM64_BSL as u32,
153    BSL1N = Operation_ARM64_BSL1N as u32,
154    BSL2N = Operation_ARM64_BSL2N as u32,
155    BTI = Operation_ARM64_BTI as u32,
156    B_AL = Operation_ARM64_B_AL as u32,
157    B_CC = Operation_ARM64_B_CC as u32,
158    B_CS = Operation_ARM64_B_CS as u32,
159    B_EQ = Operation_ARM64_B_EQ as u32,
160    B_GE = Operation_ARM64_B_GE as u32,
161    B_GT = Operation_ARM64_B_GT as u32,
162    B_HI = Operation_ARM64_B_HI as u32,
163    B_LE = Operation_ARM64_B_LE as u32,
164    B_LS = Operation_ARM64_B_LS as u32,
165    B_LT = Operation_ARM64_B_LT as u32,
166    B_MI = Operation_ARM64_B_MI as u32,
167    B_NE = Operation_ARM64_B_NE as u32,
168    B_NV = Operation_ARM64_B_NV as u32,
169    B_PL = Operation_ARM64_B_PL as u32,
170    B_VC = Operation_ARM64_B_VC as u32,
171    B_VS = Operation_ARM64_B_VS as u32,
172    CADD = Operation_ARM64_CADD as u32,
173    CAS = Operation_ARM64_CAS as u32,
174    CASA = Operation_ARM64_CASA as u32,
175    CASAB = Operation_ARM64_CASAB as u32,
176    CASAH = Operation_ARM64_CASAH as u32,
177    CASAL = Operation_ARM64_CASAL as u32,
178    CASALB = Operation_ARM64_CASALB as u32,
179    CASALH = Operation_ARM64_CASALH as u32,
180    CASALT = Operation_ARM64_CASALT as u32,
181    CASAT = Operation_ARM64_CASAT as u32,
182    CASB = Operation_ARM64_CASB as u32,
183    CASH = Operation_ARM64_CASH as u32,
184    CASL = Operation_ARM64_CASL as u32,
185    CASLB = Operation_ARM64_CASLB as u32,
186    CASLH = Operation_ARM64_CASLH as u32,
187    CASLT = Operation_ARM64_CASLT as u32,
188    CASP = Operation_ARM64_CASP as u32,
189    CASPA = Operation_ARM64_CASPA as u32,
190    CASPAL = Operation_ARM64_CASPAL as u32,
191    CASPALT = Operation_ARM64_CASPALT as u32,
192    CASPAT = Operation_ARM64_CASPAT as u32,
193    CASPL = Operation_ARM64_CASPL as u32,
194    CASPLT = Operation_ARM64_CASPLT as u32,
195    CASPT = Operation_ARM64_CASPT as u32,
196    CAST = Operation_ARM64_CAST as u32,
197    CBBEQ = Operation_ARM64_CBBEQ as u32,
198    CBBGE = Operation_ARM64_CBBGE as u32,
199    CBBGT = Operation_ARM64_CBBGT as u32,
200    CBBHI = Operation_ARM64_CBBHI as u32,
201    CBBHS = Operation_ARM64_CBBHS as u32,
202    CBBLE = Operation_ARM64_CBBLE as u32,
203    CBBLO = Operation_ARM64_CBBLO as u32,
204    CBBLS = Operation_ARM64_CBBLS as u32,
205    CBBLT = Operation_ARM64_CBBLT as u32,
206    CBBNE = Operation_ARM64_CBBNE as u32,
207    CBEQ = Operation_ARM64_CBEQ as u32,
208    CBGE = Operation_ARM64_CBGE as u32,
209    CBGT = Operation_ARM64_CBGT as u32,
210    CBHEQ = Operation_ARM64_CBHEQ as u32,
211    CBHGE = Operation_ARM64_CBHGE as u32,
212    CBHGT = Operation_ARM64_CBHGT as u32,
213    CBHHI = Operation_ARM64_CBHHI as u32,
214    CBHHS = Operation_ARM64_CBHHS as u32,
215    CBHI = Operation_ARM64_CBHI as u32,
216    CBHLE = Operation_ARM64_CBHLE as u32,
217    CBHLO = Operation_ARM64_CBHLO as u32,
218    CBHLS = Operation_ARM64_CBHLS as u32,
219    CBHLT = Operation_ARM64_CBHLT as u32,
220    CBHNE = Operation_ARM64_CBHNE as u32,
221    CBHS = Operation_ARM64_CBHS as u32,
222    CBLE = Operation_ARM64_CBLE as u32,
223    CBLO = Operation_ARM64_CBLO as u32,
224    CBLS = Operation_ARM64_CBLS as u32,
225    CBLT = Operation_ARM64_CBLT as u32,
226    CBNE = Operation_ARM64_CBNE as u32,
227    CBNZ = Operation_ARM64_CBNZ as u32,
228    CBZ = Operation_ARM64_CBZ as u32,
229    CCMN = Operation_ARM64_CCMN as u32,
230    CCMP = Operation_ARM64_CCMP as u32,
231    CDOT = Operation_ARM64_CDOT as u32,
232    CFINV = Operation_ARM64_CFINV as u32,
233    CFP = Operation_ARM64_CFP as u32,
234    CHKFEAT = Operation_ARM64_CHKFEAT as u32,
235    CINC = Operation_ARM64_CINC as u32,
236    CINV = Operation_ARM64_CINV as u32,
237    CLASTA = Operation_ARM64_CLASTA as u32,
238    CLASTB = Operation_ARM64_CLASTB as u32,
239    CLRBHB = Operation_ARM64_CLRBHB as u32,
240    CLREX = Operation_ARM64_CLREX as u32,
241    CLS = Operation_ARM64_CLS as u32,
242    CLZ = Operation_ARM64_CLZ as u32,
243    CMEQ = Operation_ARM64_CMEQ as u32,
244    CMGE = Operation_ARM64_CMGE as u32,
245    CMGT = Operation_ARM64_CMGT as u32,
246    CMHI = Operation_ARM64_CMHI as u32,
247    CMHS = Operation_ARM64_CMHS as u32,
248    CMLA = Operation_ARM64_CMLA as u32,
249    CMLE = Operation_ARM64_CMLE as u32,
250    CMLT = Operation_ARM64_CMLT as u32,
251    CMN = Operation_ARM64_CMN as u32,
252    CMP = Operation_ARM64_CMP as u32,
253    CMPEQ = Operation_ARM64_CMPEQ as u32,
254    CMPGE = Operation_ARM64_CMPGE as u32,
255    CMPGT = Operation_ARM64_CMPGT as u32,
256    CMPHI = Operation_ARM64_CMPHI as u32,
257    CMPHS = Operation_ARM64_CMPHS as u32,
258    CMPLE = Operation_ARM64_CMPLE as u32,
259    CMPLO = Operation_ARM64_CMPLO as u32,
260    CMPLS = Operation_ARM64_CMPLS as u32,
261    CMPLT = Operation_ARM64_CMPLT as u32,
262    CMPNE = Operation_ARM64_CMPNE as u32,
263    CMPP = Operation_ARM64_CMPP as u32,
264    CMTST = Operation_ARM64_CMTST as u32,
265    CNEG = Operation_ARM64_CNEG as u32,
266    CNOT = Operation_ARM64_CNOT as u32,
267    CNT = Operation_ARM64_CNT as u32,
268    CNTB = Operation_ARM64_CNTB as u32,
269    CNTD = Operation_ARM64_CNTD as u32,
270    CNTH = Operation_ARM64_CNTH as u32,
271    CNTP = Operation_ARM64_CNTP as u32,
272    CNTW = Operation_ARM64_CNTW as u32,
273    COMPACT = Operation_ARM64_COMPACT as u32,
274    COSP = Operation_ARM64_COSP as u32,
275    CPP = Operation_ARM64_CPP as u32,
276    CPY = Operation_ARM64_CPY as u32,
277    CPYE = Operation_ARM64_CPYE as u32,
278    CPYEN = Operation_ARM64_CPYEN as u32,
279    CPYERN = Operation_ARM64_CPYERN as u32,
280    CPYERT = Operation_ARM64_CPYERT as u32,
281    CPYERTN = Operation_ARM64_CPYERTN as u32,
282    CPYERTRN = Operation_ARM64_CPYERTRN as u32,
283    CPYERTWN = Operation_ARM64_CPYERTWN as u32,
284    CPYET = Operation_ARM64_CPYET as u32,
285    CPYETN = Operation_ARM64_CPYETN as u32,
286    CPYETRN = Operation_ARM64_CPYETRN as u32,
287    CPYETWN = Operation_ARM64_CPYETWN as u32,
288    CPYEWN = Operation_ARM64_CPYEWN as u32,
289    CPYEWT = Operation_ARM64_CPYEWT as u32,
290    CPYEWTN = Operation_ARM64_CPYEWTN as u32,
291    CPYEWTRN = Operation_ARM64_CPYEWTRN as u32,
292    CPYEWTWN = Operation_ARM64_CPYEWTWN as u32,
293    CPYFE = Operation_ARM64_CPYFE as u32,
294    CPYFEN = Operation_ARM64_CPYFEN as u32,
295    CPYFERN = Operation_ARM64_CPYFERN as u32,
296    CPYFERT = Operation_ARM64_CPYFERT as u32,
297    CPYFERTN = Operation_ARM64_CPYFERTN as u32,
298    CPYFERTRN = Operation_ARM64_CPYFERTRN as u32,
299    CPYFERTWN = Operation_ARM64_CPYFERTWN as u32,
300    CPYFET = Operation_ARM64_CPYFET as u32,
301    CPYFETN = Operation_ARM64_CPYFETN as u32,
302    CPYFETRN = Operation_ARM64_CPYFETRN as u32,
303    CPYFETWN = Operation_ARM64_CPYFETWN as u32,
304    CPYFEWN = Operation_ARM64_CPYFEWN as u32,
305    CPYFEWT = Operation_ARM64_CPYFEWT as u32,
306    CPYFEWTN = Operation_ARM64_CPYFEWTN as u32,
307    CPYFEWTRN = Operation_ARM64_CPYFEWTRN as u32,
308    CPYFEWTWN = Operation_ARM64_CPYFEWTWN as u32,
309    CPYFM = Operation_ARM64_CPYFM as u32,
310    CPYFMN = Operation_ARM64_CPYFMN as u32,
311    CPYFMRN = Operation_ARM64_CPYFMRN as u32,
312    CPYFMRT = Operation_ARM64_CPYFMRT as u32,
313    CPYFMRTN = Operation_ARM64_CPYFMRTN as u32,
314    CPYFMRTRN = Operation_ARM64_CPYFMRTRN as u32,
315    CPYFMRTWN = Operation_ARM64_CPYFMRTWN as u32,
316    CPYFMT = Operation_ARM64_CPYFMT as u32,
317    CPYFMTN = Operation_ARM64_CPYFMTN as u32,
318    CPYFMTRN = Operation_ARM64_CPYFMTRN as u32,
319    CPYFMTWN = Operation_ARM64_CPYFMTWN as u32,
320    CPYFMWN = Operation_ARM64_CPYFMWN as u32,
321    CPYFMWT = Operation_ARM64_CPYFMWT as u32,
322    CPYFMWTN = Operation_ARM64_CPYFMWTN as u32,
323    CPYFMWTRN = Operation_ARM64_CPYFMWTRN as u32,
324    CPYFMWTWN = Operation_ARM64_CPYFMWTWN as u32,
325    CPYFP = Operation_ARM64_CPYFP as u32,
326    CPYFPN = Operation_ARM64_CPYFPN as u32,
327    CPYFPRN = Operation_ARM64_CPYFPRN as u32,
328    CPYFPRT = Operation_ARM64_CPYFPRT as u32,
329    CPYFPRTN = Operation_ARM64_CPYFPRTN as u32,
330    CPYFPRTRN = Operation_ARM64_CPYFPRTRN as u32,
331    CPYFPRTWN = Operation_ARM64_CPYFPRTWN as u32,
332    CPYFPT = Operation_ARM64_CPYFPT as u32,
333    CPYFPTN = Operation_ARM64_CPYFPTN as u32,
334    CPYFPTRN = Operation_ARM64_CPYFPTRN as u32,
335    CPYFPTWN = Operation_ARM64_CPYFPTWN as u32,
336    CPYFPWN = Operation_ARM64_CPYFPWN as u32,
337    CPYFPWT = Operation_ARM64_CPYFPWT as u32,
338    CPYFPWTN = Operation_ARM64_CPYFPWTN as u32,
339    CPYFPWTRN = Operation_ARM64_CPYFPWTRN as u32,
340    CPYFPWTWN = Operation_ARM64_CPYFPWTWN as u32,
341    CPYM = Operation_ARM64_CPYM as u32,
342    CPYMN = Operation_ARM64_CPYMN as u32,
343    CPYMRN = Operation_ARM64_CPYMRN as u32,
344    CPYMRT = Operation_ARM64_CPYMRT as u32,
345    CPYMRTN = Operation_ARM64_CPYMRTN as u32,
346    CPYMRTRN = Operation_ARM64_CPYMRTRN as u32,
347    CPYMRTWN = Operation_ARM64_CPYMRTWN as u32,
348    CPYMT = Operation_ARM64_CPYMT as u32,
349    CPYMTN = Operation_ARM64_CPYMTN as u32,
350    CPYMTRN = Operation_ARM64_CPYMTRN as u32,
351    CPYMTWN = Operation_ARM64_CPYMTWN as u32,
352    CPYMWN = Operation_ARM64_CPYMWN as u32,
353    CPYMWT = Operation_ARM64_CPYMWT as u32,
354    CPYMWTN = Operation_ARM64_CPYMWTN as u32,
355    CPYMWTRN = Operation_ARM64_CPYMWTRN as u32,
356    CPYMWTWN = Operation_ARM64_CPYMWTWN as u32,
357    CPYP = Operation_ARM64_CPYP as u32,
358    CPYPN = Operation_ARM64_CPYPN as u32,
359    CPYPRN = Operation_ARM64_CPYPRN as u32,
360    CPYPRT = Operation_ARM64_CPYPRT as u32,
361    CPYPRTN = Operation_ARM64_CPYPRTN as u32,
362    CPYPRTRN = Operation_ARM64_CPYPRTRN as u32,
363    CPYPRTWN = Operation_ARM64_CPYPRTWN as u32,
364    CPYPT = Operation_ARM64_CPYPT as u32,
365    CPYPTN = Operation_ARM64_CPYPTN as u32,
366    CPYPTRN = Operation_ARM64_CPYPTRN as u32,
367    CPYPTWN = Operation_ARM64_CPYPTWN as u32,
368    CPYPWN = Operation_ARM64_CPYPWN as u32,
369    CPYPWT = Operation_ARM64_CPYPWT as u32,
370    CPYPWTN = Operation_ARM64_CPYPWTN as u32,
371    CPYPWTRN = Operation_ARM64_CPYPWTRN as u32,
372    CPYPWTWN = Operation_ARM64_CPYPWTWN as u32,
373    CRC32B = Operation_ARM64_CRC32B as u32,
374    CRC32CB = Operation_ARM64_CRC32CB as u32,
375    CRC32CH = Operation_ARM64_CRC32CH as u32,
376    CRC32CW = Operation_ARM64_CRC32CW as u32,
377    CRC32CX = Operation_ARM64_CRC32CX as u32,
378    CRC32H = Operation_ARM64_CRC32H as u32,
379    CRC32W = Operation_ARM64_CRC32W as u32,
380    CRC32X = Operation_ARM64_CRC32X as u32,
381    CSDB = Operation_ARM64_CSDB as u32,
382    CSEL = Operation_ARM64_CSEL as u32,
383    CSET = Operation_ARM64_CSET as u32,
384    CSETM = Operation_ARM64_CSETM as u32,
385    CSINC = Operation_ARM64_CSINC as u32,
386    CSINV = Operation_ARM64_CSINV as u32,
387    CSNEG = Operation_ARM64_CSNEG as u32,
388    CTERMEQ = Operation_ARM64_CTERMEQ as u32,
389    CTERMNE = Operation_ARM64_CTERMNE as u32,
390    CTZ = Operation_ARM64_CTZ as u32,
391    DC = Operation_ARM64_DC as u32,
392    DCPS1 = Operation_ARM64_DCPS1 as u32,
393    DCPS2 = Operation_ARM64_DCPS2 as u32,
394    DCPS3 = Operation_ARM64_DCPS3 as u32,
395    DECB = Operation_ARM64_DECB as u32,
396    DECD = Operation_ARM64_DECD as u32,
397    DECH = Operation_ARM64_DECH as u32,
398    DECP = Operation_ARM64_DECP as u32,
399    DECW = Operation_ARM64_DECW as u32,
400    DGH = Operation_ARM64_DGH as u32,
401    DMB = Operation_ARM64_DMB as u32,
402    DRPS = Operation_ARM64_DRPS as u32,
403    DSB = Operation_ARM64_DSB as u32,
404    DUP = Operation_ARM64_DUP as u32,
405    DUPM = Operation_ARM64_DUPM as u32,
406    DUPQ = Operation_ARM64_DUPQ as u32,
407    DVP = Operation_ARM64_DVP as u32,
408    EON = Operation_ARM64_EON as u32,
409    EOR = Operation_ARM64_EOR as u32,
410    EOR3 = Operation_ARM64_EOR3 as u32,
411    EORBT = Operation_ARM64_EORBT as u32,
412    EORQV = Operation_ARM64_EORQV as u32,
413    EORS = Operation_ARM64_EORS as u32,
414    EORTB = Operation_ARM64_EORTB as u32,
415    EORV = Operation_ARM64_EORV as u32,
416    ERET = Operation_ARM64_ERET as u32,
417    ERETAA = Operation_ARM64_ERETAA as u32,
418    ERETAB = Operation_ARM64_ERETAB as u32,
419    ESB = Operation_ARM64_ESB as u32,
420    EXPAND = Operation_ARM64_EXPAND as u32,
421    EXT = Operation_ARM64_EXT as u32,
422    EXTQ = Operation_ARM64_EXTQ as u32,
423    EXTR = Operation_ARM64_EXTR as u32,
424    F1CVT = Operation_ARM64_F1CVT as u32,
425    F1CVTL = Operation_ARM64_F1CVTL as u32,
426    F1CVTL2 = Operation_ARM64_F1CVTL2 as u32,
427    F1CVTLT = Operation_ARM64_F1CVTLT as u32,
428    F2CVT = Operation_ARM64_F2CVT as u32,
429    F2CVTL = Operation_ARM64_F2CVTL as u32,
430    F2CVTL2 = Operation_ARM64_F2CVTL2 as u32,
431    F2CVTLT = Operation_ARM64_F2CVTLT as u32,
432    FABD = Operation_ARM64_FABD as u32,
433    FABS = Operation_ARM64_FABS as u32,
434    FACGE = Operation_ARM64_FACGE as u32,
435    FACGT = Operation_ARM64_FACGT as u32,
436    FACLE = Operation_ARM64_FACLE as u32,
437    FACLT = Operation_ARM64_FACLT as u32,
438    FADD = Operation_ARM64_FADD as u32,
439    FADDA = Operation_ARM64_FADDA as u32,
440    FADDP = Operation_ARM64_FADDP as u32,
441    FADDQV = Operation_ARM64_FADDQV as u32,
442    FADDV = Operation_ARM64_FADDV as u32,
443    FAMAX = Operation_ARM64_FAMAX as u32,
444    FAMIN = Operation_ARM64_FAMIN as u32,
445    FCADD = Operation_ARM64_FCADD as u32,
446    FCCMP = Operation_ARM64_FCCMP as u32,
447    FCCMPE = Operation_ARM64_FCCMPE as u32,
448    FCLAMP = Operation_ARM64_FCLAMP as u32,
449    FCMEQ = Operation_ARM64_FCMEQ as u32,
450    FCMGE = Operation_ARM64_FCMGE as u32,
451    FCMGT = Operation_ARM64_FCMGT as u32,
452    FCMLA = Operation_ARM64_FCMLA as u32,
453    FCMLE = Operation_ARM64_FCMLE as u32,
454    FCMLT = Operation_ARM64_FCMLT as u32,
455    FCMNE = Operation_ARM64_FCMNE as u32,
456    FCMP = Operation_ARM64_FCMP as u32,
457    FCMPE = Operation_ARM64_FCMPE as u32,
458    FCMUO = Operation_ARM64_FCMUO as u32,
459    FCPY = Operation_ARM64_FCPY as u32,
460    FCSEL = Operation_ARM64_FCSEL as u32,
461    FCVT = Operation_ARM64_FCVT as u32,
462    FCVTAS = Operation_ARM64_FCVTAS as u32,
463    FCVTAU = Operation_ARM64_FCVTAU as u32,
464    FCVTL = Operation_ARM64_FCVTL as u32,
465    FCVTL2 = Operation_ARM64_FCVTL2 as u32,
466    FCVTLT = Operation_ARM64_FCVTLT as u32,
467    FCVTMS = Operation_ARM64_FCVTMS as u32,
468    FCVTMU = Operation_ARM64_FCVTMU as u32,
469    FCVTN = Operation_ARM64_FCVTN as u32,
470    FCVTN2 = Operation_ARM64_FCVTN2 as u32,
471    FCVTNB = Operation_ARM64_FCVTNB as u32,
472    FCVTNS = Operation_ARM64_FCVTNS as u32,
473    FCVTNT = Operation_ARM64_FCVTNT as u32,
474    FCVTNU = Operation_ARM64_FCVTNU as u32,
475    FCVTPS = Operation_ARM64_FCVTPS as u32,
476    FCVTPU = Operation_ARM64_FCVTPU as u32,
477    FCVTX = Operation_ARM64_FCVTX as u32,
478    FCVTXN = Operation_ARM64_FCVTXN as u32,
479    FCVTXN2 = Operation_ARM64_FCVTXN2 as u32,
480    FCVTXNT = Operation_ARM64_FCVTXNT as u32,
481    FCVTZS = Operation_ARM64_FCVTZS as u32,
482    FCVTZU = Operation_ARM64_FCVTZU as u32,
483    FDIV = Operation_ARM64_FDIV as u32,
484    FDIVR = Operation_ARM64_FDIVR as u32,
485    FDOT = Operation_ARM64_FDOT as u32,
486    FDUP = Operation_ARM64_FDUP as u32,
487    FEXPA = Operation_ARM64_FEXPA as u32,
488    FIRSTP = Operation_ARM64_FIRSTP as u32,
489    FJCVTZS = Operation_ARM64_FJCVTZS as u32,
490    FLOGB = Operation_ARM64_FLOGB as u32,
491    FMAD = Operation_ARM64_FMAD as u32,
492    FMADD = Operation_ARM64_FMADD as u32,
493    FMAX = Operation_ARM64_FMAX as u32,
494    FMAXNM = Operation_ARM64_FMAXNM as u32,
495    FMAXNMP = Operation_ARM64_FMAXNMP as u32,
496    FMAXNMQV = Operation_ARM64_FMAXNMQV as u32,
497    FMAXNMV = Operation_ARM64_FMAXNMV as u32,
498    FMAXP = Operation_ARM64_FMAXP as u32,
499    FMAXQV = Operation_ARM64_FMAXQV as u32,
500    FMAXV = Operation_ARM64_FMAXV as u32,
501    FMIN = Operation_ARM64_FMIN as u32,
502    FMINNM = Operation_ARM64_FMINNM as u32,
503    FMINNMP = Operation_ARM64_FMINNMP as u32,
504    FMINNMQV = Operation_ARM64_FMINNMQV as u32,
505    FMINNMV = Operation_ARM64_FMINNMV as u32,
506    FMINP = Operation_ARM64_FMINP as u32,
507    FMINQV = Operation_ARM64_FMINQV as u32,
508    FMINV = Operation_ARM64_FMINV as u32,
509    FMLA = Operation_ARM64_FMLA as u32,
510    FMLAL = Operation_ARM64_FMLAL as u32,
511    FMLAL2 = Operation_ARM64_FMLAL2 as u32,
512    FMLALB = Operation_ARM64_FMLALB as u32,
513    FMLALL = Operation_ARM64_FMLALL as u32,
514    FMLALLBB = Operation_ARM64_FMLALLBB as u32,
515    FMLALLBT = Operation_ARM64_FMLALLBT as u32,
516    FMLALLTB = Operation_ARM64_FMLALLTB as u32,
517    FMLALLTT = Operation_ARM64_FMLALLTT as u32,
518    FMLALT = Operation_ARM64_FMLALT as u32,
519    FMLS = Operation_ARM64_FMLS as u32,
520    FMLSL = Operation_ARM64_FMLSL as u32,
521    FMLSL2 = Operation_ARM64_FMLSL2 as u32,
522    FMLSLB = Operation_ARM64_FMLSLB as u32,
523    FMLSLT = Operation_ARM64_FMLSLT as u32,
524    FMMLA = Operation_ARM64_FMMLA as u32,
525    FMOP4A = Operation_ARM64_FMOP4A as u32,
526    FMOP4S = Operation_ARM64_FMOP4S as u32,
527    FMOPA = Operation_ARM64_FMOPA as u32,
528    FMOPS = Operation_ARM64_FMOPS as u32,
529    FMOV = Operation_ARM64_FMOV as u32,
530    FMSB = Operation_ARM64_FMSB as u32,
531    FMSUB = Operation_ARM64_FMSUB as u32,
532    FMUL = Operation_ARM64_FMUL as u32,
533    FMULX = Operation_ARM64_FMULX as u32,
534    FNEG = Operation_ARM64_FNEG as u32,
535    FNMAD = Operation_ARM64_FNMAD as u32,
536    FNMADD = Operation_ARM64_FNMADD as u32,
537    FNMLA = Operation_ARM64_FNMLA as u32,
538    FNMLS = Operation_ARM64_FNMLS as u32,
539    FNMSB = Operation_ARM64_FNMSB as u32,
540    FNMSUB = Operation_ARM64_FNMSUB as u32,
541    FNMUL = Operation_ARM64_FNMUL as u32,
542    FRECPE = Operation_ARM64_FRECPE as u32,
543    FRECPS = Operation_ARM64_FRECPS as u32,
544    FRECPX = Operation_ARM64_FRECPX as u32,
545    FRINT32X = Operation_ARM64_FRINT32X as u32,
546    FRINT32Z = Operation_ARM64_FRINT32Z as u32,
547    FRINT64X = Operation_ARM64_FRINT64X as u32,
548    FRINT64Z = Operation_ARM64_FRINT64Z as u32,
549    FRINTA = Operation_ARM64_FRINTA as u32,
550    FRINTI = Operation_ARM64_FRINTI as u32,
551    FRINTM = Operation_ARM64_FRINTM as u32,
552    FRINTN = Operation_ARM64_FRINTN as u32,
553    FRINTP = Operation_ARM64_FRINTP as u32,
554    FRINTX = Operation_ARM64_FRINTX as u32,
555    FRINTZ = Operation_ARM64_FRINTZ as u32,
556    FRSQRTE = Operation_ARM64_FRSQRTE as u32,
557    FRSQRTS = Operation_ARM64_FRSQRTS as u32,
558    FSCALE = Operation_ARM64_FSCALE as u32,
559    FSQRT = Operation_ARM64_FSQRT as u32,
560    FSUB = Operation_ARM64_FSUB as u32,
561    FSUBR = Operation_ARM64_FSUBR as u32,
562    FTMAD = Operation_ARM64_FTMAD as u32,
563    FTMOPA = Operation_ARM64_FTMOPA as u32,
564    FTSMUL = Operation_ARM64_FTSMUL as u32,
565    FTSSEL = Operation_ARM64_FTSSEL as u32,
566    FVDOT = Operation_ARM64_FVDOT as u32,
567    FVDOTB = Operation_ARM64_FVDOTB as u32,
568    FVDOTT = Operation_ARM64_FVDOTT as u32,
569    GCSB = Operation_ARM64_GCSB as u32,
570    GCSPOPCX = Operation_ARM64_GCSPOPCX as u32,
571    GCSPOPM = Operation_ARM64_GCSPOPM as u32,
572    GCSPOPX = Operation_ARM64_GCSPOPX as u32,
573    GCSPUSHM = Operation_ARM64_GCSPUSHM as u32,
574    GCSPUSHX = Operation_ARM64_GCSPUSHX as u32,
575    GCSSS1 = Operation_ARM64_GCSSS1 as u32,
576    GCSSS2 = Operation_ARM64_GCSSS2 as u32,
577    GCSSTR = Operation_ARM64_GCSSTR as u32,
578    GCSSTTR = Operation_ARM64_GCSSTTR as u32,
579    GMI = Operation_ARM64_GMI as u32,
580    HINT = Operation_ARM64_HINT as u32,
581    HISTCNT = Operation_ARM64_HISTCNT as u32,
582    HISTSEG = Operation_ARM64_HISTSEG as u32,
583    HLT = Operation_ARM64_HLT as u32,
584    HVC = Operation_ARM64_HVC as u32,
585    IC = Operation_ARM64_IC as u32,
586    INCB = Operation_ARM64_INCB as u32,
587    INCD = Operation_ARM64_INCD as u32,
588    INCH = Operation_ARM64_INCH as u32,
589    INCP = Operation_ARM64_INCP as u32,
590    INCW = Operation_ARM64_INCW as u32,
591    INDEX = Operation_ARM64_INDEX as u32,
592    INS = Operation_ARM64_INS as u32,
593    INSR = Operation_ARM64_INSR as u32,
594    IRG = Operation_ARM64_IRG as u32,
595    ISB = Operation_ARM64_ISB as u32,
596    LASTA = Operation_ARM64_LASTA as u32,
597    LASTB = Operation_ARM64_LASTB as u32,
598    LASTP = Operation_ARM64_LASTP as u32,
599    LD1 = Operation_ARM64_LD1 as u32,
600    LD1B = Operation_ARM64_LD1B as u32,
601    LD1D = Operation_ARM64_LD1D as u32,
602    LD1H = Operation_ARM64_LD1H as u32,
603    LD1Q = Operation_ARM64_LD1Q as u32,
604    LD1R = Operation_ARM64_LD1R as u32,
605    LD1RB = Operation_ARM64_LD1RB as u32,
606    LD1RD = Operation_ARM64_LD1RD as u32,
607    LD1RH = Operation_ARM64_LD1RH as u32,
608    LD1ROB = Operation_ARM64_LD1ROB as u32,
609    LD1ROD = Operation_ARM64_LD1ROD as u32,
610    LD1ROH = Operation_ARM64_LD1ROH as u32,
611    LD1ROW = Operation_ARM64_LD1ROW as u32,
612    LD1RQB = Operation_ARM64_LD1RQB as u32,
613    LD1RQD = Operation_ARM64_LD1RQD as u32,
614    LD1RQH = Operation_ARM64_LD1RQH as u32,
615    LD1RQW = Operation_ARM64_LD1RQW as u32,
616    LD1RSB = Operation_ARM64_LD1RSB as u32,
617    LD1RSH = Operation_ARM64_LD1RSH as u32,
618    LD1RSW = Operation_ARM64_LD1RSW as u32,
619    LD1RW = Operation_ARM64_LD1RW as u32,
620    LD1SB = Operation_ARM64_LD1SB as u32,
621    LD1SH = Operation_ARM64_LD1SH as u32,
622    LD1SW = Operation_ARM64_LD1SW as u32,
623    LD1W = Operation_ARM64_LD1W as u32,
624    LD2 = Operation_ARM64_LD2 as u32,
625    LD2B = Operation_ARM64_LD2B as u32,
626    LD2D = Operation_ARM64_LD2D as u32,
627    LD2H = Operation_ARM64_LD2H as u32,
628    LD2Q = Operation_ARM64_LD2Q as u32,
629    LD2R = Operation_ARM64_LD2R as u32,
630    LD2W = Operation_ARM64_LD2W as u32,
631    LD3 = Operation_ARM64_LD3 as u32,
632    LD3B = Operation_ARM64_LD3B as u32,
633    LD3D = Operation_ARM64_LD3D as u32,
634    LD3H = Operation_ARM64_LD3H as u32,
635    LD3Q = Operation_ARM64_LD3Q as u32,
636    LD3R = Operation_ARM64_LD3R as u32,
637    LD3W = Operation_ARM64_LD3W as u32,
638    LD4 = Operation_ARM64_LD4 as u32,
639    LD4B = Operation_ARM64_LD4B as u32,
640    LD4D = Operation_ARM64_LD4D as u32,
641    LD4H = Operation_ARM64_LD4H as u32,
642    LD4Q = Operation_ARM64_LD4Q as u32,
643    LD4R = Operation_ARM64_LD4R as u32,
644    LD4W = Operation_ARM64_LD4W as u32,
645    LD64B = Operation_ARM64_LD64B as u32,
646    LDADD = Operation_ARM64_LDADD as u32,
647    LDADDA = Operation_ARM64_LDADDA as u32,
648    LDADDAB = Operation_ARM64_LDADDAB as u32,
649    LDADDAH = Operation_ARM64_LDADDAH as u32,
650    LDADDAL = Operation_ARM64_LDADDAL as u32,
651    LDADDALB = Operation_ARM64_LDADDALB as u32,
652    LDADDALH = Operation_ARM64_LDADDALH as u32,
653    LDADDB = Operation_ARM64_LDADDB as u32,
654    LDADDH = Operation_ARM64_LDADDH as u32,
655    LDADDL = Operation_ARM64_LDADDL as u32,
656    LDADDLB = Operation_ARM64_LDADDLB as u32,
657    LDADDLH = Operation_ARM64_LDADDLH as u32,
658    LDAP1 = Operation_ARM64_LDAP1 as u32,
659    LDAPR = Operation_ARM64_LDAPR as u32,
660    LDAPRB = Operation_ARM64_LDAPRB as u32,
661    LDAPRH = Operation_ARM64_LDAPRH as u32,
662    LDAPUR = Operation_ARM64_LDAPUR as u32,
663    LDAPURB = Operation_ARM64_LDAPURB as u32,
664    LDAPURH = Operation_ARM64_LDAPURH as u32,
665    LDAPURSB = Operation_ARM64_LDAPURSB as u32,
666    LDAPURSH = Operation_ARM64_LDAPURSH as u32,
667    LDAPURSW = Operation_ARM64_LDAPURSW as u32,
668    LDAR = Operation_ARM64_LDAR as u32,
669    LDARB = Operation_ARM64_LDARB as u32,
670    LDARH = Operation_ARM64_LDARH as u32,
671    LDATXR = Operation_ARM64_LDATXR as u32,
672    LDAXP = Operation_ARM64_LDAXP as u32,
673    LDAXR = Operation_ARM64_LDAXR as u32,
674    LDAXRB = Operation_ARM64_LDAXRB as u32,
675    LDAXRH = Operation_ARM64_LDAXRH as u32,
676    LDBFADD = Operation_ARM64_LDBFADD as u32,
677    LDBFADDA = Operation_ARM64_LDBFADDA as u32,
678    LDBFADDAL = Operation_ARM64_LDBFADDAL as u32,
679    LDBFADDL = Operation_ARM64_LDBFADDL as u32,
680    LDBFMAX = Operation_ARM64_LDBFMAX as u32,
681    LDBFMAXA = Operation_ARM64_LDBFMAXA as u32,
682    LDBFMAXAL = Operation_ARM64_LDBFMAXAL as u32,
683    LDBFMAXL = Operation_ARM64_LDBFMAXL as u32,
684    LDBFMAXNM = Operation_ARM64_LDBFMAXNM as u32,
685    LDBFMAXNMA = Operation_ARM64_LDBFMAXNMA as u32,
686    LDBFMAXNMAL = Operation_ARM64_LDBFMAXNMAL as u32,
687    LDBFMAXNML = Operation_ARM64_LDBFMAXNML as u32,
688    LDBFMIN = Operation_ARM64_LDBFMIN as u32,
689    LDBFMINA = Operation_ARM64_LDBFMINA as u32,
690    LDBFMINAL = Operation_ARM64_LDBFMINAL as u32,
691    LDBFMINL = Operation_ARM64_LDBFMINL as u32,
692    LDBFMINNM = Operation_ARM64_LDBFMINNM as u32,
693    LDBFMINNMA = Operation_ARM64_LDBFMINNMA as u32,
694    LDBFMINNMAL = Operation_ARM64_LDBFMINNMAL as u32,
695    LDBFMINNML = Operation_ARM64_LDBFMINNML as u32,
696    LDCLR = Operation_ARM64_LDCLR as u32,
697    LDCLRA = Operation_ARM64_LDCLRA as u32,
698    LDCLRAB = Operation_ARM64_LDCLRAB as u32,
699    LDCLRAH = Operation_ARM64_LDCLRAH as u32,
700    LDCLRAL = Operation_ARM64_LDCLRAL as u32,
701    LDCLRALB = Operation_ARM64_LDCLRALB as u32,
702    LDCLRALH = Operation_ARM64_LDCLRALH as u32,
703    LDCLRB = Operation_ARM64_LDCLRB as u32,
704    LDCLRH = Operation_ARM64_LDCLRH as u32,
705    LDCLRL = Operation_ARM64_LDCLRL as u32,
706    LDCLRLB = Operation_ARM64_LDCLRLB as u32,
707    LDCLRLH = Operation_ARM64_LDCLRLH as u32,
708    LDCLRP = Operation_ARM64_LDCLRP as u32,
709    LDCLRPA = Operation_ARM64_LDCLRPA as u32,
710    LDCLRPAL = Operation_ARM64_LDCLRPAL as u32,
711    LDCLRPL = Operation_ARM64_LDCLRPL as u32,
712    LDEOR = Operation_ARM64_LDEOR as u32,
713    LDEORA = Operation_ARM64_LDEORA as u32,
714    LDEORAB = Operation_ARM64_LDEORAB as u32,
715    LDEORAH = Operation_ARM64_LDEORAH as u32,
716    LDEORAL = Operation_ARM64_LDEORAL as u32,
717    LDEORALB = Operation_ARM64_LDEORALB as u32,
718    LDEORALH = Operation_ARM64_LDEORALH as u32,
719    LDEORB = Operation_ARM64_LDEORB as u32,
720    LDEORH = Operation_ARM64_LDEORH as u32,
721    LDEORL = Operation_ARM64_LDEORL as u32,
722    LDEORLB = Operation_ARM64_LDEORLB as u32,
723    LDEORLH = Operation_ARM64_LDEORLH as u32,
724    LDFADD = Operation_ARM64_LDFADD as u32,
725    LDFADDA = Operation_ARM64_LDFADDA as u32,
726    LDFADDAL = Operation_ARM64_LDFADDAL as u32,
727    LDFADDL = Operation_ARM64_LDFADDL as u32,
728    LDFF1B = Operation_ARM64_LDFF1B as u32,
729    LDFF1D = Operation_ARM64_LDFF1D as u32,
730    LDFF1H = Operation_ARM64_LDFF1H as u32,
731    LDFF1SB = Operation_ARM64_LDFF1SB as u32,
732    LDFF1SH = Operation_ARM64_LDFF1SH as u32,
733    LDFF1SW = Operation_ARM64_LDFF1SW as u32,
734    LDFF1W = Operation_ARM64_LDFF1W as u32,
735    LDFMAX = Operation_ARM64_LDFMAX as u32,
736    LDFMAXA = Operation_ARM64_LDFMAXA as u32,
737    LDFMAXAL = Operation_ARM64_LDFMAXAL as u32,
738    LDFMAXL = Operation_ARM64_LDFMAXL as u32,
739    LDFMAXNM = Operation_ARM64_LDFMAXNM as u32,
740    LDFMAXNMA = Operation_ARM64_LDFMAXNMA as u32,
741    LDFMAXNMAL = Operation_ARM64_LDFMAXNMAL as u32,
742    LDFMAXNML = Operation_ARM64_LDFMAXNML as u32,
743    LDFMIN = Operation_ARM64_LDFMIN as u32,
744    LDFMINA = Operation_ARM64_LDFMINA as u32,
745    LDFMINAL = Operation_ARM64_LDFMINAL as u32,
746    LDFMINL = Operation_ARM64_LDFMINL as u32,
747    LDFMINNM = Operation_ARM64_LDFMINNM as u32,
748    LDFMINNMA = Operation_ARM64_LDFMINNMA as u32,
749    LDFMINNMAL = Operation_ARM64_LDFMINNMAL as u32,
750    LDFMINNML = Operation_ARM64_LDFMINNML as u32,
751    LDG = Operation_ARM64_LDG as u32,
752    LDGM = Operation_ARM64_LDGM as u32,
753    LDIAPP = Operation_ARM64_LDIAPP as u32,
754    LDLAR = Operation_ARM64_LDLAR as u32,
755    LDLARB = Operation_ARM64_LDLARB as u32,
756    LDLARH = Operation_ARM64_LDLARH as u32,
757    LDNF1B = Operation_ARM64_LDNF1B as u32,
758    LDNF1D = Operation_ARM64_LDNF1D as u32,
759    LDNF1H = Operation_ARM64_LDNF1H as u32,
760    LDNF1SB = Operation_ARM64_LDNF1SB as u32,
761    LDNF1SH = Operation_ARM64_LDNF1SH as u32,
762    LDNF1SW = Operation_ARM64_LDNF1SW as u32,
763    LDNF1W = Operation_ARM64_LDNF1W as u32,
764    LDNP = Operation_ARM64_LDNP as u32,
765    LDNT1B = Operation_ARM64_LDNT1B as u32,
766    LDNT1D = Operation_ARM64_LDNT1D as u32,
767    LDNT1H = Operation_ARM64_LDNT1H as u32,
768    LDNT1SB = Operation_ARM64_LDNT1SB as u32,
769    LDNT1SH = Operation_ARM64_LDNT1SH as u32,
770    LDNT1SW = Operation_ARM64_LDNT1SW as u32,
771    LDNT1W = Operation_ARM64_LDNT1W as u32,
772    LDP = Operation_ARM64_LDP as u32,
773    LDPSW = Operation_ARM64_LDPSW as u32,
774    LDR = Operation_ARM64_LDR as u32,
775    LDRAA = Operation_ARM64_LDRAA as u32,
776    LDRAB = Operation_ARM64_LDRAB as u32,
777    LDRB = Operation_ARM64_LDRB as u32,
778    LDRH = Operation_ARM64_LDRH as u32,
779    LDRSB = Operation_ARM64_LDRSB as u32,
780    LDRSH = Operation_ARM64_LDRSH as u32,
781    LDRSW = Operation_ARM64_LDRSW as u32,
782    LDSET = Operation_ARM64_LDSET as u32,
783    LDSETA = Operation_ARM64_LDSETA as u32,
784    LDSETAB = Operation_ARM64_LDSETAB as u32,
785    LDSETAH = Operation_ARM64_LDSETAH as u32,
786    LDSETAL = Operation_ARM64_LDSETAL as u32,
787    LDSETALB = Operation_ARM64_LDSETALB as u32,
788    LDSETALH = Operation_ARM64_LDSETALH as u32,
789    LDSETB = Operation_ARM64_LDSETB as u32,
790    LDSETH = Operation_ARM64_LDSETH as u32,
791    LDSETL = Operation_ARM64_LDSETL as u32,
792    LDSETLB = Operation_ARM64_LDSETLB as u32,
793    LDSETLH = Operation_ARM64_LDSETLH as u32,
794    LDSETP = Operation_ARM64_LDSETP as u32,
795    LDSETPA = Operation_ARM64_LDSETPA as u32,
796    LDSETPAL = Operation_ARM64_LDSETPAL as u32,
797    LDSETPL = Operation_ARM64_LDSETPL as u32,
798    LDSMAX = Operation_ARM64_LDSMAX as u32,
799    LDSMAXA = Operation_ARM64_LDSMAXA as u32,
800    LDSMAXAB = Operation_ARM64_LDSMAXAB as u32,
801    LDSMAXAH = Operation_ARM64_LDSMAXAH as u32,
802    LDSMAXAL = Operation_ARM64_LDSMAXAL as u32,
803    LDSMAXALB = Operation_ARM64_LDSMAXALB as u32,
804    LDSMAXALH = Operation_ARM64_LDSMAXALH as u32,
805    LDSMAXB = Operation_ARM64_LDSMAXB as u32,
806    LDSMAXH = Operation_ARM64_LDSMAXH as u32,
807    LDSMAXL = Operation_ARM64_LDSMAXL as u32,
808    LDSMAXLB = Operation_ARM64_LDSMAXLB as u32,
809    LDSMAXLH = Operation_ARM64_LDSMAXLH as u32,
810    LDSMIN = Operation_ARM64_LDSMIN as u32,
811    LDSMINA = Operation_ARM64_LDSMINA as u32,
812    LDSMINAB = Operation_ARM64_LDSMINAB as u32,
813    LDSMINAH = Operation_ARM64_LDSMINAH as u32,
814    LDSMINAL = Operation_ARM64_LDSMINAL as u32,
815    LDSMINALB = Operation_ARM64_LDSMINALB as u32,
816    LDSMINALH = Operation_ARM64_LDSMINALH as u32,
817    LDSMINB = Operation_ARM64_LDSMINB as u32,
818    LDSMINH = Operation_ARM64_LDSMINH as u32,
819    LDSMINL = Operation_ARM64_LDSMINL as u32,
820    LDSMINLB = Operation_ARM64_LDSMINLB as u32,
821    LDSMINLH = Operation_ARM64_LDSMINLH as u32,
822    LDTADD = Operation_ARM64_LDTADD as u32,
823    LDTADDA = Operation_ARM64_LDTADDA as u32,
824    LDTADDAL = Operation_ARM64_LDTADDAL as u32,
825    LDTADDL = Operation_ARM64_LDTADDL as u32,
826    LDTCLR = Operation_ARM64_LDTCLR as u32,
827    LDTCLRA = Operation_ARM64_LDTCLRA as u32,
828    LDTCLRAL = Operation_ARM64_LDTCLRAL as u32,
829    LDTCLRL = Operation_ARM64_LDTCLRL as u32,
830    LDTNP = Operation_ARM64_LDTNP as u32,
831    LDTP = Operation_ARM64_LDTP as u32,
832    LDTR = Operation_ARM64_LDTR as u32,
833    LDTRB = Operation_ARM64_LDTRB as u32,
834    LDTRH = Operation_ARM64_LDTRH as u32,
835    LDTRSB = Operation_ARM64_LDTRSB as u32,
836    LDTRSH = Operation_ARM64_LDTRSH as u32,
837    LDTRSW = Operation_ARM64_LDTRSW as u32,
838    LDTSET = Operation_ARM64_LDTSET as u32,
839    LDTSETA = Operation_ARM64_LDTSETA as u32,
840    LDTSETAL = Operation_ARM64_LDTSETAL as u32,
841    LDTSETL = Operation_ARM64_LDTSETL as u32,
842    LDTXR = Operation_ARM64_LDTXR as u32,
843    LDUMAX = Operation_ARM64_LDUMAX as u32,
844    LDUMAXA = Operation_ARM64_LDUMAXA as u32,
845    LDUMAXAB = Operation_ARM64_LDUMAXAB as u32,
846    LDUMAXAH = Operation_ARM64_LDUMAXAH as u32,
847    LDUMAXAL = Operation_ARM64_LDUMAXAL as u32,
848    LDUMAXALB = Operation_ARM64_LDUMAXALB as u32,
849    LDUMAXALH = Operation_ARM64_LDUMAXALH as u32,
850    LDUMAXB = Operation_ARM64_LDUMAXB as u32,
851    LDUMAXH = Operation_ARM64_LDUMAXH as u32,
852    LDUMAXL = Operation_ARM64_LDUMAXL as u32,
853    LDUMAXLB = Operation_ARM64_LDUMAXLB as u32,
854    LDUMAXLH = Operation_ARM64_LDUMAXLH as u32,
855    LDUMIN = Operation_ARM64_LDUMIN as u32,
856    LDUMINA = Operation_ARM64_LDUMINA as u32,
857    LDUMINAB = Operation_ARM64_LDUMINAB as u32,
858    LDUMINAH = Operation_ARM64_LDUMINAH as u32,
859    LDUMINAL = Operation_ARM64_LDUMINAL as u32,
860    LDUMINALB = Operation_ARM64_LDUMINALB as u32,
861    LDUMINALH = Operation_ARM64_LDUMINALH as u32,
862    LDUMINB = Operation_ARM64_LDUMINB as u32,
863    LDUMINH = Operation_ARM64_LDUMINH as u32,
864    LDUMINL = Operation_ARM64_LDUMINL as u32,
865    LDUMINLB = Operation_ARM64_LDUMINLB as u32,
866    LDUMINLH = Operation_ARM64_LDUMINLH as u32,
867    LDUR = Operation_ARM64_LDUR as u32,
868    LDURB = Operation_ARM64_LDURB as u32,
869    LDURH = Operation_ARM64_LDURH as u32,
870    LDURSB = Operation_ARM64_LDURSB as u32,
871    LDURSH = Operation_ARM64_LDURSH as u32,
872    LDURSW = Operation_ARM64_LDURSW as u32,
873    LDXP = Operation_ARM64_LDXP as u32,
874    LDXR = Operation_ARM64_LDXR as u32,
875    LDXRB = Operation_ARM64_LDXRB as u32,
876    LDXRH = Operation_ARM64_LDXRH as u32,
877    LSL = Operation_ARM64_LSL as u32,
878    LSLR = Operation_ARM64_LSLR as u32,
879    LSLV = Operation_ARM64_LSLV as u32,
880    LSR = Operation_ARM64_LSR as u32,
881    LSRR = Operation_ARM64_LSRR as u32,
882    LSRV = Operation_ARM64_LSRV as u32,
883    LUTI2 = Operation_ARM64_LUTI2 as u32,
884    LUTI4 = Operation_ARM64_LUTI4 as u32,
885    MAD = Operation_ARM64_MAD as u32,
886    MADD = Operation_ARM64_MADD as u32,
887    MADDPT = Operation_ARM64_MADDPT as u32,
888    MADPT = Operation_ARM64_MADPT as u32,
889    MATCH = Operation_ARM64_MATCH as u32,
890    MLA = Operation_ARM64_MLA as u32,
891    MLAPT = Operation_ARM64_MLAPT as u32,
892    MLS = Operation_ARM64_MLS as u32,
893    MNEG = Operation_ARM64_MNEG as u32,
894    MOV = Operation_ARM64_MOV as u32,
895    MOVA = Operation_ARM64_MOVA as u32,
896    MOVAZ = Operation_ARM64_MOVAZ as u32,
897    MOVI = Operation_ARM64_MOVI as u32,
898    MOVK = Operation_ARM64_MOVK as u32,
899    MOVN = Operation_ARM64_MOVN as u32,
900    MOVPRFX = Operation_ARM64_MOVPRFX as u32,
901    MOVS = Operation_ARM64_MOVS as u32,
902    MOVT = Operation_ARM64_MOVT as u32,
903    MOVZ = Operation_ARM64_MOVZ as u32,
904    MRRS = Operation_ARM64_MRRS as u32,
905    MRS = Operation_ARM64_MRS as u32,
906    MSB = Operation_ARM64_MSB as u32,
907    MSR = Operation_ARM64_MSR as u32,
908    MSRR = Operation_ARM64_MSRR as u32,
909    MSUB = Operation_ARM64_MSUB as u32,
910    MSUBPT = Operation_ARM64_MSUBPT as u32,
911    MUL = Operation_ARM64_MUL as u32,
912    MVN = Operation_ARM64_MVN as u32,
913    MVNI = Operation_ARM64_MVNI as u32,
914    NAND = Operation_ARM64_NAND as u32,
915    NANDS = Operation_ARM64_NANDS as u32,
916    NBSL = Operation_ARM64_NBSL as u32,
917    NEG = Operation_ARM64_NEG as u32,
918    NEGS = Operation_ARM64_NEGS as u32,
919    NGC = Operation_ARM64_NGC as u32,
920    NGCS = Operation_ARM64_NGCS as u32,
921    NMATCH = Operation_ARM64_NMATCH as u32,
922    NOP = Operation_ARM64_NOP as u32,
923    NOR = Operation_ARM64_NOR as u32,
924    NORS = Operation_ARM64_NORS as u32,
925    NOT = Operation_ARM64_NOT as u32,
926    NOTS = Operation_ARM64_NOTS as u32,
927    ORN = Operation_ARM64_ORN as u32,
928    ORNS = Operation_ARM64_ORNS as u32,
929    ORQV = Operation_ARM64_ORQV as u32,
930    ORR = Operation_ARM64_ORR as u32,
931    ORRS = Operation_ARM64_ORRS as u32,
932    ORV = Operation_ARM64_ORV as u32,
933    PACDA = Operation_ARM64_PACDA as u32,
934    PACDB = Operation_ARM64_PACDB as u32,
935    PACDZA = Operation_ARM64_PACDZA as u32,
936    PACDZB = Operation_ARM64_PACDZB as u32,
937    PACGA = Operation_ARM64_PACGA as u32,
938    PACIA = Operation_ARM64_PACIA as u32,
939    PACIA1716 = Operation_ARM64_PACIA1716 as u32,
940    PACIA171615 = Operation_ARM64_PACIA171615 as u32,
941    PACIASP = Operation_ARM64_PACIASP as u32,
942    PACIASPPC = Operation_ARM64_PACIASPPC as u32,
943    PACIAZ = Operation_ARM64_PACIAZ as u32,
944    PACIB = Operation_ARM64_PACIB as u32,
945    PACIB1716 = Operation_ARM64_PACIB1716 as u32,
946    PACIB171615 = Operation_ARM64_PACIB171615 as u32,
947    PACIBSP = Operation_ARM64_PACIBSP as u32,
948    PACIBSPPC = Operation_ARM64_PACIBSPPC as u32,
949    PACIBZ = Operation_ARM64_PACIBZ as u32,
950    PACIZA = Operation_ARM64_PACIZA as u32,
951    PACIZB = Operation_ARM64_PACIZB as u32,
952    PACM = Operation_ARM64_PACM as u32,
953    PACNBIASPPC = Operation_ARM64_PACNBIASPPC as u32,
954    PACNBIBSPPC = Operation_ARM64_PACNBIBSPPC as u32,
955    PEXT = Operation_ARM64_PEXT as u32,
956    PFALSE = Operation_ARM64_PFALSE as u32,
957    PFIRST = Operation_ARM64_PFIRST as u32,
958    PMLAL = Operation_ARM64_PMLAL as u32,
959    PMOV = Operation_ARM64_PMOV as u32,
960    PMUL = Operation_ARM64_PMUL as u32,
961    PMULL = Operation_ARM64_PMULL as u32,
962    PMULL2 = Operation_ARM64_PMULL2 as u32,
963    PMULLB = Operation_ARM64_PMULLB as u32,
964    PMULLT = Operation_ARM64_PMULLT as u32,
965    PNEXT = Operation_ARM64_PNEXT as u32,
966    PRFB = Operation_ARM64_PRFB as u32,
967    PRFD = Operation_ARM64_PRFD as u32,
968    PRFH = Operation_ARM64_PRFH as u32,
969    PRFM = Operation_ARM64_PRFM as u32,
970    PRFUM = Operation_ARM64_PRFUM as u32,
971    PRFW = Operation_ARM64_PRFW as u32,
972    PSB = Operation_ARM64_PSB as u32,
973    PSEL = Operation_ARM64_PSEL as u32,
974    PSSBB = Operation_ARM64_PSSBB as u32,
975    PTEST = Operation_ARM64_PTEST as u32,
976    PTRUE = Operation_ARM64_PTRUE as u32,
977    PTRUES = Operation_ARM64_PTRUES as u32,
978    PUNPKHI = Operation_ARM64_PUNPKHI as u32,
979    PUNPKLO = Operation_ARM64_PUNPKLO as u32,
980    RADDHN = Operation_ARM64_RADDHN as u32,
981    RADDHN2 = Operation_ARM64_RADDHN2 as u32,
982    RADDHNB = Operation_ARM64_RADDHNB as u32,
983    RADDHNT = Operation_ARM64_RADDHNT as u32,
984    RAX1 = Operation_ARM64_RAX1 as u32,
985    RBIT = Operation_ARM64_RBIT as u32,
986    RCWCAS = Operation_ARM64_RCWCAS as u32,
987    RCWCASA = Operation_ARM64_RCWCASA as u32,
988    RCWCASAL = Operation_ARM64_RCWCASAL as u32,
989    RCWCASL = Operation_ARM64_RCWCASL as u32,
990    RCWCASP = Operation_ARM64_RCWCASP as u32,
991    RCWCASPA = Operation_ARM64_RCWCASPA as u32,
992    RCWCASPAL = Operation_ARM64_RCWCASPAL as u32,
993    RCWCASPL = Operation_ARM64_RCWCASPL as u32,
994    RCWCLR = Operation_ARM64_RCWCLR as u32,
995    RCWCLRA = Operation_ARM64_RCWCLRA as u32,
996    RCWCLRAL = Operation_ARM64_RCWCLRAL as u32,
997    RCWCLRL = Operation_ARM64_RCWCLRL as u32,
998    RCWCLRP = Operation_ARM64_RCWCLRP as u32,
999    RCWCLRPA = Operation_ARM64_RCWCLRPA as u32,
1000    RCWCLRPAL = Operation_ARM64_RCWCLRPAL as u32,
1001    RCWCLRPL = Operation_ARM64_RCWCLRPL as u32,
1002    RCWSCAS = Operation_ARM64_RCWSCAS as u32,
1003    RCWSCASA = Operation_ARM64_RCWSCASA as u32,
1004    RCWSCASAL = Operation_ARM64_RCWSCASAL as u32,
1005    RCWSCASL = Operation_ARM64_RCWSCASL as u32,
1006    RCWSCASP = Operation_ARM64_RCWSCASP as u32,
1007    RCWSCASPA = Operation_ARM64_RCWSCASPA as u32,
1008    RCWSCASPAL = Operation_ARM64_RCWSCASPAL as u32,
1009    RCWSCASPL = Operation_ARM64_RCWSCASPL as u32,
1010    RCWSCLR = Operation_ARM64_RCWSCLR as u32,
1011    RCWSCLRA = Operation_ARM64_RCWSCLRA as u32,
1012    RCWSCLRAL = Operation_ARM64_RCWSCLRAL as u32,
1013    RCWSCLRL = Operation_ARM64_RCWSCLRL as u32,
1014    RCWSCLRP = Operation_ARM64_RCWSCLRP as u32,
1015    RCWSCLRPA = Operation_ARM64_RCWSCLRPA as u32,
1016    RCWSCLRPAL = Operation_ARM64_RCWSCLRPAL as u32,
1017    RCWSCLRPL = Operation_ARM64_RCWSCLRPL as u32,
1018    RCWSET = Operation_ARM64_RCWSET as u32,
1019    RCWSETA = Operation_ARM64_RCWSETA as u32,
1020    RCWSETAL = Operation_ARM64_RCWSETAL as u32,
1021    RCWSETL = Operation_ARM64_RCWSETL as u32,
1022    RCWSETP = Operation_ARM64_RCWSETP as u32,
1023    RCWSETPA = Operation_ARM64_RCWSETPA as u32,
1024    RCWSETPAL = Operation_ARM64_RCWSETPAL as u32,
1025    RCWSETPL = Operation_ARM64_RCWSETPL as u32,
1026    RCWSSET = Operation_ARM64_RCWSSET as u32,
1027    RCWSSETA = Operation_ARM64_RCWSSETA as u32,
1028    RCWSSETAL = Operation_ARM64_RCWSSETAL as u32,
1029    RCWSSETL = Operation_ARM64_RCWSSETL as u32,
1030    RCWSSETP = Operation_ARM64_RCWSSETP as u32,
1031    RCWSSETPA = Operation_ARM64_RCWSSETPA as u32,
1032    RCWSSETPAL = Operation_ARM64_RCWSSETPAL as u32,
1033    RCWSSETPL = Operation_ARM64_RCWSSETPL as u32,
1034    RCWSSWP = Operation_ARM64_RCWSSWP as u32,
1035    RCWSSWPA = Operation_ARM64_RCWSSWPA as u32,
1036    RCWSSWPAL = Operation_ARM64_RCWSSWPAL as u32,
1037    RCWSSWPL = Operation_ARM64_RCWSSWPL as u32,
1038    RCWSSWPP = Operation_ARM64_RCWSSWPP as u32,
1039    RCWSSWPPA = Operation_ARM64_RCWSSWPPA as u32,
1040    RCWSSWPPAL = Operation_ARM64_RCWSSWPPAL as u32,
1041    RCWSSWPPL = Operation_ARM64_RCWSSWPPL as u32,
1042    RCWSWP = Operation_ARM64_RCWSWP as u32,
1043    RCWSWPA = Operation_ARM64_RCWSWPA as u32,
1044    RCWSWPAL = Operation_ARM64_RCWSWPAL as u32,
1045    RCWSWPL = Operation_ARM64_RCWSWPL as u32,
1046    RCWSWPP = Operation_ARM64_RCWSWPP as u32,
1047    RCWSWPPA = Operation_ARM64_RCWSWPPA as u32,
1048    RCWSWPPAL = Operation_ARM64_RCWSWPPAL as u32,
1049    RCWSWPPL = Operation_ARM64_RCWSWPPL as u32,
1050    RDFFR = Operation_ARM64_RDFFR as u32,
1051    RDFFRS = Operation_ARM64_RDFFRS as u32,
1052    RDSVL = Operation_ARM64_RDSVL as u32,
1053    RDVL = Operation_ARM64_RDVL as u32,
1054    RET = Operation_ARM64_RET as u32,
1055    RETAA = Operation_ARM64_RETAA as u32,
1056    RETAASPPC = Operation_ARM64_RETAASPPC as u32,
1057    RETAASPPCR = Operation_ARM64_RETAASPPCR as u32,
1058    RETAB = Operation_ARM64_RETAB as u32,
1059    RETABSPPC = Operation_ARM64_RETABSPPC as u32,
1060    RETABSPPCR = Operation_ARM64_RETABSPPCR as u32,
1061    REV = Operation_ARM64_REV as u32,
1062    REV16 = Operation_ARM64_REV16 as u32,
1063    REV32 = Operation_ARM64_REV32 as u32,
1064    REV64 = Operation_ARM64_REV64 as u32,
1065    REVB = Operation_ARM64_REVB as u32,
1066    REVD = Operation_ARM64_REVD as u32,
1067    REVH = Operation_ARM64_REVH as u32,
1068    REVW = Operation_ARM64_REVW as u32,
1069    RMIF = Operation_ARM64_RMIF as u32,
1070    ROR = Operation_ARM64_ROR as u32,
1071    RORV = Operation_ARM64_RORV as u32,
1072    RPRFM = Operation_ARM64_RPRFM as u32,
1073    RSHRN = Operation_ARM64_RSHRN as u32,
1074    RSHRN2 = Operation_ARM64_RSHRN2 as u32,
1075    RSHRNB = Operation_ARM64_RSHRNB as u32,
1076    RSHRNT = Operation_ARM64_RSHRNT as u32,
1077    RSUBHN = Operation_ARM64_RSUBHN as u32,
1078    RSUBHN2 = Operation_ARM64_RSUBHN2 as u32,
1079    RSUBHNB = Operation_ARM64_RSUBHNB as u32,
1080    RSUBHNT = Operation_ARM64_RSUBHNT as u32,
1081    SABA = Operation_ARM64_SABA as u32,
1082    SABAL = Operation_ARM64_SABAL as u32,
1083    SABAL2 = Operation_ARM64_SABAL2 as u32,
1084    SABALB = Operation_ARM64_SABALB as u32,
1085    SABALT = Operation_ARM64_SABALT as u32,
1086    SABD = Operation_ARM64_SABD as u32,
1087    SABDL = Operation_ARM64_SABDL as u32,
1088    SABDL2 = Operation_ARM64_SABDL2 as u32,
1089    SABDLB = Operation_ARM64_SABDLB as u32,
1090    SABDLT = Operation_ARM64_SABDLT as u32,
1091    SADALP = Operation_ARM64_SADALP as u32,
1092    SADDL = Operation_ARM64_SADDL as u32,
1093    SADDL2 = Operation_ARM64_SADDL2 as u32,
1094    SADDLB = Operation_ARM64_SADDLB as u32,
1095    SADDLBT = Operation_ARM64_SADDLBT as u32,
1096    SADDLP = Operation_ARM64_SADDLP as u32,
1097    SADDLT = Operation_ARM64_SADDLT as u32,
1098    SADDLV = Operation_ARM64_SADDLV as u32,
1099    SADDV = Operation_ARM64_SADDV as u32,
1100    SADDW = Operation_ARM64_SADDW as u32,
1101    SADDW2 = Operation_ARM64_SADDW2 as u32,
1102    SADDWB = Operation_ARM64_SADDWB as u32,
1103    SADDWT = Operation_ARM64_SADDWT as u32,
1104    SB = Operation_ARM64_SB as u32,
1105    SBC = Operation_ARM64_SBC as u32,
1106    SBCLB = Operation_ARM64_SBCLB as u32,
1107    SBCLT = Operation_ARM64_SBCLT as u32,
1108    SBCS = Operation_ARM64_SBCS as u32,
1109    SBFIZ = Operation_ARM64_SBFIZ as u32,
1110    SBFM = Operation_ARM64_SBFM as u32,
1111    SBFX = Operation_ARM64_SBFX as u32,
1112    SCLAMP = Operation_ARM64_SCLAMP as u32,
1113    SCVTF = Operation_ARM64_SCVTF as u32,
1114    SDIV = Operation_ARM64_SDIV as u32,
1115    SDIVR = Operation_ARM64_SDIVR as u32,
1116    SDOT = Operation_ARM64_SDOT as u32,
1117    SEL = Operation_ARM64_SEL as u32,
1118    SETE = Operation_ARM64_SETE as u32,
1119    SETEN = Operation_ARM64_SETEN as u32,
1120    SETET = Operation_ARM64_SETET as u32,
1121    SETETN = Operation_ARM64_SETETN as u32,
1122    SETF16 = Operation_ARM64_SETF16 as u32,
1123    SETF8 = Operation_ARM64_SETF8 as u32,
1124    SETFFR = Operation_ARM64_SETFFR as u32,
1125    SETGE = Operation_ARM64_SETGE as u32,
1126    SETGEN = Operation_ARM64_SETGEN as u32,
1127    SETGET = Operation_ARM64_SETGET as u32,
1128    SETGETN = Operation_ARM64_SETGETN as u32,
1129    SETGM = Operation_ARM64_SETGM as u32,
1130    SETGMN = Operation_ARM64_SETGMN as u32,
1131    SETGMT = Operation_ARM64_SETGMT as u32,
1132    SETGMTN = Operation_ARM64_SETGMTN as u32,
1133    SETGP = Operation_ARM64_SETGP as u32,
1134    SETGPN = Operation_ARM64_SETGPN as u32,
1135    SETGPT = Operation_ARM64_SETGPT as u32,
1136    SETGPTN = Operation_ARM64_SETGPTN as u32,
1137    SETM = Operation_ARM64_SETM as u32,
1138    SETMN = Operation_ARM64_SETMN as u32,
1139    SETMT = Operation_ARM64_SETMT as u32,
1140    SETMTN = Operation_ARM64_SETMTN as u32,
1141    SETP = Operation_ARM64_SETP as u32,
1142    SETPN = Operation_ARM64_SETPN as u32,
1143    SETPT = Operation_ARM64_SETPT as u32,
1144    SETPTN = Operation_ARM64_SETPTN as u32,
1145    SEV = Operation_ARM64_SEV as u32,
1146    SEVL = Operation_ARM64_SEVL as u32,
1147    SHA1C = Operation_ARM64_SHA1C as u32,
1148    SHA1H = Operation_ARM64_SHA1H as u32,
1149    SHA1M = Operation_ARM64_SHA1M as u32,
1150    SHA1P = Operation_ARM64_SHA1P as u32,
1151    SHA1SU0 = Operation_ARM64_SHA1SU0 as u32,
1152    SHA1SU1 = Operation_ARM64_SHA1SU1 as u32,
1153    SHA256H = Operation_ARM64_SHA256H as u32,
1154    SHA256H2 = Operation_ARM64_SHA256H2 as u32,
1155    SHA256SU0 = Operation_ARM64_SHA256SU0 as u32,
1156    SHA256SU1 = Operation_ARM64_SHA256SU1 as u32,
1157    SHA512H = Operation_ARM64_SHA512H as u32,
1158    SHA512H2 = Operation_ARM64_SHA512H2 as u32,
1159    SHA512SU0 = Operation_ARM64_SHA512SU0 as u32,
1160    SHA512SU1 = Operation_ARM64_SHA512SU1 as u32,
1161    SHADD = Operation_ARM64_SHADD as u32,
1162    SHL = Operation_ARM64_SHL as u32,
1163    SHLL = Operation_ARM64_SHLL as u32,
1164    SHLL2 = Operation_ARM64_SHLL2 as u32,
1165    SHRN = Operation_ARM64_SHRN as u32,
1166    SHRN2 = Operation_ARM64_SHRN2 as u32,
1167    SHRNB = Operation_ARM64_SHRNB as u32,
1168    SHRNT = Operation_ARM64_SHRNT as u32,
1169    SHSUB = Operation_ARM64_SHSUB as u32,
1170    SHSUBR = Operation_ARM64_SHSUBR as u32,
1171    SLI = Operation_ARM64_SLI as u32,
1172    SM3PARTW1 = Operation_ARM64_SM3PARTW1 as u32,
1173    SM3PARTW2 = Operation_ARM64_SM3PARTW2 as u32,
1174    SM3SS1 = Operation_ARM64_SM3SS1 as u32,
1175    SM3TT1A = Operation_ARM64_SM3TT1A as u32,
1176    SM3TT1B = Operation_ARM64_SM3TT1B as u32,
1177    SM3TT2A = Operation_ARM64_SM3TT2A as u32,
1178    SM3TT2B = Operation_ARM64_SM3TT2B as u32,
1179    SM4E = Operation_ARM64_SM4E as u32,
1180    SM4EKEY = Operation_ARM64_SM4EKEY as u32,
1181    SMADDL = Operation_ARM64_SMADDL as u32,
1182    SMAX = Operation_ARM64_SMAX as u32,
1183    SMAXP = Operation_ARM64_SMAXP as u32,
1184    SMAXQV = Operation_ARM64_SMAXQV as u32,
1185    SMAXV = Operation_ARM64_SMAXV as u32,
1186    SMC = Operation_ARM64_SMC as u32,
1187    SMIN = Operation_ARM64_SMIN as u32,
1188    SMINP = Operation_ARM64_SMINP as u32,
1189    SMINQV = Operation_ARM64_SMINQV as u32,
1190    SMINV = Operation_ARM64_SMINV as u32,
1191    SMLAL = Operation_ARM64_SMLAL as u32,
1192    SMLAL2 = Operation_ARM64_SMLAL2 as u32,
1193    SMLALB = Operation_ARM64_SMLALB as u32,
1194    SMLALL = Operation_ARM64_SMLALL as u32,
1195    SMLALT = Operation_ARM64_SMLALT as u32,
1196    SMLSL = Operation_ARM64_SMLSL as u32,
1197    SMLSL2 = Operation_ARM64_SMLSL2 as u32,
1198    SMLSLB = Operation_ARM64_SMLSLB as u32,
1199    SMLSLL = Operation_ARM64_SMLSLL as u32,
1200    SMLSLT = Operation_ARM64_SMLSLT as u32,
1201    SMMLA = Operation_ARM64_SMMLA as u32,
1202    SMNEGL = Operation_ARM64_SMNEGL as u32,
1203    SMOP4A = Operation_ARM64_SMOP4A as u32,
1204    SMOP4S = Operation_ARM64_SMOP4S as u32,
1205    SMOPA = Operation_ARM64_SMOPA as u32,
1206    SMOPS = Operation_ARM64_SMOPS as u32,
1207    SMOV = Operation_ARM64_SMOV as u32,
1208    SMSTART = Operation_ARM64_SMSTART as u32,
1209    SMSTOP = Operation_ARM64_SMSTOP as u32,
1210    SMSUBL = Operation_ARM64_SMSUBL as u32,
1211    SMULH = Operation_ARM64_SMULH as u32,
1212    SMULL = Operation_ARM64_SMULL as u32,
1213    SMULL2 = Operation_ARM64_SMULL2 as u32,
1214    SMULLB = Operation_ARM64_SMULLB as u32,
1215    SMULLT = Operation_ARM64_SMULLT as u32,
1216    SPLICE = Operation_ARM64_SPLICE as u32,
1217    SQABS = Operation_ARM64_SQABS as u32,
1218    SQADD = Operation_ARM64_SQADD as u32,
1219    SQCADD = Operation_ARM64_SQCADD as u32,
1220    SQCVT = Operation_ARM64_SQCVT as u32,
1221    SQCVTN = Operation_ARM64_SQCVTN as u32,
1222    SQCVTU = Operation_ARM64_SQCVTU as u32,
1223    SQCVTUN = Operation_ARM64_SQCVTUN as u32,
1224    SQDECB = Operation_ARM64_SQDECB as u32,
1225    SQDECD = Operation_ARM64_SQDECD as u32,
1226    SQDECH = Operation_ARM64_SQDECH as u32,
1227    SQDECP = Operation_ARM64_SQDECP as u32,
1228    SQDECW = Operation_ARM64_SQDECW as u32,
1229    SQDMLAL = Operation_ARM64_SQDMLAL as u32,
1230    SQDMLAL2 = Operation_ARM64_SQDMLAL2 as u32,
1231    SQDMLALB = Operation_ARM64_SQDMLALB as u32,
1232    SQDMLALBT = Operation_ARM64_SQDMLALBT as u32,
1233    SQDMLALT = Operation_ARM64_SQDMLALT as u32,
1234    SQDMLSL = Operation_ARM64_SQDMLSL as u32,
1235    SQDMLSL2 = Operation_ARM64_SQDMLSL2 as u32,
1236    SQDMLSLB = Operation_ARM64_SQDMLSLB as u32,
1237    SQDMLSLBT = Operation_ARM64_SQDMLSLBT as u32,
1238    SQDMLSLT = Operation_ARM64_SQDMLSLT as u32,
1239    SQDMULH = Operation_ARM64_SQDMULH as u32,
1240    SQDMULL = Operation_ARM64_SQDMULL as u32,
1241    SQDMULL2 = Operation_ARM64_SQDMULL2 as u32,
1242    SQDMULLB = Operation_ARM64_SQDMULLB as u32,
1243    SQDMULLT = Operation_ARM64_SQDMULLT as u32,
1244    SQINCB = Operation_ARM64_SQINCB as u32,
1245    SQINCD = Operation_ARM64_SQINCD as u32,
1246    SQINCH = Operation_ARM64_SQINCH as u32,
1247    SQINCP = Operation_ARM64_SQINCP as u32,
1248    SQINCW = Operation_ARM64_SQINCW as u32,
1249    SQNEG = Operation_ARM64_SQNEG as u32,
1250    SQRDCMLAH = Operation_ARM64_SQRDCMLAH as u32,
1251    SQRDMLAH = Operation_ARM64_SQRDMLAH as u32,
1252    SQRDMLSH = Operation_ARM64_SQRDMLSH as u32,
1253    SQRDMULH = Operation_ARM64_SQRDMULH as u32,
1254    SQRSHL = Operation_ARM64_SQRSHL as u32,
1255    SQRSHLR = Operation_ARM64_SQRSHLR as u32,
1256    SQRSHR = Operation_ARM64_SQRSHR as u32,
1257    SQRSHRN = Operation_ARM64_SQRSHRN as u32,
1258    SQRSHRN2 = Operation_ARM64_SQRSHRN2 as u32,
1259    SQRSHRNB = Operation_ARM64_SQRSHRNB as u32,
1260    SQRSHRNT = Operation_ARM64_SQRSHRNT as u32,
1261    SQRSHRU = Operation_ARM64_SQRSHRU as u32,
1262    SQRSHRUN = Operation_ARM64_SQRSHRUN as u32,
1263    SQRSHRUN2 = Operation_ARM64_SQRSHRUN2 as u32,
1264    SQRSHRUNB = Operation_ARM64_SQRSHRUNB as u32,
1265    SQRSHRUNT = Operation_ARM64_SQRSHRUNT as u32,
1266    SQSHL = Operation_ARM64_SQSHL as u32,
1267    SQSHLR = Operation_ARM64_SQSHLR as u32,
1268    SQSHLU = Operation_ARM64_SQSHLU as u32,
1269    SQSHRN = Operation_ARM64_SQSHRN as u32,
1270    SQSHRN2 = Operation_ARM64_SQSHRN2 as u32,
1271    SQSHRNB = Operation_ARM64_SQSHRNB as u32,
1272    SQSHRNT = Operation_ARM64_SQSHRNT as u32,
1273    SQSHRUN = Operation_ARM64_SQSHRUN as u32,
1274    SQSHRUN2 = Operation_ARM64_SQSHRUN2 as u32,
1275    SQSHRUNB = Operation_ARM64_SQSHRUNB as u32,
1276    SQSHRUNT = Operation_ARM64_SQSHRUNT as u32,
1277    SQSUB = Operation_ARM64_SQSUB as u32,
1278    SQSUBR = Operation_ARM64_SQSUBR as u32,
1279    SQXTN = Operation_ARM64_SQXTN as u32,
1280    SQXTN2 = Operation_ARM64_SQXTN2 as u32,
1281    SQXTNB = Operation_ARM64_SQXTNB as u32,
1282    SQXTNT = Operation_ARM64_SQXTNT as u32,
1283    SQXTUN = Operation_ARM64_SQXTUN as u32,
1284    SQXTUN2 = Operation_ARM64_SQXTUN2 as u32,
1285    SQXTUNB = Operation_ARM64_SQXTUNB as u32,
1286    SQXTUNT = Operation_ARM64_SQXTUNT as u32,
1287    SRHADD = Operation_ARM64_SRHADD as u32,
1288    SRI = Operation_ARM64_SRI as u32,
1289    SRSHL = Operation_ARM64_SRSHL as u32,
1290    SRSHLR = Operation_ARM64_SRSHLR as u32,
1291    SRSHR = Operation_ARM64_SRSHR as u32,
1292    SRSRA = Operation_ARM64_SRSRA as u32,
1293    SSBB = Operation_ARM64_SSBB as u32,
1294    SSHL = Operation_ARM64_SSHL as u32,
1295    SSHLL = Operation_ARM64_SSHLL as u32,
1296    SSHLL2 = Operation_ARM64_SSHLL2 as u32,
1297    SSHLLB = Operation_ARM64_SSHLLB as u32,
1298    SSHLLT = Operation_ARM64_SSHLLT as u32,
1299    SSHR = Operation_ARM64_SSHR as u32,
1300    SSRA = Operation_ARM64_SSRA as u32,
1301    SSUBL = Operation_ARM64_SSUBL as u32,
1302    SSUBL2 = Operation_ARM64_SSUBL2 as u32,
1303    SSUBLB = Operation_ARM64_SSUBLB as u32,
1304    SSUBLBT = Operation_ARM64_SSUBLBT as u32,
1305    SSUBLT = Operation_ARM64_SSUBLT as u32,
1306    SSUBLTB = Operation_ARM64_SSUBLTB as u32,
1307    SSUBW = Operation_ARM64_SSUBW as u32,
1308    SSUBW2 = Operation_ARM64_SSUBW2 as u32,
1309    SSUBWB = Operation_ARM64_SSUBWB as u32,
1310    SSUBWT = Operation_ARM64_SSUBWT as u32,
1311    ST1 = Operation_ARM64_ST1 as u32,
1312    ST1B = Operation_ARM64_ST1B as u32,
1313    ST1D = Operation_ARM64_ST1D as u32,
1314    ST1H = Operation_ARM64_ST1H as u32,
1315    ST1Q = Operation_ARM64_ST1Q as u32,
1316    ST1W = Operation_ARM64_ST1W as u32,
1317    ST2 = Operation_ARM64_ST2 as u32,
1318    ST2B = Operation_ARM64_ST2B as u32,
1319    ST2D = Operation_ARM64_ST2D as u32,
1320    ST2G = Operation_ARM64_ST2G as u32,
1321    ST2H = Operation_ARM64_ST2H as u32,
1322    ST2Q = Operation_ARM64_ST2Q as u32,
1323    ST2W = Operation_ARM64_ST2W as u32,
1324    ST3 = Operation_ARM64_ST3 as u32,
1325    ST3B = Operation_ARM64_ST3B as u32,
1326    ST3D = Operation_ARM64_ST3D as u32,
1327    ST3H = Operation_ARM64_ST3H as u32,
1328    ST3Q = Operation_ARM64_ST3Q as u32,
1329    ST3W = Operation_ARM64_ST3W as u32,
1330    ST4 = Operation_ARM64_ST4 as u32,
1331    ST4B = Operation_ARM64_ST4B as u32,
1332    ST4D = Operation_ARM64_ST4D as u32,
1333    ST4H = Operation_ARM64_ST4H as u32,
1334    ST4Q = Operation_ARM64_ST4Q as u32,
1335    ST4W = Operation_ARM64_ST4W as u32,
1336    ST64B = Operation_ARM64_ST64B as u32,
1337    ST64BV = Operation_ARM64_ST64BV as u32,
1338    ST64BV0 = Operation_ARM64_ST64BV0 as u32,
1339    STADD = Operation_ARM64_STADD as u32,
1340    STADDB = Operation_ARM64_STADDB as u32,
1341    STADDH = Operation_ARM64_STADDH as u32,
1342    STADDL = Operation_ARM64_STADDL as u32,
1343    STADDLB = Operation_ARM64_STADDLB as u32,
1344    STADDLH = Operation_ARM64_STADDLH as u32,
1345    STBFADD = Operation_ARM64_STBFADD as u32,
1346    STBFADDL = Operation_ARM64_STBFADDL as u32,
1347    STBFMAX = Operation_ARM64_STBFMAX as u32,
1348    STBFMAXL = Operation_ARM64_STBFMAXL as u32,
1349    STBFMAXNM = Operation_ARM64_STBFMAXNM as u32,
1350    STBFMAXNML = Operation_ARM64_STBFMAXNML as u32,
1351    STBFMIN = Operation_ARM64_STBFMIN as u32,
1352    STBFMINL = Operation_ARM64_STBFMINL as u32,
1353    STBFMINNM = Operation_ARM64_STBFMINNM as u32,
1354    STBFMINNML = Operation_ARM64_STBFMINNML as u32,
1355    STCLR = Operation_ARM64_STCLR as u32,
1356    STCLRB = Operation_ARM64_STCLRB as u32,
1357    STCLRH = Operation_ARM64_STCLRH as u32,
1358    STCLRL = Operation_ARM64_STCLRL as u32,
1359    STCLRLB = Operation_ARM64_STCLRLB as u32,
1360    STCLRLH = Operation_ARM64_STCLRLH as u32,
1361    STEOR = Operation_ARM64_STEOR as u32,
1362    STEORB = Operation_ARM64_STEORB as u32,
1363    STEORH = Operation_ARM64_STEORH as u32,
1364    STEORL = Operation_ARM64_STEORL as u32,
1365    STEORLB = Operation_ARM64_STEORLB as u32,
1366    STEORLH = Operation_ARM64_STEORLH as u32,
1367    STFADD = Operation_ARM64_STFADD as u32,
1368    STFADDL = Operation_ARM64_STFADDL as u32,
1369    STFMAX = Operation_ARM64_STFMAX as u32,
1370    STFMAXL = Operation_ARM64_STFMAXL as u32,
1371    STFMAXNM = Operation_ARM64_STFMAXNM as u32,
1372    STFMAXNML = Operation_ARM64_STFMAXNML as u32,
1373    STFMIN = Operation_ARM64_STFMIN as u32,
1374    STFMINL = Operation_ARM64_STFMINL as u32,
1375    STFMINNM = Operation_ARM64_STFMINNM as u32,
1376    STFMINNML = Operation_ARM64_STFMINNML as u32,
1377    STG = Operation_ARM64_STG as u32,
1378    STGM = Operation_ARM64_STGM as u32,
1379    STGP = Operation_ARM64_STGP as u32,
1380    STILP = Operation_ARM64_STILP as u32,
1381    STL1 = Operation_ARM64_STL1 as u32,
1382    STLLR = Operation_ARM64_STLLR as u32,
1383    STLLRB = Operation_ARM64_STLLRB as u32,
1384    STLLRH = Operation_ARM64_STLLRH as u32,
1385    STLR = Operation_ARM64_STLR as u32,
1386    STLRB = Operation_ARM64_STLRB as u32,
1387    STLRH = Operation_ARM64_STLRH as u32,
1388    STLTXR = Operation_ARM64_STLTXR as u32,
1389    STLUR = Operation_ARM64_STLUR as u32,
1390    STLURB = Operation_ARM64_STLURB as u32,
1391    STLURH = Operation_ARM64_STLURH as u32,
1392    STLXP = Operation_ARM64_STLXP as u32,
1393    STLXR = Operation_ARM64_STLXR as u32,
1394    STLXRB = Operation_ARM64_STLXRB as u32,
1395    STLXRH = Operation_ARM64_STLXRH as u32,
1396    STMOPA = Operation_ARM64_STMOPA as u32,
1397    STNP = Operation_ARM64_STNP as u32,
1398    STNT1B = Operation_ARM64_STNT1B as u32,
1399    STNT1D = Operation_ARM64_STNT1D as u32,
1400    STNT1H = Operation_ARM64_STNT1H as u32,
1401    STNT1W = Operation_ARM64_STNT1W as u32,
1402    STP = Operation_ARM64_STP as u32,
1403    STR = Operation_ARM64_STR as u32,
1404    STRB = Operation_ARM64_STRB as u32,
1405    STRH = Operation_ARM64_STRH as u32,
1406    STSET = Operation_ARM64_STSET as u32,
1407    STSETB = Operation_ARM64_STSETB as u32,
1408    STSETH = Operation_ARM64_STSETH as u32,
1409    STSETL = Operation_ARM64_STSETL as u32,
1410    STSETLB = Operation_ARM64_STSETLB as u32,
1411    STSETLH = Operation_ARM64_STSETLH as u32,
1412    STSHH = Operation_ARM64_STSHH as u32,
1413    STSMAX = Operation_ARM64_STSMAX as u32,
1414    STSMAXB = Operation_ARM64_STSMAXB as u32,
1415    STSMAXH = Operation_ARM64_STSMAXH as u32,
1416    STSMAXL = Operation_ARM64_STSMAXL as u32,
1417    STSMAXLB = Operation_ARM64_STSMAXLB as u32,
1418    STSMAXLH = Operation_ARM64_STSMAXLH as u32,
1419    STSMIN = Operation_ARM64_STSMIN as u32,
1420    STSMINB = Operation_ARM64_STSMINB as u32,
1421    STSMINH = Operation_ARM64_STSMINH as u32,
1422    STSMINL = Operation_ARM64_STSMINL as u32,
1423    STSMINLB = Operation_ARM64_STSMINLB as u32,
1424    STSMINLH = Operation_ARM64_STSMINLH as u32,
1425    STTADD = Operation_ARM64_STTADD as u32,
1426    STTADDL = Operation_ARM64_STTADDL as u32,
1427    STTCLR = Operation_ARM64_STTCLR as u32,
1428    STTCLRL = Operation_ARM64_STTCLRL as u32,
1429    STTNP = Operation_ARM64_STTNP as u32,
1430    STTP = Operation_ARM64_STTP as u32,
1431    STTR = Operation_ARM64_STTR as u32,
1432    STTRB = Operation_ARM64_STTRB as u32,
1433    STTRH = Operation_ARM64_STTRH as u32,
1434    STTSET = Operation_ARM64_STTSET as u32,
1435    STTSETL = Operation_ARM64_STTSETL as u32,
1436    STTXR = Operation_ARM64_STTXR as u32,
1437    STUMAX = Operation_ARM64_STUMAX as u32,
1438    STUMAXB = Operation_ARM64_STUMAXB as u32,
1439    STUMAXH = Operation_ARM64_STUMAXH as u32,
1440    STUMAXL = Operation_ARM64_STUMAXL as u32,
1441    STUMAXLB = Operation_ARM64_STUMAXLB as u32,
1442    STUMAXLH = Operation_ARM64_STUMAXLH as u32,
1443    STUMIN = Operation_ARM64_STUMIN as u32,
1444    STUMINB = Operation_ARM64_STUMINB as u32,
1445    STUMINH = Operation_ARM64_STUMINH as u32,
1446    STUMINL = Operation_ARM64_STUMINL as u32,
1447    STUMINLB = Operation_ARM64_STUMINLB as u32,
1448    STUMINLH = Operation_ARM64_STUMINLH as u32,
1449    STUR = Operation_ARM64_STUR as u32,
1450    STURB = Operation_ARM64_STURB as u32,
1451    STURH = Operation_ARM64_STURH as u32,
1452    STXP = Operation_ARM64_STXP as u32,
1453    STXR = Operation_ARM64_STXR as u32,
1454    STXRB = Operation_ARM64_STXRB as u32,
1455    STXRH = Operation_ARM64_STXRH as u32,
1456    STZ2G = Operation_ARM64_STZ2G as u32,
1457    STZG = Operation_ARM64_STZG as u32,
1458    STZGM = Operation_ARM64_STZGM as u32,
1459    SUB = Operation_ARM64_SUB as u32,
1460    SUBG = Operation_ARM64_SUBG as u32,
1461    SUBHN = Operation_ARM64_SUBHN as u32,
1462    SUBHN2 = Operation_ARM64_SUBHN2 as u32,
1463    SUBHNB = Operation_ARM64_SUBHNB as u32,
1464    SUBHNT = Operation_ARM64_SUBHNT as u32,
1465    SUBP = Operation_ARM64_SUBP as u32,
1466    SUBPS = Operation_ARM64_SUBPS as u32,
1467    SUBPT = Operation_ARM64_SUBPT as u32,
1468    SUBR = Operation_ARM64_SUBR as u32,
1469    SUBS = Operation_ARM64_SUBS as u32,
1470    SUDOT = Operation_ARM64_SUDOT as u32,
1471    SUMLALL = Operation_ARM64_SUMLALL as u32,
1472    SUMOP4A = Operation_ARM64_SUMOP4A as u32,
1473    SUMOP4S = Operation_ARM64_SUMOP4S as u32,
1474    SUMOPA = Operation_ARM64_SUMOPA as u32,
1475    SUMOPS = Operation_ARM64_SUMOPS as u32,
1476    SUNPK = Operation_ARM64_SUNPK as u32,
1477    SUNPKHI = Operation_ARM64_SUNPKHI as u32,
1478    SUNPKLO = Operation_ARM64_SUNPKLO as u32,
1479    SUQADD = Operation_ARM64_SUQADD as u32,
1480    SUTMOPA = Operation_ARM64_SUTMOPA as u32,
1481    SUVDOT = Operation_ARM64_SUVDOT as u32,
1482    SVC = Operation_ARM64_SVC as u32,
1483    SVDOT = Operation_ARM64_SVDOT as u32,
1484    SWP = Operation_ARM64_SWP as u32,
1485    SWPA = Operation_ARM64_SWPA as u32,
1486    SWPAB = Operation_ARM64_SWPAB as u32,
1487    SWPAH = Operation_ARM64_SWPAH as u32,
1488    SWPAL = Operation_ARM64_SWPAL as u32,
1489    SWPALB = Operation_ARM64_SWPALB as u32,
1490    SWPALH = Operation_ARM64_SWPALH as u32,
1491    SWPB = Operation_ARM64_SWPB as u32,
1492    SWPH = Operation_ARM64_SWPH as u32,
1493    SWPL = Operation_ARM64_SWPL as u32,
1494    SWPLB = Operation_ARM64_SWPLB as u32,
1495    SWPLH = Operation_ARM64_SWPLH as u32,
1496    SWPP = Operation_ARM64_SWPP as u32,
1497    SWPPA = Operation_ARM64_SWPPA as u32,
1498    SWPPAL = Operation_ARM64_SWPPAL as u32,
1499    SWPPL = Operation_ARM64_SWPPL as u32,
1500    SWPT = Operation_ARM64_SWPT as u32,
1501    SWPTA = Operation_ARM64_SWPTA as u32,
1502    SWPTAL = Operation_ARM64_SWPTAL as u32,
1503    SWPTL = Operation_ARM64_SWPTL as u32,
1504    SXTB = Operation_ARM64_SXTB as u32,
1505    SXTH = Operation_ARM64_SXTH as u32,
1506    SXTL = Operation_ARM64_SXTL as u32,
1507    SXTL2 = Operation_ARM64_SXTL2 as u32,
1508    SXTW = Operation_ARM64_SXTW as u32,
1509    SYS = Operation_ARM64_SYS as u32,
1510    SYSL = Operation_ARM64_SYSL as u32,
1511    SYSP = Operation_ARM64_SYSP as u32,
1512    TBL = Operation_ARM64_TBL as u32,
1513    TBLQ = Operation_ARM64_TBLQ as u32,
1514    TBNZ = Operation_ARM64_TBNZ as u32,
1515    TBX = Operation_ARM64_TBX as u32,
1516    TBXQ = Operation_ARM64_TBXQ as u32,
1517    TBZ = Operation_ARM64_TBZ as u32,
1518    TCANCEL = Operation_ARM64_TCANCEL as u32,
1519    TCOMMIT = Operation_ARM64_TCOMMIT as u32,
1520    TLBI = Operation_ARM64_TLBI as u32,
1521    TLBIP = Operation_ARM64_TLBIP as u32,
1522    TRCIT = Operation_ARM64_TRCIT as u32,
1523    TRN1 = Operation_ARM64_TRN1 as u32,
1524    TRN2 = Operation_ARM64_TRN2 as u32,
1525    TSB = Operation_ARM64_TSB as u32,
1526    TST = Operation_ARM64_TST as u32,
1527    TSTART = Operation_ARM64_TSTART as u32,
1528    TTEST = Operation_ARM64_TTEST as u32,
1529    UABA = Operation_ARM64_UABA as u32,
1530    UABAL = Operation_ARM64_UABAL as u32,
1531    UABAL2 = Operation_ARM64_UABAL2 as u32,
1532    UABALB = Operation_ARM64_UABALB as u32,
1533    UABALT = Operation_ARM64_UABALT as u32,
1534    UABD = Operation_ARM64_UABD as u32,
1535    UABDL = Operation_ARM64_UABDL as u32,
1536    UABDL2 = Operation_ARM64_UABDL2 as u32,
1537    UABDLB = Operation_ARM64_UABDLB as u32,
1538    UABDLT = Operation_ARM64_UABDLT as u32,
1539    UADALP = Operation_ARM64_UADALP as u32,
1540    UADDL = Operation_ARM64_UADDL as u32,
1541    UADDL2 = Operation_ARM64_UADDL2 as u32,
1542    UADDLB = Operation_ARM64_UADDLB as u32,
1543    UADDLP = Operation_ARM64_UADDLP as u32,
1544    UADDLT = Operation_ARM64_UADDLT as u32,
1545    UADDLV = Operation_ARM64_UADDLV as u32,
1546    UADDV = Operation_ARM64_UADDV as u32,
1547    UADDW = Operation_ARM64_UADDW as u32,
1548    UADDW2 = Operation_ARM64_UADDW2 as u32,
1549    UADDWB = Operation_ARM64_UADDWB as u32,
1550    UADDWT = Operation_ARM64_UADDWT as u32,
1551    UBFIZ = Operation_ARM64_UBFIZ as u32,
1552    UBFM = Operation_ARM64_UBFM as u32,
1553    UBFX = Operation_ARM64_UBFX as u32,
1554    UCLAMP = Operation_ARM64_UCLAMP as u32,
1555    UCVTF = Operation_ARM64_UCVTF as u32,
1556    UDF = Operation_ARM64_UDF as u32,
1557    UDIV = Operation_ARM64_UDIV as u32,
1558    UDIVR = Operation_ARM64_UDIVR as u32,
1559    UDOT = Operation_ARM64_UDOT as u32,
1560    UHADD = Operation_ARM64_UHADD as u32,
1561    UHSUB = Operation_ARM64_UHSUB as u32,
1562    UHSUBR = Operation_ARM64_UHSUBR as u32,
1563    UMADDL = Operation_ARM64_UMADDL as u32,
1564    UMAX = Operation_ARM64_UMAX as u32,
1565    UMAXP = Operation_ARM64_UMAXP as u32,
1566    UMAXQV = Operation_ARM64_UMAXQV as u32,
1567    UMAXV = Operation_ARM64_UMAXV as u32,
1568    UMIN = Operation_ARM64_UMIN as u32,
1569    UMINP = Operation_ARM64_UMINP as u32,
1570    UMINQV = Operation_ARM64_UMINQV as u32,
1571    UMINV = Operation_ARM64_UMINV as u32,
1572    UMLAL = Operation_ARM64_UMLAL as u32,
1573    UMLAL2 = Operation_ARM64_UMLAL2 as u32,
1574    UMLALB = Operation_ARM64_UMLALB as u32,
1575    UMLALL = Operation_ARM64_UMLALL as u32,
1576    UMLALT = Operation_ARM64_UMLALT as u32,
1577    UMLSL = Operation_ARM64_UMLSL as u32,
1578    UMLSL2 = Operation_ARM64_UMLSL2 as u32,
1579    UMLSLB = Operation_ARM64_UMLSLB as u32,
1580    UMLSLL = Operation_ARM64_UMLSLL as u32,
1581    UMLSLT = Operation_ARM64_UMLSLT as u32,
1582    UMMLA = Operation_ARM64_UMMLA as u32,
1583    UMNEGL = Operation_ARM64_UMNEGL as u32,
1584    UMOP4A = Operation_ARM64_UMOP4A as u32,
1585    UMOP4S = Operation_ARM64_UMOP4S as u32,
1586    UMOPA = Operation_ARM64_UMOPA as u32,
1587    UMOPS = Operation_ARM64_UMOPS as u32,
1588    UMOV = Operation_ARM64_UMOV as u32,
1589    UMSUBL = Operation_ARM64_UMSUBL as u32,
1590    UMULH = Operation_ARM64_UMULH as u32,
1591    UMULL = Operation_ARM64_UMULL as u32,
1592    UMULL2 = Operation_ARM64_UMULL2 as u32,
1593    UMULLB = Operation_ARM64_UMULLB as u32,
1594    UMULLT = Operation_ARM64_UMULLT as u32,
1595    UQADD = Operation_ARM64_UQADD as u32,
1596    UQCVT = Operation_ARM64_UQCVT as u32,
1597    UQCVTN = Operation_ARM64_UQCVTN as u32,
1598    UQDECB = Operation_ARM64_UQDECB as u32,
1599    UQDECD = Operation_ARM64_UQDECD as u32,
1600    UQDECH = Operation_ARM64_UQDECH as u32,
1601    UQDECP = Operation_ARM64_UQDECP as u32,
1602    UQDECW = Operation_ARM64_UQDECW as u32,
1603    UQINCB = Operation_ARM64_UQINCB as u32,
1604    UQINCD = Operation_ARM64_UQINCD as u32,
1605    UQINCH = Operation_ARM64_UQINCH as u32,
1606    UQINCP = Operation_ARM64_UQINCP as u32,
1607    UQINCW = Operation_ARM64_UQINCW as u32,
1608    UQRSHL = Operation_ARM64_UQRSHL as u32,
1609    UQRSHLR = Operation_ARM64_UQRSHLR as u32,
1610    UQRSHR = Operation_ARM64_UQRSHR as u32,
1611    UQRSHRN = Operation_ARM64_UQRSHRN as u32,
1612    UQRSHRN2 = Operation_ARM64_UQRSHRN2 as u32,
1613    UQRSHRNB = Operation_ARM64_UQRSHRNB as u32,
1614    UQRSHRNT = Operation_ARM64_UQRSHRNT as u32,
1615    UQSHL = Operation_ARM64_UQSHL as u32,
1616    UQSHLR = Operation_ARM64_UQSHLR as u32,
1617    UQSHRN = Operation_ARM64_UQSHRN as u32,
1618    UQSHRN2 = Operation_ARM64_UQSHRN2 as u32,
1619    UQSHRNB = Operation_ARM64_UQSHRNB as u32,
1620    UQSHRNT = Operation_ARM64_UQSHRNT as u32,
1621    UQSUB = Operation_ARM64_UQSUB as u32,
1622    UQSUBR = Operation_ARM64_UQSUBR as u32,
1623    UQXTN = Operation_ARM64_UQXTN as u32,
1624    UQXTN2 = Operation_ARM64_UQXTN2 as u32,
1625    UQXTNB = Operation_ARM64_UQXTNB as u32,
1626    UQXTNT = Operation_ARM64_UQXTNT as u32,
1627    URECPE = Operation_ARM64_URECPE as u32,
1628    URHADD = Operation_ARM64_URHADD as u32,
1629    URSHL = Operation_ARM64_URSHL as u32,
1630    URSHLR = Operation_ARM64_URSHLR as u32,
1631    URSHR = Operation_ARM64_URSHR as u32,
1632    URSQRTE = Operation_ARM64_URSQRTE as u32,
1633    URSRA = Operation_ARM64_URSRA as u32,
1634    USDOT = Operation_ARM64_USDOT as u32,
1635    USHL = Operation_ARM64_USHL as u32,
1636    USHLL = Operation_ARM64_USHLL as u32,
1637    USHLL2 = Operation_ARM64_USHLL2 as u32,
1638    USHLLB = Operation_ARM64_USHLLB as u32,
1639    USHLLT = Operation_ARM64_USHLLT as u32,
1640    USHR = Operation_ARM64_USHR as u32,
1641    USMLALL = Operation_ARM64_USMLALL as u32,
1642    USMMLA = Operation_ARM64_USMMLA as u32,
1643    USMOP4A = Operation_ARM64_USMOP4A as u32,
1644    USMOP4S = Operation_ARM64_USMOP4S as u32,
1645    USMOPA = Operation_ARM64_USMOPA as u32,
1646    USMOPS = Operation_ARM64_USMOPS as u32,
1647    USQADD = Operation_ARM64_USQADD as u32,
1648    USRA = Operation_ARM64_USRA as u32,
1649    USTMOPA = Operation_ARM64_USTMOPA as u32,
1650    USUBL = Operation_ARM64_USUBL as u32,
1651    USUBL2 = Operation_ARM64_USUBL2 as u32,
1652    USUBLB = Operation_ARM64_USUBLB as u32,
1653    USUBLT = Operation_ARM64_USUBLT as u32,
1654    USUBW = Operation_ARM64_USUBW as u32,
1655    USUBW2 = Operation_ARM64_USUBW2 as u32,
1656    USUBWB = Operation_ARM64_USUBWB as u32,
1657    USUBWT = Operation_ARM64_USUBWT as u32,
1658    USVDOT = Operation_ARM64_USVDOT as u32,
1659    UTMOPA = Operation_ARM64_UTMOPA as u32,
1660    UUNPK = Operation_ARM64_UUNPK as u32,
1661    UUNPKHI = Operation_ARM64_UUNPKHI as u32,
1662    UUNPKLO = Operation_ARM64_UUNPKLO as u32,
1663    UVDOT = Operation_ARM64_UVDOT as u32,
1664    UXTB = Operation_ARM64_UXTB as u32,
1665    UXTH = Operation_ARM64_UXTH as u32,
1666    UXTL = Operation_ARM64_UXTL as u32,
1667    UXTL2 = Operation_ARM64_UXTL2 as u32,
1668    UXTW = Operation_ARM64_UXTW as u32,
1669    UZP = Operation_ARM64_UZP as u32,
1670    UZP1 = Operation_ARM64_UZP1 as u32,
1671    UZP2 = Operation_ARM64_UZP2 as u32,
1672    UZPQ1 = Operation_ARM64_UZPQ1 as u32,
1673    UZPQ2 = Operation_ARM64_UZPQ2 as u32,
1674    WFE = Operation_ARM64_WFE as u32,
1675    WFET = Operation_ARM64_WFET as u32,
1676    WFI = Operation_ARM64_WFI as u32,
1677    WFIT = Operation_ARM64_WFIT as u32,
1678    WHILEGE = Operation_ARM64_WHILEGE as u32,
1679    WHILEGT = Operation_ARM64_WHILEGT as u32,
1680    WHILEHI = Operation_ARM64_WHILEHI as u32,
1681    WHILEHS = Operation_ARM64_WHILEHS as u32,
1682    WHILELE = Operation_ARM64_WHILELE as u32,
1683    WHILELO = Operation_ARM64_WHILELO as u32,
1684    WHILELS = Operation_ARM64_WHILELS as u32,
1685    WHILELT = Operation_ARM64_WHILELT as u32,
1686    WHILERW = Operation_ARM64_WHILERW as u32,
1687    WHILEWR = Operation_ARM64_WHILEWR as u32,
1688    WRFFR = Operation_ARM64_WRFFR as u32,
1689    XAFLAG = Operation_ARM64_XAFLAG as u32,
1690    XAR = Operation_ARM64_XAR as u32,
1691    XPACD = Operation_ARM64_XPACD as u32,
1692    XPACI = Operation_ARM64_XPACI as u32,
1693    XPACLRI = Operation_ARM64_XPACLRI as u32,
1694    XTN = Operation_ARM64_XTN as u32,
1695    XTN2 = Operation_ARM64_XTN2 as u32,
1696    YIELD = Operation_ARM64_YIELD as u32,
1697    ZERO = Operation_ARM64_ZERO as u32,
1698    ZIP = Operation_ARM64_ZIP as u32,
1699    ZIP1 = Operation_ARM64_ZIP1 as u32,
1700    ZIP2 = Operation_ARM64_ZIP2 as u32,
1701    ZIPQ1 = Operation_ARM64_ZIPQ1 as u32,
1702    ZIPQ2 = Operation_ARM64_ZIPQ2 as u32,
1703}
1704
1705// this is a guard to try to detect if new instructions get added
1706const_assert_eq!(Operation_ARM64_ZIPQ2, 1688);
1707
1708impl Op {
1709    /// Get the operation name
1710    ///
1711    /// This is an alias for the instruction mnemonic
1712    ///
1713    /// # Examples
1714    /// ```
1715    /// use bad64::{decode, Op};
1716    ///
1717    /// // nop
1718    /// let decoded = decode(0xd503201f, 0x1000).unwrap();
1719    ///
1720    /// assert_eq!(decoded.op(), Op::NOP);
1721    /// assert_eq!(decoded.op().mnem(), "nop");
1722    /// ```
1723    pub fn mnem(&self) -> &'static str {
1724        #[cfg(target_os = "windows")]
1725        {
1726            unsafe { CStr::from_ptr(operation_to_str(self.to_i32().unwrap()) as _) }
1727                .to_str()
1728                .unwrap()
1729        }
1730        #[cfg(not(target_os = "windows"))]
1731        {
1732            unsafe { CStr::from_ptr(operation_to_str(self.to_u32().unwrap()) as _) }
1733                .to_str()
1734                .unwrap()
1735        }
1736    }
1737}
1738
1739impl fmt::Display for Op {
1740    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
1741        write!(f, "{}", self.mnem())
1742    }
1743}