blob: 89aa38be32da9a54c8f5c711266e501bc96b155a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
|
/* GENERATED FILE */
#pragma once
// 107 HasXXX() functions used by decode:
#define HasFeature(feat) (ctx->decode_features[(feat) / 64] & ((uint64_t)1 << ((feat) % 64)))
#define HasAES() HasFeature(ARCH_FEATURE_AES)
#define HasAdvSIMD() HasFeature(ARCH_FEATURE_AdvSIMD)
#define HasBF16() HasFeature(ARCH_FEATURE_BF16)
#define HasBTI() HasFeature(ARCH_FEATURE_BTI)
#define HasCHK() HasFeature(ARCH_FEATURE_CHK)
#define HasCLRBHB() HasFeature(ARCH_FEATURE_CLRBHB)
#define HasCMH() HasFeature(ARCH_FEATURE_CMH)
#define HasCMPBR() HasFeature(ARCH_FEATURE_CMPBR)
#define HasCPA() HasFeature(ARCH_FEATURE_CPA)
#define HasCRC32() HasFeature(ARCH_FEATURE_CRC32)
#define HasCSSC() HasFeature(ARCH_FEATURE_CSSC)
#define HasD128() HasFeature(ARCH_FEATURE_D128)
#define HasDGH() HasFeature(ARCH_FEATURE_DGH)
#define HasDotProd() HasFeature(ARCH_FEATURE_DotProd)
#define HasF16F32DOT() HasFeature(ARCH_FEATURE_F16F32DOT)
#define HasF16F32MM() HasFeature(ARCH_FEATURE_F16F32MM)
#define HasF16MM() HasFeature(ARCH_FEATURE_F16MM)
#define HasF32MM() HasFeature(ARCH_FEATURE_F32MM)
#define HasF64MM() HasFeature(ARCH_FEATURE_F64MM)
#define HasF8F16MM() HasFeature(ARCH_FEATURE_F8F16MM)
#define HasF8F32MM() HasFeature(ARCH_FEATURE_F8F32MM)
#define HasFAMINMAX() HasFeature(ARCH_FEATURE_FAMINMAX)
#define HasFCMA() HasFeature(ARCH_FEATURE_FCMA)
#define HasFHM() HasFeature(ARCH_FEATURE_FHM)
#define HasFP() HasFeature(ARCH_FEATURE_FP)
#define HasFP16() HasFeature(ARCH_FEATURE_FP16)
#define HasFP8() HasFeature(ARCH_FEATURE_FP8)
#define HasFP8DOT2() HasFeature(ARCH_FEATURE_FP8DOT2)
#define HasFP8DOT4() HasFeature(ARCH_FEATURE_FP8DOT4)
#define HasFP8FMA() HasFeature(ARCH_FEATURE_FP8FMA)
#define HasFPRCVT() HasFeature(ARCH_FEATURE_FPRCVT)
#define HasFRINTTS() HasFeature(ARCH_FEATURE_FRINTTS)
#define HasFlagM() HasFeature(ARCH_FEATURE_FlagM)
#define HasFlagM2() HasFeature(ARCH_FEATURE_FlagM2)
#define HasGCS() HasFeature(ARCH_FEATURE_GCS)
#define HasHBC() HasFeature(ARCH_FEATURE_HBC)
#define HasI8MM() HasFeature(ARCH_FEATURE_I8MM)
#define HasJSCVT() HasFeature(ARCH_FEATURE_JSCVT)
#define HasLOR() HasFeature(ARCH_FEATURE_LOR)
#define HasLRCPC() HasFeature(ARCH_FEATURE_LRCPC)
#define HasLRCPC2() HasFeature(ARCH_FEATURE_LRCPC2)
#define HasLRCPC3() HasFeature(ARCH_FEATURE_LRCPC3)
#define HasLS64() HasFeature(ARCH_FEATURE_LS64)
#define HasLS64_ACCDATA() HasFeature(ARCH_FEATURE_LS64_ACCDATA)
#define HasLS64_V() HasFeature(ARCH_FEATURE_LS64_V)
#define HasLSCP() HasFeature(ARCH_FEATURE_LSCP)
#define HasLSE() HasFeature(ARCH_FEATURE_LSE)
#define HasLSE128() HasFeature(ARCH_FEATURE_LSE128)
#define HasLSFE() HasFeature(ARCH_FEATURE_LSFE)
#define HasLSUI() HasFeature(ARCH_FEATURE_LSUI)
#define HasLUT() HasFeature(ARCH_FEATURE_LUT)
#define HasMOPS() HasFeature(ARCH_FEATURE_MOPS)
#define HasMTE() HasFeature(ARCH_FEATURE_MTE)
#define HasMTE2() HasFeature(ARCH_FEATURE_MTE2)
#define HasPAuth() HasFeature(ARCH_FEATURE_PAuth)
#define HasPAuth_LR() HasFeature(ARCH_FEATURE_PAuth_LR)
#define HasPCDPHINT() HasFeature(ARCH_FEATURE_PCDPHINT)
#define HasRAS() HasFeature(ARCH_FEATURE_RAS)
#define HasRDM() HasFeature(ARCH_FEATURE_RDM)
#define HasRPRFM() HasFeature(ARCH_FEATURE_RPRFM)
#define HasSB() HasFeature(ARCH_FEATURE_SB)
#define HasSHA1() HasFeature(ARCH_FEATURE_SHA1)
#define HasSHA256() HasFeature(ARCH_FEATURE_SHA256)
#define HasSHA3() HasFeature(ARCH_FEATURE_SHA3)
#define HasSHA512() HasFeature(ARCH_FEATURE_SHA512)
#define HasSM3() HasFeature(ARCH_FEATURE_SM3)
#define HasSM4() HasFeature(ARCH_FEATURE_SM4)
#define HasSME() HasFeature(ARCH_FEATURE_SME)
#define HasSME2() HasFeature(ARCH_FEATURE_SME2)
#define HasSME2p1() HasFeature(ARCH_FEATURE_SME2p1)
#define HasSME2p2() HasFeature(ARCH_FEATURE_SME2p2)
#define HasSME2p3() HasFeature(ARCH_FEATURE_SME2p3)
#define HasSME_B16B16() HasFeature(ARCH_FEATURE_SME_B16B16)
#define HasSME_F16F16() HasFeature(ARCH_FEATURE_SME_F16F16)
#define HasSME_F64F64() HasFeature(ARCH_FEATURE_SME_F64F64)
#define HasSME_F8F16() HasFeature(ARCH_FEATURE_SME_F8F16)
#define HasSME_F8F32() HasFeature(ARCH_FEATURE_SME_F8F32)
#define HasSME_I16I64() HasFeature(ARCH_FEATURE_SME_I16I64)
#define HasSME_LUTv2() HasFeature(ARCH_FEATURE_SME_LUTv2)
#define HasSME_MOP4() HasFeature(ARCH_FEATURE_SME_MOP4)
#define HasSME_TMOP() HasFeature(ARCH_FEATURE_SME_TMOP)
#define HasSPE() HasFeature(ARCH_FEATURE_SPE)
#define HasSSVE_FEXPA() HasFeature(ARCH_FEATURE_SSVE_FEXPA)
#define HasSSVE_FP8DOT2() HasFeature(ARCH_FEATURE_SSVE_FP8DOT2)
#define HasSSVE_FP8DOT4() HasFeature(ARCH_FEATURE_SSVE_FP8DOT4)
#define HasSSVE_FP8FMA() HasFeature(ARCH_FEATURE_SSVE_FP8FMA)
#define HasSVE() HasFeature(ARCH_FEATURE_SVE)
#define HasSVE2() HasFeature(ARCH_FEATURE_SVE2)
#define HasSVE2p1() HasFeature(ARCH_FEATURE_SVE2p1)
#define HasSVE2p2() HasFeature(ARCH_FEATURE_SVE2p2)
#define HasSVE2p3() HasFeature(ARCH_FEATURE_SVE2p3)
#define HasSVE_AES() HasFeature(ARCH_FEATURE_SVE_AES)
#define HasSVE_AES2() HasFeature(ARCH_FEATURE_SVE_AES2)
#define HasSVE_B16B16() HasFeature(ARCH_FEATURE_SVE_B16B16)
#define HasSVE_B16MM() HasFeature(ARCH_FEATURE_SVE_B16MM)
#define HasSVE_BFSCALE() HasFeature(ARCH_FEATURE_SVE_BFSCALE)
#define HasSVE_BitPerm() HasFeature(ARCH_FEATURE_SVE_BitPerm)
#define HasSVE_F16F32MM() HasFeature(ARCH_FEATURE_SVE_F16F32MM)
#define HasSVE_PMULL128() HasFeature(ARCH_FEATURE_SVE_PMULL128)
#define HasSVE_SHA3() HasFeature(ARCH_FEATURE_SVE_SHA3)
#define HasSVE_SM4() HasFeature(ARCH_FEATURE_SVE_SM4)
#define HasSYSINSTR128() HasFeature(ARCH_FEATURE_SYSINSTR128)
#define HasSYSREG128() HasFeature(ARCH_FEATURE_SYSREG128)
#define HasTHE() HasFeature(ARCH_FEATURE_THE)
#define HasTRF() HasFeature(ARCH_FEATURE_TRF)
#define HasWFxT() HasFeature(ARCH_FEATURE_WFxT)
#define HasXS() HasFeature(ARCH_FEATURE_XS)
// 115 HaveXXX()/IsImplemented(FEAT_XXX) functions used by pcode:
#define HaveFeature(feat) (ctx->pcode_features[(feat) / 64] & ((uint64_t)1 << ((feat) % 64)))
#define HaveAES() HaveFeature(ARCH_FEATURE_AES)
#define HaveAdvSIMD() HaveFeature(ARCH_FEATURE_AdvSIMD)
#define HaveBF16() HaveFeature(ARCH_FEATURE_BF16)
#define HaveBTI() HaveFeature(ARCH_FEATURE_BTI)
#define HaveCHK() HaveFeature(ARCH_FEATURE_CHK)
#define HaveCLRBHB() HaveFeature(ARCH_FEATURE_CLRBHB)
#define HaveCMH() HaveFeature(ARCH_FEATURE_CMH)
#define HaveCMPBR() HaveFeature(ARCH_FEATURE_CMPBR)
#define HaveCPA() HaveFeature(ARCH_FEATURE_CPA)
#define HaveCRC32() HaveFeature(ARCH_FEATURE_CRC32)
#define HaveCSSC() HaveFeature(ARCH_FEATURE_CSSC)
#define HaveD128() HaveFeature(ARCH_FEATURE_D128)
#define HaveDGH() HaveFeature(ARCH_FEATURE_DGH)
#define HaveDIT() HaveFeature(ARCH_FEATURE_DIT)
#define HaveDotProd() HaveFeature(ARCH_FEATURE_DotProd)
#define HaveEBEP() HaveFeature(ARCH_FEATURE_EBEP)
#define HaveF16F32DOT() HaveFeature(ARCH_FEATURE_F16F32DOT)
#define HaveF16F32MM() HaveFeature(ARCH_FEATURE_F16F32MM)
#define HaveF16MM() HaveFeature(ARCH_FEATURE_F16MM)
#define HaveF32MM() HaveFeature(ARCH_FEATURE_F32MM)
#define HaveF64MM() HaveFeature(ARCH_FEATURE_F64MM)
#define HaveF8F16MM() HaveFeature(ARCH_FEATURE_F8F16MM)
#define HaveF8F32MM() HaveFeature(ARCH_FEATURE_F8F32MM)
#define HaveFAMINMAX() HaveFeature(ARCH_FEATURE_FAMINMAX)
#define HaveFCMA() HaveFeature(ARCH_FEATURE_FCMA)
#define HaveFHM() HaveFeature(ARCH_FEATURE_FHM)
#define HaveFP() HaveFeature(ARCH_FEATURE_FP)
#define HaveFP16() HaveFeature(ARCH_FEATURE_FP16)
#define HaveFP8() HaveFeature(ARCH_FEATURE_FP8)
#define HaveFP8DOT2() HaveFeature(ARCH_FEATURE_FP8DOT2)
#define HaveFP8DOT4() HaveFeature(ARCH_FEATURE_FP8DOT4)
#define HaveFP8FMA() HaveFeature(ARCH_FEATURE_FP8FMA)
#define HaveFPRCVT() HaveFeature(ARCH_FEATURE_FPRCVT)
#define HaveFRINTTS() HaveFeature(ARCH_FEATURE_FRINTTS)
#define HaveFlagM() HaveFeature(ARCH_FEATURE_FlagM)
#define HaveFlagM2() HaveFeature(ARCH_FEATURE_FlagM2)
#define HaveGCS() HaveFeature(ARCH_FEATURE_GCS)
#define HaveHBC() HaveFeature(ARCH_FEATURE_HBC)
#define HaveI8MM() HaveFeature(ARCH_FEATURE_I8MM)
#define HaveJSCVT() HaveFeature(ARCH_FEATURE_JSCVT)
#define HaveLOR() HaveFeature(ARCH_FEATURE_LOR)
#define HaveLRCPC() HaveFeature(ARCH_FEATURE_LRCPC)
#define HaveLRCPC2() HaveFeature(ARCH_FEATURE_LRCPC2)
#define HaveLRCPC3() HaveFeature(ARCH_FEATURE_LRCPC3)
#define HaveLS64() HaveFeature(ARCH_FEATURE_LS64)
#define HaveLS64_ACCDATA() HaveFeature(ARCH_FEATURE_LS64_ACCDATA)
#define HaveLS64_V() HaveFeature(ARCH_FEATURE_LS64_V)
#define HaveLSCP() HaveFeature(ARCH_FEATURE_LSCP)
#define HaveLSE() HaveFeature(ARCH_FEATURE_LSE)
#define HaveLSE128() HaveFeature(ARCH_FEATURE_LSE128)
#define HaveLSFE() HaveFeature(ARCH_FEATURE_LSFE)
#define HaveLSUI() HaveFeature(ARCH_FEATURE_LSUI)
#define HaveLUT() HaveFeature(ARCH_FEATURE_LUT)
#define HaveMOPS() HaveFeature(ARCH_FEATURE_MOPS)
#define HaveMTE() HaveFeature(ARCH_FEATURE_MTE)
#define HaveMTE2() HaveFeature(ARCH_FEATURE_MTE2)
#define HaveNMI() HaveFeature(ARCH_FEATURE_NMI)
#define HavePAN() HaveFeature(ARCH_FEATURE_PAN)
#define HavePAuth() HaveFeature(ARCH_FEATURE_PAuth)
#define HavePAuth_LR() HaveFeature(ARCH_FEATURE_PAuth_LR)
#define HavePCDPHINT() HaveFeature(ARCH_FEATURE_PCDPHINT)
#define HavePMULL() HaveFeature(ARCH_FEATURE_PMULL)
#define HaveRAS() HaveFeature(ARCH_FEATURE_RAS)
#define HaveRDM() HaveFeature(ARCH_FEATURE_RDM)
#define HaveRPRFM() HaveFeature(ARCH_FEATURE_RPRFM)
#define HaveSB() HaveFeature(ARCH_FEATURE_SB)
#define HaveSHA1() HaveFeature(ARCH_FEATURE_SHA1)
#define HaveSHA256() HaveFeature(ARCH_FEATURE_SHA256)
#define HaveSHA3() HaveFeature(ARCH_FEATURE_SHA3)
#define HaveSHA512() HaveFeature(ARCH_FEATURE_SHA512)
#define HaveSM3() HaveFeature(ARCH_FEATURE_SM3)
#define HaveSM4() HaveFeature(ARCH_FEATURE_SM4)
#define HaveSME() HaveFeature(ARCH_FEATURE_SME)
#define HaveSME2() HaveFeature(ARCH_FEATURE_SME2)
#define HaveSME2p1() HaveFeature(ARCH_FEATURE_SME2p1)
#define HaveSME2p2() HaveFeature(ARCH_FEATURE_SME2p2)
#define HaveSME2p3() HaveFeature(ARCH_FEATURE_SME2p3)
#define HaveSME_B16B16() HaveFeature(ARCH_FEATURE_SME_B16B16)
#define HaveSME_F16F16() HaveFeature(ARCH_FEATURE_SME_F16F16)
#define HaveSME_F64F64() HaveFeature(ARCH_FEATURE_SME_F64F64)
#define HaveSME_F8F16() HaveFeature(ARCH_FEATURE_SME_F8F16)
#define HaveSME_F8F32() HaveFeature(ARCH_FEATURE_SME_F8F32)
#define HaveSME_I16I64() HaveFeature(ARCH_FEATURE_SME_I16I64)
#define HaveSME_LUTv2() HaveFeature(ARCH_FEATURE_SME_LUTv2)
#define HaveSME_MOP4() HaveFeature(ARCH_FEATURE_SME_MOP4)
#define HaveSME_TMOP() HaveFeature(ARCH_FEATURE_SME_TMOP)
#define HaveSPE() HaveFeature(ARCH_FEATURE_SPE)
#define HaveSSBS() HaveFeature(ARCH_FEATURE_SSBS)
#define HaveSSVE_FEXPA() HaveFeature(ARCH_FEATURE_SSVE_FEXPA)
#define HaveSVE() HaveFeature(ARCH_FEATURE_SVE)
#define HaveSVE2() HaveFeature(ARCH_FEATURE_SVE2)
#define HaveSVE2FP8DOT2() HaveFeature(ARCH_FEATURE_SVE2FP8DOT2)
#define HaveSVE2FP8DOT4() HaveFeature(ARCH_FEATURE_SVE2FP8DOT4)
#define HaveSVE2FP8FMA() HaveFeature(ARCH_FEATURE_SVE2FP8FMA)
#define HaveSVE2p1() HaveFeature(ARCH_FEATURE_SVE2p1)
#define HaveSVE2p2() HaveFeature(ARCH_FEATURE_SVE2p2)
#define HaveSVE2p3() HaveFeature(ARCH_FEATURE_SVE2p3)
#define HaveSVE_AES() HaveFeature(ARCH_FEATURE_SVE_AES)
#define HaveSVE_AES2() HaveFeature(ARCH_FEATURE_SVE_AES2)
#define HaveSVE_B16B16() HaveFeature(ARCH_FEATURE_SVE_B16B16)
#define HaveSVE_B16MM() HaveFeature(ARCH_FEATURE_SVE_B16MM)
#define HaveSVE_BFSCALE() HaveFeature(ARCH_FEATURE_SVE_BFSCALE)
#define HaveSVE_BitPerm() HaveFeature(ARCH_FEATURE_SVE_BitPerm)
#define HaveSVE_F16F32MM() HaveFeature(ARCH_FEATURE_SVE_F16F32MM)
#define HaveSVE_PMULL128() HaveFeature(ARCH_FEATURE_SVE_PMULL128)
#define HaveSVE_SHA3() HaveFeature(ARCH_FEATURE_SVE_SHA3)
#define HaveSVE_SM4() HaveFeature(ARCH_FEATURE_SVE_SM4)
#define HaveSYSINSTR128() HaveFeature(ARCH_FEATURE_SYSINSTR128)
#define HaveSYSREG128() HaveFeature(ARCH_FEATURE_SYSREG128)
#define HaveTHE() HaveFeature(ARCH_FEATURE_THE)
#define HaveTRF() HaveFeature(ARCH_FEATURE_TRF)
#define HaveUAO() HaveFeature(ARCH_FEATURE_UAO)
#define HaveVHE() HaveFeature(ARCH_FEATURE_VHE)
#define HaveWFxT() HaveFeature(ARCH_FEATURE_WFxT)
#define HaveXS() HaveFeature(ARCH_FEATURE_XS)
#define ARCH_FEATURE_AES 0 // Referenced by decode and pcode
#define ARCH_FEATURE_AdvSIMD 1 // Referenced by decode and pcode
#define ARCH_FEATURE_BF16 2 // Referenced by decode and pcode
#define ARCH_FEATURE_BTI 3 // Referenced by decode and pcode
#define ARCH_FEATURE_CHK 4 // Referenced by decode and pcode
#define ARCH_FEATURE_CLRBHB 5 // Referenced by decode and pcode
#define ARCH_FEATURE_CMH 6 // Referenced by decode and pcode
#define ARCH_FEATURE_CMPBR 7 // Referenced by decode and pcode
#define ARCH_FEATURE_CPA 8 // Referenced by decode and pcode
#define ARCH_FEATURE_CRC32 9 // Referenced by decode and pcode
#define ARCH_FEATURE_CSSC 10 // Referenced by decode and pcode
#define ARCH_FEATURE_D128 11 // Referenced by decode and pcode
#define ARCH_FEATURE_DGH 12 // Referenced by decode and pcode
#define ARCH_FEATURE_DIT 13 // Referenced by pcode
#define ARCH_FEATURE_DotProd 14 // Referenced by decode and pcode
#define ARCH_FEATURE_EBEP 15 // Referenced by pcode
#define ARCH_FEATURE_F16F32DOT 16 // Referenced by decode and pcode
#define ARCH_FEATURE_F16F32MM 17 // Referenced by decode and pcode
#define ARCH_FEATURE_F16MM 18 // Referenced by decode and pcode
#define ARCH_FEATURE_F32MM 19 // Referenced by decode and pcode
#define ARCH_FEATURE_F64MM 20 // Referenced by decode and pcode
#define ARCH_FEATURE_F8F16MM 21 // Referenced by decode and pcode
#define ARCH_FEATURE_F8F32MM 22 // Referenced by decode and pcode
#define ARCH_FEATURE_FAMINMAX 23 // Referenced by decode and pcode
#define ARCH_FEATURE_FCMA 24 // Referenced by decode and pcode
#define ARCH_FEATURE_FHM 25 // Referenced by decode and pcode
#define ARCH_FEATURE_FP 26 // Referenced by decode and pcode
#define ARCH_FEATURE_FP16 27 // Referenced by decode and pcode
#define ARCH_FEATURE_FP8 28 // Referenced by decode and pcode
#define ARCH_FEATURE_FP8DOT2 29 // Referenced by decode and pcode
#define ARCH_FEATURE_FP8DOT4 30 // Referenced by decode and pcode
#define ARCH_FEATURE_FP8FMA 31 // Referenced by decode and pcode
#define ARCH_FEATURE_FPRCVT 32 // Referenced by decode and pcode
#define ARCH_FEATURE_FRINTTS 33 // Referenced by decode and pcode
#define ARCH_FEATURE_FlagM 34 // Referenced by decode and pcode
#define ARCH_FEATURE_FlagM2 35 // Referenced by decode and pcode
#define ARCH_FEATURE_GCS 36 // Referenced by decode and pcode
#define ARCH_FEATURE_HBC 37 // Referenced by decode and pcode
#define ARCH_FEATURE_I8MM 38 // Referenced by decode and pcode
#define ARCH_FEATURE_JSCVT 39 // Referenced by decode and pcode
#define ARCH_FEATURE_LOR 40 // Referenced by decode and pcode
#define ARCH_FEATURE_LRCPC 41 // Referenced by decode and pcode
#define ARCH_FEATURE_LRCPC2 42 // Referenced by decode and pcode
#define ARCH_FEATURE_LRCPC3 43 // Referenced by decode and pcode
#define ARCH_FEATURE_LS64 44 // Referenced by decode and pcode
#define ARCH_FEATURE_LS64_ACCDATA 45 // Referenced by decode and pcode
#define ARCH_FEATURE_LS64_V 46 // Referenced by decode and pcode
#define ARCH_FEATURE_LSCP 47 // Referenced by decode and pcode
#define ARCH_FEATURE_LSE 48 // Referenced by decode and pcode
#define ARCH_FEATURE_LSE128 49 // Referenced by decode and pcode
#define ARCH_FEATURE_LSFE 50 // Referenced by decode and pcode
#define ARCH_FEATURE_LSUI 51 // Referenced by decode and pcode
#define ARCH_FEATURE_LUT 52 // Referenced by decode and pcode
#define ARCH_FEATURE_MOPS 53 // Referenced by decode and pcode
#define ARCH_FEATURE_MTE 54 // Referenced by decode and pcode
#define ARCH_FEATURE_MTE2 55 // Referenced by decode and pcode
#define ARCH_FEATURE_NMI 56 // Referenced by pcode
#define ARCH_FEATURE_PAN 57 // Referenced by pcode
#define ARCH_FEATURE_PAuth 58 // Referenced by decode and pcode
#define ARCH_FEATURE_PAuth_LR 59 // Referenced by decode and pcode
#define ARCH_FEATURE_PCDPHINT 60 // Referenced by decode and pcode
#define ARCH_FEATURE_PMULL 61 // Referenced by pcode
#define ARCH_FEATURE_RAS 62 // Referenced by decode and pcode
#define ARCH_FEATURE_RDM 63 // Referenced by decode and pcode
#define ARCH_FEATURE_RPRFM 64 // Referenced by decode and pcode
#define ARCH_FEATURE_SB 65 // Referenced by decode and pcode
#define ARCH_FEATURE_SHA1 66 // Referenced by decode and pcode
#define ARCH_FEATURE_SHA256 67 // Referenced by decode and pcode
#define ARCH_FEATURE_SHA3 68 // Referenced by decode and pcode
#define ARCH_FEATURE_SHA512 69 // Referenced by decode and pcode
#define ARCH_FEATURE_SM3 70 // Referenced by decode and pcode
#define ARCH_FEATURE_SM4 71 // Referenced by decode and pcode
#define ARCH_FEATURE_SME 72 // Referenced by decode and pcode
#define ARCH_FEATURE_SME2 73 // Referenced by decode and pcode
#define ARCH_FEATURE_SME2p1 74 // Referenced by decode and pcode
#define ARCH_FEATURE_SME2p2 75 // Referenced by decode and pcode
#define ARCH_FEATURE_SME2p3 76 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_B16B16 77 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_F16F16 78 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_F64F64 79 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_F8F16 80 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_F8F32 81 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_I16I64 82 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_LUTv2 83 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_MOP4 84 // Referenced by decode and pcode
#define ARCH_FEATURE_SME_TMOP 85 // Referenced by decode and pcode
#define ARCH_FEATURE_SPE 86 // Referenced by decode and pcode
#define ARCH_FEATURE_SSBS 87 // Referenced by pcode
#define ARCH_FEATURE_SSVE_FEXPA 88 // Referenced by decode and pcode
#define ARCH_FEATURE_SSVE_FP8DOT2 89 // Referenced by decode
#define ARCH_FEATURE_SSVE_FP8DOT4 90 // Referenced by decode
#define ARCH_FEATURE_SSVE_FP8FMA 91 // Referenced by decode
#define ARCH_FEATURE_SVE 92 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE2 93 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE2FP8DOT2 94 // Referenced by pcode
#define ARCH_FEATURE_SVE2FP8DOT4 95 // Referenced by pcode
#define ARCH_FEATURE_SVE2FP8FMA 96 // Referenced by pcode
#define ARCH_FEATURE_SVE2p1 97 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE2p2 98 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE2p3 99 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_AES 100 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_AES2 101 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_B16B16 102 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_B16MM 103 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_BFSCALE 104 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_BitPerm 105 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_F16F32MM 106 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_PMULL128 107 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_SHA3 108 // Referenced by decode and pcode
#define ARCH_FEATURE_SVE_SM4 109 // Referenced by decode and pcode
#define ARCH_FEATURE_SYSINSTR128 110 // Referenced by decode and pcode
#define ARCH_FEATURE_SYSREG128 111 // Referenced by decode and pcode
#define ARCH_FEATURE_THE 112 // Referenced by decode and pcode
#define ARCH_FEATURE_TRF 113 // Referenced by decode and pcode
#define ARCH_FEATURE_UAO 114 // Referenced by pcode
#define ARCH_FEATURE_VHE 115 // Referenced by pcode
#define ARCH_FEATURE_WFxT 116 // Referenced by decode and pcode
#define ARCH_FEATURE_XS 117 // Referenced by decode and pcode
#define ARCH_FEATURES_ENABLE_ALL(feature_field) do { \
_Static_assert(sizeof(feature_field) * 8 > ARCH_FEATURE_XS, "Feature field too small for largest feature value"); \
memset((feature_field), 0xFF, sizeof(feature_field)); \
} while(0)
|