1 /* riscv-opc.h. RISC-V instruction opcode and CSR macros.
2 Copyright (C) 2011-2025 Free Software Foundation, Inc.
3 Contributed by Andrew Waterman
5 This file is part of GDB, GAS, and the GNU binutils.
7 GDB, GAS, and the GNU binutils are free software; you can redistribute
8 them and/or modify them under the terms of the GNU General Public
9 License as published by the Free Software Foundation; either version
10 3, or (at your option) any later version.
12 GDB, GAS, and the GNU binutils are distributed in the hope that they
13 will be useful, but WITHOUT ANY WARRANTY; without even the implied
14 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
15 the GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; see the file COPYING3. If not,
19 see <http://www.gnu.org/licenses/>. */
21 #ifndef RISCV_ENCODING_H
22 #define RISCV_ENCODING_H
23 /* Instruction opcode macros. */
24 #define MATCH_SLLI_RV32 0x1013
25 #define MASK_SLLI_RV32 0xfe00707f
26 #define MATCH_SRLI_RV32 0x5013
27 #define MASK_SRLI_RV32 0xfe00707f
28 #define MATCH_SRAI_RV32 0x40005013
29 #define MASK_SRAI_RV32 0xfe00707f
30 #define MATCH_FRFLAGS 0x102073
31 #define MASK_FRFLAGS 0xfffff07f
32 #define MATCH_FSFLAGS 0x101073
33 #define MASK_FSFLAGS 0xfff0707f
34 #define MATCH_FSFLAGSI 0x105073
35 #define MASK_FSFLAGSI 0xfff0707f
36 #define MATCH_FRRM 0x202073
37 #define MASK_FRRM 0xfffff07f
38 #define MATCH_FSRM 0x201073
39 #define MASK_FSRM 0xfff0707f
40 #define MATCH_FSRMI 0x205073
41 #define MASK_FSRMI 0xfff0707f
42 #define MATCH_FSCSR 0x301073
43 #define MASK_FSCSR 0xfff0707f
44 #define MATCH_FRCSR 0x302073
45 #define MASK_FRCSR 0xfffff07f
46 #define MATCH_RDCYCLE 0xc0002073
47 #define MASK_RDCYCLE 0xfffff07f
48 #define MATCH_RDTIME 0xc0102073
49 #define MASK_RDTIME 0xfffff07f
50 #define MATCH_RDINSTRET 0xc0202073
51 #define MASK_RDINSTRET 0xfffff07f
52 #define MATCH_RDCYCLEH 0xc8002073
53 #define MASK_RDCYCLEH 0xfffff07f
54 #define MATCH_RDTIMEH 0xc8102073
55 #define MASK_RDTIMEH 0xfffff07f
56 #define MATCH_RDINSTRETH 0xc8202073
57 #define MASK_RDINSTRETH 0xfffff07f
58 #define MATCH_SCALL 0x73
59 #define MASK_SCALL 0xffffffff
60 #define MATCH_SBREAK 0x100073
61 #define MASK_SBREAK 0xffffffff
62 #define MATCH_BEQ 0x63
63 #define MASK_BEQ 0x707f
64 #define MATCH_BNE 0x1063
65 #define MASK_BNE 0x707f
66 #define MATCH_BLT 0x4063
67 #define MASK_BLT 0x707f
68 #define MATCH_BGE 0x5063
69 #define MASK_BGE 0x707f
70 #define MATCH_BLTU 0x6063
71 #define MASK_BLTU 0x707f
72 #define MATCH_BGEU 0x7063
73 #define MASK_BGEU 0x707f
74 #define MATCH_JALR 0x67
75 #define MASK_JALR 0x707f
76 #define MATCH_JAL 0x6f
78 #define MATCH_LUI 0x37
80 #define MATCH_AUIPC 0x17
81 #define MASK_AUIPC 0x7f
82 #define MATCH_ADDI 0x13
83 #define MASK_ADDI 0x707f
84 #define MATCH_SLLI 0x1013
85 #define MASK_SLLI 0xfc00707f
86 #define MATCH_SLTI 0x2013
87 #define MASK_SLTI 0x707f
88 #define MATCH_SLTIU 0x3013
89 #define MASK_SLTIU 0x707f
90 #define MATCH_XORI 0x4013
91 #define MASK_XORI 0x707f
92 #define MATCH_SRLI 0x5013
93 #define MASK_SRLI 0xfc00707f
94 #define MATCH_SRAI 0x40005013
95 #define MASK_SRAI 0xfc00707f
96 #define MATCH_ORI 0x6013
97 #define MASK_ORI 0x707f
98 #define MATCH_ANDI 0x7013
99 #define MASK_ANDI 0x707f
100 #define MATCH_ADD 0x33
101 #define MASK_ADD 0xfe00707f
102 #define MATCH_SUB 0x40000033
103 #define MASK_SUB 0xfe00707f
104 #define MATCH_SLL 0x1033
105 #define MASK_SLL 0xfe00707f
106 #define MATCH_SLT 0x2033
107 #define MASK_SLT 0xfe00707f
108 #define MATCH_SLTU 0x3033
109 #define MASK_SLTU 0xfe00707f
110 #define MATCH_XOR 0x4033
111 #define MASK_XOR 0xfe00707f
112 #define MATCH_SRL 0x5033
113 #define MASK_SRL 0xfe00707f
114 #define MATCH_SRA 0x40005033
115 #define MASK_SRA 0xfe00707f
116 #define MATCH_OR 0x6033
117 #define MASK_OR 0xfe00707f
118 #define MATCH_AND 0x7033
119 #define MASK_AND 0xfe00707f
120 #define MATCH_ADDIW 0x1b
121 #define MASK_ADDIW 0x707f
122 #define MATCH_SLLIW 0x101b
123 #define MASK_SLLIW 0xfe00707f
124 #define MATCH_SRLIW 0x501b
125 #define MASK_SRLIW 0xfe00707f
126 #define MATCH_SRAIW 0x4000501b
127 #define MASK_SRAIW 0xfe00707f
128 #define MATCH_ADDW 0x3b
129 #define MASK_ADDW 0xfe00707f
130 #define MATCH_SUBW 0x4000003b
131 #define MASK_SUBW 0xfe00707f
132 #define MATCH_SLLW 0x103b
133 #define MASK_SLLW 0xfe00707f
134 #define MATCH_SRLW 0x503b
135 #define MASK_SRLW 0xfe00707f
136 #define MATCH_SRAW 0x4000503b
137 #define MASK_SRAW 0xfe00707f
139 #define MASK_LB 0x707f
140 #define MATCH_LH 0x1003
141 #define MASK_LH 0x707f
142 #define MATCH_LW 0x2003
143 #define MASK_LW 0x707f
144 #define MATCH_LD 0x3003
145 #define MASK_LD 0x707f
146 #define MATCH_LBU 0x4003
147 #define MASK_LBU 0x707f
148 #define MATCH_LHU 0x5003
149 #define MASK_LHU 0x707f
150 #define MATCH_LWU 0x6003
151 #define MASK_LWU 0x707f
152 #define MATCH_SB 0x23
153 #define MASK_SB 0x707f
154 #define MATCH_SH 0x1023
155 #define MASK_SH 0x707f
156 #define MATCH_SW 0x2023
157 #define MASK_SW 0x707f
158 #define MATCH_SD 0x3023
159 #define MASK_SD 0x707f
160 #define MATCH_PAUSE 0x0100000f
161 #define MASK_PAUSE 0xffffffff
162 #define MATCH_FENCE 0xf
163 #define MASK_FENCE 0x707f
164 #define MATCH_FENCE_I 0x100f
165 #define MASK_FENCE_I 0x707f
166 #define MATCH_FENCE_TSO 0x8330000f
167 #define MASK_FENCE_TSO 0xfff0707f
168 #define MATCH_MUL 0x2000033
169 #define MASK_MUL 0xfe00707f
170 #define MATCH_MULH 0x2001033
171 #define MASK_MULH 0xfe00707f
172 #define MATCH_MULHSU 0x2002033
173 #define MASK_MULHSU 0xfe00707f
174 #define MATCH_MULHU 0x2003033
175 #define MASK_MULHU 0xfe00707f
176 #define MATCH_DIV 0x2004033
177 #define MASK_DIV 0xfe00707f
178 #define MATCH_DIVU 0x2005033
179 #define MASK_DIVU 0xfe00707f
180 #define MATCH_REM 0x2006033
181 #define MASK_REM 0xfe00707f
182 #define MATCH_REMU 0x2007033
183 #define MASK_REMU 0xfe00707f
184 #define MATCH_MULW 0x200003b
185 #define MASK_MULW 0xfe00707f
186 #define MATCH_DIVW 0x200403b
187 #define MASK_DIVW 0xfe00707f
188 #define MATCH_DIVUW 0x200503b
189 #define MASK_DIVUW 0xfe00707f
190 #define MATCH_REMW 0x200603b
191 #define MASK_REMW 0xfe00707f
192 #define MATCH_REMUW 0x200703b
193 #define MASK_REMUW 0xfe00707f
194 #define MATCH_AMOADD_W 0x202f
195 #define MASK_AMOADD_W 0xf800707f
196 #define MATCH_AMOXOR_W 0x2000202f
197 #define MASK_AMOXOR_W 0xf800707f
198 #define MATCH_AMOOR_W 0x4000202f
199 #define MASK_AMOOR_W 0xf800707f
200 #define MATCH_AMOAND_W 0x6000202f
201 #define MASK_AMOAND_W 0xf800707f
202 #define MATCH_AMOMIN_W 0x8000202f
203 #define MASK_AMOMIN_W 0xf800707f
204 #define MATCH_AMOMAX_W 0xa000202f
205 #define MASK_AMOMAX_W 0xf800707f
206 #define MATCH_AMOMINU_W 0xc000202f
207 #define MASK_AMOMINU_W 0xf800707f
208 #define MATCH_AMOMAXU_W 0xe000202f
209 #define MASK_AMOMAXU_W 0xf800707f
210 #define MATCH_AMOSWAP_W 0x800202f
211 #define MASK_AMOSWAP_W 0xf800707f
212 #define MATCH_LR_W 0x1000202f
213 #define MASK_LR_W 0xf9f0707f
214 #define MATCH_SC_W 0x1800202f
215 #define MASK_SC_W 0xf800707f
216 #define MATCH_AMOADD_D 0x302f
217 #define MASK_AMOADD_D 0xf800707f
218 #define MATCH_AMOXOR_D 0x2000302f
219 #define MASK_AMOXOR_D 0xf800707f
220 #define MATCH_AMOOR_D 0x4000302f
221 #define MASK_AMOOR_D 0xf800707f
222 #define MATCH_AMOAND_D 0x6000302f
223 #define MASK_AMOAND_D 0xf800707f
224 #define MATCH_AMOMIN_D 0x8000302f
225 #define MASK_AMOMIN_D 0xf800707f
226 #define MATCH_AMOMAX_D 0xa000302f
227 #define MASK_AMOMAX_D 0xf800707f
228 #define MATCH_AMOMINU_D 0xc000302f
229 #define MASK_AMOMINU_D 0xf800707f
230 #define MATCH_AMOMAXU_D 0xe000302f
231 #define MASK_AMOMAXU_D 0xf800707f
232 #define MATCH_AMOSWAP_D 0x800302f
233 #define MASK_AMOSWAP_D 0xf800707f
234 #define MATCH_LR_D 0x1000302f
235 #define MASK_LR_D 0xf9f0707f
236 #define MATCH_SC_D 0x1800302f
237 #define MASK_SC_D 0xf800707f
238 #define MATCH_AMOADD_B 0x02f
239 #define MASK_AMOADD_B 0xf800707f
240 #define MATCH_AMOXOR_B 0x2000002f
241 #define MASK_AMOXOR_B 0xf800707f
242 #define MATCH_AMOOR_B 0x4000002f
243 #define MASK_AMOOR_B 0xf800707f
244 #define MATCH_AMOAND_B 0x6000002f
245 #define MASK_AMOAND_B 0xf800707f
246 #define MATCH_AMOMIN_B 0x8000002f
247 #define MASK_AMOMIN_B 0xf800707f
248 #define MATCH_AMOMAX_B 0xa000002f
249 #define MASK_AMOMAX_B 0xf800707f
250 #define MATCH_AMOMINU_B 0xc000002f
251 #define MASK_AMOMINU_B 0xf800707f
252 #define MATCH_AMOMAXU_B 0xe000002f
253 #define MASK_AMOMAXU_B 0xf800707f
254 #define MATCH_AMOSWAP_B 0x800002f
255 #define MASK_AMOSWAP_B 0xf800707f
256 #define MATCH_AMOCAS_B 0x2800002f
257 #define MASK_AMOCAS_B 0xf800707f
258 #define MATCH_AMOADD_H 0x102f
259 #define MASK_AMOADD_H 0xf800707f
260 #define MATCH_AMOXOR_H 0x2000102f
261 #define MASK_AMOXOR_H 0xf800707f
262 #define MATCH_AMOOR_H 0x4000102f
263 #define MASK_AMOOR_H 0xf800707f
264 #define MATCH_AMOAND_H 0x6000102f
265 #define MASK_AMOAND_H 0xf800707f
266 #define MATCH_AMOMIN_H 0x8000102f
267 #define MASK_AMOMIN_H 0xf800707f
268 #define MATCH_AMOMAX_H 0xa000102f
269 #define MASK_AMOMAX_H 0xf800707f
270 #define MATCH_AMOMINU_H 0xc000102f
271 #define MASK_AMOMINU_H 0xf800707f
272 #define MATCH_AMOMAXU_H 0xe000102f
273 #define MASK_AMOMAXU_H 0xf800707f
274 #define MATCH_AMOSWAP_H 0x800102f
275 #define MASK_AMOSWAP_H 0xf800707f
276 #define MATCH_AMOCAS_H 0x2800102f
277 #define MASK_AMOCAS_H 0xf800707f
278 #define MATCH_ECALL 0x73
279 #define MASK_ECALL 0xffffffff
280 #define MATCH_EBREAK 0x100073
281 #define MASK_EBREAK 0xffffffff
282 #define MATCH_URET 0x200073
283 #define MASK_URET 0xffffffff
284 #define MATCH_SRET 0x10200073
285 #define MASK_SRET 0xffffffff
286 #define MATCH_HRET 0x20200073
287 #define MASK_HRET 0xffffffff
288 #define MATCH_MRET 0x30200073
289 #define MASK_MRET 0xffffffff
290 #define MATCH_DRET 0x7b200073
291 #define MASK_DRET 0xffffffff
292 #define MATCH_SFENCE_VMA 0x12000073
293 #define MASK_SFENCE_VMA 0xfe007fff
294 #define MATCH_WFI 0x10500073
295 #define MASK_WFI 0xffffffff
296 #define MATCH_CSRRW 0x1073
297 #define MASK_CSRRW 0x707f
298 #define MATCH_CSRRS 0x2073
299 #define MASK_CSRRS 0x707f
300 #define MATCH_CSRRC 0x3073
301 #define MASK_CSRRC 0x707f
302 #define MATCH_CSRRWI 0x5073
303 #define MASK_CSRRWI 0x707f
304 #define MATCH_CSRRSI 0x6073
305 #define MASK_CSRRSI 0x707f
306 #define MATCH_CSRRCI 0x7073
307 #define MASK_CSRRCI 0x707f
308 #define MATCH_FADD_S 0x53
309 #define MASK_FADD_S 0xfe00007f
310 #define MATCH_FSUB_S 0x8000053
311 #define MASK_FSUB_S 0xfe00007f
312 #define MATCH_FMUL_S 0x10000053
313 #define MASK_FMUL_S 0xfe00007f
314 #define MATCH_FDIV_S 0x18000053
315 #define MASK_FDIV_S 0xfe00007f
316 #define MATCH_FSGNJ_S 0x20000053
317 #define MASK_FSGNJ_S 0xfe00707f
318 #define MATCH_FSGNJN_S 0x20001053
319 #define MASK_FSGNJN_S 0xfe00707f
320 #define MATCH_FSGNJX_S 0x20002053
321 #define MASK_FSGNJX_S 0xfe00707f
322 #define MATCH_FMIN_S 0x28000053
323 #define MASK_FMIN_S 0xfe00707f
324 #define MATCH_FMAX_S 0x28001053
325 #define MASK_FMAX_S 0xfe00707f
326 #define MATCH_FSQRT_S 0x58000053
327 #define MASK_FSQRT_S 0xfff0007f
328 #define MATCH_FADD_D 0x2000053
329 #define MASK_FADD_D 0xfe00007f
330 #define MATCH_FSUB_D 0xa000053
331 #define MASK_FSUB_D 0xfe00007f
332 #define MATCH_FMUL_D 0x12000053
333 #define MASK_FMUL_D 0xfe00007f
334 #define MATCH_FDIV_D 0x1a000053
335 #define MASK_FDIV_D 0xfe00007f
336 #define MATCH_FSGNJ_D 0x22000053
337 #define MASK_FSGNJ_D 0xfe00707f
338 #define MATCH_FSGNJN_D 0x22001053
339 #define MASK_FSGNJN_D 0xfe00707f
340 #define MATCH_FSGNJX_D 0x22002053
341 #define MASK_FSGNJX_D 0xfe00707f
342 #define MATCH_FMIN_D 0x2a000053
343 #define MASK_FMIN_D 0xfe00707f
344 #define MATCH_FMAX_D 0x2a001053
345 #define MASK_FMAX_D 0xfe00707f
346 #define MATCH_FCVT_S_D 0x40100053
347 #define MASK_FCVT_S_D 0xfff0007f
348 #define MATCH_FCVT_D_S 0x42000053
349 #define MASK_FCVT_D_S 0xfff0007f
350 #define MATCH_FSQRT_D 0x5a000053
351 #define MASK_FSQRT_D 0xfff0007f
352 #define MATCH_FADD_Q 0x6000053
353 #define MASK_FADD_Q 0xfe00007f
354 #define MATCH_FSUB_Q 0xe000053
355 #define MASK_FSUB_Q 0xfe00007f
356 #define MATCH_FMUL_Q 0x16000053
357 #define MASK_FMUL_Q 0xfe00007f
358 #define MATCH_FDIV_Q 0x1e000053
359 #define MASK_FDIV_Q 0xfe00007f
360 #define MATCH_FSGNJ_Q 0x26000053
361 #define MASK_FSGNJ_Q 0xfe00707f
362 #define MATCH_FSGNJN_Q 0x26001053
363 #define MASK_FSGNJN_Q 0xfe00707f
364 #define MATCH_FSGNJX_Q 0x26002053
365 #define MASK_FSGNJX_Q 0xfe00707f
366 #define MATCH_FMIN_Q 0x2e000053
367 #define MASK_FMIN_Q 0xfe00707f
368 #define MATCH_FMAX_Q 0x2e001053
369 #define MASK_FMAX_Q 0xfe00707f
370 #define MATCH_FCVT_S_Q 0x40300053
371 #define MASK_FCVT_S_Q 0xfff0007f
372 #define MATCH_FCVT_Q_S 0x46000053
373 #define MASK_FCVT_Q_S 0xfff0007f
374 #define MATCH_FCVT_D_Q 0x42300053
375 #define MASK_FCVT_D_Q 0xfff0007f
376 #define MATCH_FCVT_Q_D 0x46100053
377 #define MASK_FCVT_Q_D 0xfff0007f
378 #define MATCH_FSQRT_Q 0x5e000053
379 #define MASK_FSQRT_Q 0xfff0007f
380 #define MATCH_FLE_S 0xa0000053
381 #define MASK_FLE_S 0xfe00707f
382 #define MATCH_FLT_S 0xa0001053
383 #define MASK_FLT_S 0xfe00707f
384 #define MATCH_FEQ_S 0xa0002053
385 #define MASK_FEQ_S 0xfe00707f
386 #define MATCH_FLE_D 0xa2000053
387 #define MASK_FLE_D 0xfe00707f
388 #define MATCH_FLT_D 0xa2001053
389 #define MASK_FLT_D 0xfe00707f
390 #define MATCH_FEQ_D 0xa2002053
391 #define MASK_FEQ_D 0xfe00707f
392 #define MATCH_FLE_Q 0xa6000053
393 #define MASK_FLE_Q 0xfe00707f
394 #define MATCH_FLT_Q 0xa6001053
395 #define MASK_FLT_Q 0xfe00707f
396 #define MATCH_FEQ_Q 0xa6002053
397 #define MASK_FEQ_Q 0xfe00707f
398 #define MATCH_FCVT_W_S 0xc0000053
399 #define MASK_FCVT_W_S 0xfff0007f
400 #define MATCH_FCVT_WU_S 0xc0100053
401 #define MASK_FCVT_WU_S 0xfff0007f
402 #define MATCH_FCVT_L_S 0xc0200053
403 #define MASK_FCVT_L_S 0xfff0007f
404 #define MATCH_FCVT_LU_S 0xc0300053
405 #define MASK_FCVT_LU_S 0xfff0007f
406 #define MATCH_FMV_X_S 0xe0000053
407 #define MASK_FMV_X_S 0xfff0707f
408 #define MATCH_FCLASS_S 0xe0001053
409 #define MASK_FCLASS_S 0xfff0707f
410 #define MATCH_FCVT_W_D 0xc2000053
411 #define MASK_FCVT_W_D 0xfff0007f
412 #define MATCH_FCVT_WU_D 0xc2100053
413 #define MASK_FCVT_WU_D 0xfff0007f
414 #define MATCH_FCVT_L_D 0xc2200053
415 #define MASK_FCVT_L_D 0xfff0007f
416 #define MATCH_FCVT_LU_D 0xc2300053
417 #define MASK_FCVT_LU_D 0xfff0007f
418 #define MATCH_FMV_X_D 0xe2000053
419 #define MASK_FMV_X_D 0xfff0707f
420 #define MATCH_FCLASS_D 0xe2001053
421 #define MASK_FCLASS_D 0xfff0707f
422 #define MATCH_FCVT_W_Q 0xc6000053
423 #define MASK_FCVT_W_Q 0xfff0007f
424 #define MATCH_FCVT_WU_Q 0xc6100053
425 #define MASK_FCVT_WU_Q 0xfff0007f
426 #define MATCH_FCVT_L_Q 0xc6200053
427 #define MASK_FCVT_L_Q 0xfff0007f
428 #define MATCH_FCVT_LU_Q 0xc6300053
429 #define MASK_FCVT_LU_Q 0xfff0007f
430 #define MATCH_FCLASS_Q 0xe6001053
431 #define MASK_FCLASS_Q 0xfff0707f
432 #define MATCH_FCVT_S_W 0xd0000053
433 #define MASK_FCVT_S_W 0xfff0007f
434 #define MATCH_FCVT_S_WU 0xd0100053
435 #define MASK_FCVT_S_WU 0xfff0007f
436 #define MATCH_FCVT_S_L 0xd0200053
437 #define MASK_FCVT_S_L 0xfff0007f
438 #define MATCH_FCVT_S_LU 0xd0300053
439 #define MASK_FCVT_S_LU 0xfff0007f
440 #define MATCH_FMV_S_X 0xf0000053
441 #define MASK_FMV_S_X 0xfff0707f
442 #define MATCH_FCVT_D_W 0xd2000053
443 #define MASK_FCVT_D_W 0xfff0007f
444 #define MATCH_FCVT_D_WU 0xd2100053
445 #define MASK_FCVT_D_WU 0xfff0007f
446 #define MATCH_FCVT_D_L 0xd2200053
447 #define MASK_FCVT_D_L 0xfff0007f
448 #define MATCH_FCVT_D_LU 0xd2300053
449 #define MASK_FCVT_D_LU 0xfff0007f
450 #define MATCH_FMV_D_X 0xf2000053
451 #define MASK_FMV_D_X 0xfff0707f
452 #define MATCH_FCVT_Q_W 0xd6000053
453 #define MASK_FCVT_Q_W 0xfff0007f
454 #define MATCH_FCVT_Q_WU 0xd6100053
455 #define MASK_FCVT_Q_WU 0xfff0007f
456 #define MATCH_FCVT_Q_L 0xd6200053
457 #define MASK_FCVT_Q_L 0xfff0007f
458 #define MATCH_FCVT_Q_LU 0xd6300053
459 #define MASK_FCVT_Q_LU 0xfff0007f
460 #define MATCH_FLI_H 0xf4100053
461 #define MASK_FLI_H 0xfff0707f
462 #define MATCH_FMINM_H 0x2c002053
463 #define MASK_FMINM_H 0xfe00707f
464 #define MATCH_FMAXM_H 0x2c003053
465 #define MASK_FMAXM_H 0xfe00707f
466 #define MATCH_FROUND_H 0x44400053
467 #define MASK_FROUND_H 0xfff0007f
468 #define MATCH_FROUNDNX_H 0x44500053
469 #define MASK_FROUNDNX_H 0xfff0007f
470 #define MATCH_FLTQ_H 0xa4005053
471 #define MASK_FLTQ_H 0xfe00707f
472 #define MATCH_FLEQ_H 0xa4004053
473 #define MASK_FLEQ_H 0xfe00707f
474 #define MATCH_FLI_S 0xf0100053
475 #define MASK_FLI_S 0xfff0707f
476 #define MATCH_FMINM_S 0x28002053
477 #define MASK_FMINM_S 0xfe00707f
478 #define MATCH_FMAXM_S 0x28003053
479 #define MASK_FMAXM_S 0xfe00707f
480 #define MATCH_FROUND_S 0x40400053
481 #define MASK_FROUND_S 0xfff0007f
482 #define MATCH_FROUNDNX_S 0x40500053
483 #define MASK_FROUNDNX_S 0xfff0007f
484 #define MATCH_FLTQ_S 0xa0005053
485 #define MASK_FLTQ_S 0xfe00707f
486 #define MATCH_FLEQ_S 0xa0004053
487 #define MASK_FLEQ_S 0xfe00707f
488 #define MATCH_FLI_D 0xf2100053
489 #define MASK_FLI_D 0xfff0707f
490 #define MATCH_FMINM_D 0x2a002053
491 #define MASK_FMINM_D 0xfe00707f
492 #define MATCH_FMAXM_D 0x2a003053
493 #define MASK_FMAXM_D 0xfe00707f
494 #define MATCH_FROUND_D 0x42400053
495 #define MASK_FROUND_D 0xfff0007f
496 #define MATCH_FROUNDNX_D 0x42500053
497 #define MASK_FROUNDNX_D 0xfff0007f
498 #define MATCH_FLTQ_D 0xa2005053
499 #define MASK_FLTQ_D 0xfe00707f
500 #define MATCH_FLEQ_D 0xa2004053
501 #define MASK_FLEQ_D 0xfe00707f
502 #define MATCH_FLI_Q 0xf6100053
503 #define MASK_FLI_Q 0xfff0707f
504 #define MATCH_FMINM_Q 0x2e002053
505 #define MASK_FMINM_Q 0xfe00707f
506 #define MATCH_FMAXM_Q 0x2e003053
507 #define MASK_FMAXM_Q 0xfe00707f
508 #define MATCH_FROUND_Q 0x46400053
509 #define MASK_FROUND_Q 0xfff0007f
510 #define MATCH_FROUNDNX_Q 0x46500053
511 #define MASK_FROUNDNX_Q 0xfff0007f
512 #define MATCH_FLTQ_Q 0xa6005053
513 #define MASK_FLTQ_Q 0xfe00707f
514 #define MATCH_FLEQ_Q 0xa6004053
515 #define MASK_FLEQ_Q 0xfe00707f
516 #define MATCH_FCVTMOD_W_D 0xc2801053
517 #define MASK_FCVTMOD_W_D 0xfff0707f
518 #define MATCH_FMVH_X_D 0xe2100053
519 #define MASK_FMVH_X_D 0xfff0707f
520 #define MATCH_FMVH_X_Q 0xe6100053
521 #define MASK_FMVH_X_Q 0xfff0707f
522 #define MATCH_FMVP_D_X 0xb2000053
523 #define MASK_FMVP_D_X 0xfe00707f
524 #define MATCH_FMVP_Q_X 0xb6000053
525 #define MASK_FMVP_Q_X 0xfe00707f
526 #define MATCH_CLZ 0x60001013
527 #define MASK_CLZ 0xfff0707f
528 #define MATCH_CTZ 0x60101013
529 #define MASK_CTZ 0xfff0707f
530 #define MATCH_CPOP 0x60201013
531 #define MASK_CPOP 0xfff0707f
532 #define MATCH_MIN 0xa004033
533 #define MASK_MIN 0xfe00707f
534 #define MATCH_MINU 0xa005033
535 #define MASK_MINU 0xfe00707f
536 #define MATCH_MAX 0xa006033
537 #define MASK_MAX 0xfe00707f
538 #define MATCH_MAXU 0xa007033
539 #define MASK_MAXU 0xfe00707f
540 #define MATCH_SEXT_B 0x60401013
541 #define MASK_SEXT_B 0xfff0707f
542 #define MATCH_SEXT_H 0x60501013
543 #define MASK_SEXT_H 0xfff0707f
544 #define MATCH_PACK 0x8004033
545 #define MASK_PACK 0xfe00707f
546 #define MATCH_PACKH 0x8007033
547 #define MASK_PACKH 0xfe00707f
548 #define MATCH_PACKW 0x800403b
549 #define MASK_PACKW 0xfe00707f
550 #define MATCH_ANDN 0x40007033
551 #define MASK_ANDN 0xfe00707f
552 #define MATCH_ORN 0x40006033
553 #define MASK_ORN 0xfe00707f
554 #define MATCH_XNOR 0x40004033
555 #define MASK_XNOR 0xfe00707f
556 #define MATCH_ROL 0x60001033
557 #define MASK_ROL 0xfe00707f
558 #define MATCH_ROR 0x60005033
559 #define MASK_ROR 0xfe00707f
560 #define MATCH_RORI 0x60005013
561 #define MASK_RORI 0xfc00707f
562 #define MATCH_GREVI 0x68005013
563 #define MASK_GREVI 0xfc00707f
564 #define MATCH_GORCI 0x28005013
565 #define MASK_GORCI 0xfc00707f
566 #define MATCH_SHFLI 0x8001013
567 #define MASK_SHFLI 0xfe00707f
568 #define MATCH_UNSHFLI 0x8005013
569 #define MASK_UNSHFLI 0xfe00707f
570 #define MATCH_CLZW 0x6000101b
571 #define MASK_CLZW 0xfff0707f
572 #define MATCH_CTZW 0x6010101b
573 #define MASK_CTZW 0xfff0707f
574 #define MATCH_CPOPW 0x6020101b
575 #define MASK_CPOPW 0xfff0707f
576 #define MATCH_ROLW 0x6000103b
577 #define MASK_ROLW 0xfe00707f
578 #define MATCH_RORW 0x6000503b
579 #define MASK_RORW 0xfe00707f
580 #define MATCH_RORIW 0x6000501b
581 #define MASK_RORIW 0xfe00707f
582 #define MATCH_SH1ADD 0x20002033
583 #define MASK_SH1ADD 0xfe00707f
584 #define MATCH_SH2ADD 0x20004033
585 #define MASK_SH2ADD 0xfe00707f
586 #define MATCH_SH3ADD 0x20006033
587 #define MASK_SH3ADD 0xfe00707f
588 #define MATCH_SH1ADD_UW 0x2000203b
589 #define MASK_SH1ADD_UW 0xfe00707f
590 #define MATCH_SH2ADD_UW 0x2000403b
591 #define MASK_SH2ADD_UW 0xfe00707f
592 #define MATCH_SH3ADD_UW 0x2000603b
593 #define MASK_SH3ADD_UW 0xfe00707f
594 #define MATCH_ADD_UW 0x800003b
595 #define MASK_ADD_UW 0xfe00707f
596 #define MATCH_SLLI_UW 0x800101b
597 #define MASK_SLLI_UW 0xfc00707f
598 #define MATCH_CLMUL 0xa001033
599 #define MASK_CLMUL 0xfe00707f
600 #define MATCH_CLMULH 0xa003033
601 #define MASK_CLMULH 0xfe00707f
602 #define MATCH_CLMULR 0xa002033
603 #define MASK_CLMULR 0xfe00707f
604 #define MATCH_XPERM4 0x28002033
605 #define MASK_XPERM4 0xfe00707f
606 #define MATCH_XPERM8 0x28004033
607 #define MASK_XPERM8 0xfe00707f
608 #define MATCH_BCLRI 0x48001013
609 #define MASK_BCLRI 0xfc00707f
610 #define MATCH_BSETI 0x28001013
611 #define MASK_BSETI 0xfc00707f
612 #define MATCH_BINVI 0x68001013
613 #define MASK_BINVI 0xfc00707f
614 #define MATCH_BEXTI 0x48005013
615 #define MASK_BEXTI 0xfc00707f
616 #define MATCH_BCLR 0x48001033
617 #define MASK_BCLR 0xfe00707f
618 #define MATCH_BSET 0x28001033
619 #define MASK_BSET 0xfe00707f
620 #define MATCH_BINV 0x68001033
621 #define MASK_BINV 0xfe00707f
622 #define MATCH_BEXT 0x48005033
623 #define MASK_BEXT 0xfe00707f
624 #define MATCH_FLW 0x2007
625 #define MASK_FLW 0x707f
626 #define MATCH_FLD 0x3007
627 #define MASK_FLD 0x707f
628 #define MATCH_FLQ 0x4007
629 #define MASK_FLQ 0x707f
630 #define MATCH_FSW 0x2027
631 #define MASK_FSW 0x707f
632 #define MATCH_FSD 0x3027
633 #define MASK_FSD 0x707f
634 #define MATCH_FSQ 0x4027
635 #define MASK_FSQ 0x707f
636 #define MATCH_FMADD_S 0x43
637 #define MASK_FMADD_S 0x600007f
638 #define MATCH_FMSUB_S 0x47
639 #define MASK_FMSUB_S 0x600007f
640 #define MATCH_FNMSUB_S 0x4b
641 #define MASK_FNMSUB_S 0x600007f
642 #define MATCH_FNMADD_S 0x4f
643 #define MASK_FNMADD_S 0x600007f
644 #define MATCH_FMADD_D 0x2000043
645 #define MASK_FMADD_D 0x600007f
646 #define MATCH_FMSUB_D 0x2000047
647 #define MASK_FMSUB_D 0x600007f
648 #define MATCH_FNMSUB_D 0x200004b
649 #define MASK_FNMSUB_D 0x600007f
650 #define MATCH_FNMADD_D 0x200004f
651 #define MASK_FNMADD_D 0x600007f
652 #define MATCH_FMADD_Q 0x6000043
653 #define MASK_FMADD_Q 0x600007f
654 #define MATCH_FMSUB_Q 0x6000047
655 #define MASK_FMSUB_Q 0x600007f
656 #define MATCH_FNMSUB_Q 0x600004b
657 #define MASK_FNMSUB_Q 0x600007f
658 #define MATCH_FNMADD_Q 0x600004f
659 #define MASK_FNMADD_Q 0x600007f
660 #define MATCH_C_ADDI4SPN 0x0
661 #define MASK_C_ADDI4SPN 0xe003
662 #define MATCH_C_FLD 0x2000
663 #define MASK_C_FLD 0xe003
664 #define MATCH_C_LW 0x4000
665 #define MASK_C_LW 0xe003
666 #define MATCH_C_FLW 0x6000
667 #define MASK_C_FLW 0xe003
668 #define MATCH_C_FSD 0xa000
669 #define MASK_C_FSD 0xe003
670 #define MATCH_C_SW 0xc000
671 #define MASK_C_SW 0xe003
672 #define MATCH_C_FSW 0xe000
673 #define MASK_C_FSW 0xe003
674 #define MATCH_C_ADDI 0x1
675 #define MASK_C_ADDI 0xe003
676 #define MATCH_C_JAL 0x2001
677 #define MASK_C_JAL 0xe003
678 #define MATCH_C_LI 0x4001
679 #define MASK_C_LI 0xe003
680 #define MATCH_C_LUI 0x6001
681 #define MASK_C_LUI 0xe003
682 #define MATCH_C_SRLI 0x8001
683 #define MASK_C_SRLI 0xec03
684 #define MATCH_C_SRLI64 0x8001
685 #define MASK_C_SRLI64 0xfc7f
686 #define MATCH_C_SRAI 0x8401
687 #define MASK_C_SRAI 0xec03
688 #define MATCH_C_SRAI64 0x8401
689 #define MASK_C_SRAI64 0xfc7f
690 #define MATCH_C_ANDI 0x8801
691 #define MASK_C_ANDI 0xec03
692 #define MATCH_C_SUB 0x8c01
693 #define MASK_C_SUB 0xfc63
694 #define MATCH_C_XOR 0x8c21
695 #define MASK_C_XOR 0xfc63
696 #define MATCH_C_OR 0x8c41
697 #define MASK_C_OR 0xfc63
698 #define MATCH_C_AND 0x8c61
699 #define MASK_C_AND 0xfc63
700 #define MATCH_C_SUBW 0x9c01
701 #define MASK_C_SUBW 0xfc63
702 #define MATCH_C_ADDW 0x9c21
703 #define MASK_C_ADDW 0xfc63
704 #define MATCH_C_J 0xa001
705 #define MASK_C_J 0xe003
706 #define MATCH_C_BEQZ 0xc001
707 #define MASK_C_BEQZ 0xe003
708 #define MATCH_C_BNEZ 0xe001
709 #define MASK_C_BNEZ 0xe003
710 #define MATCH_C_SLLI 0x2
711 #define MASK_C_SLLI 0xe003
712 #define MATCH_C_SLLI64 0x2
713 #define MASK_C_SLLI64 0xf07f
714 #define MATCH_C_FLDSP 0x2002
715 #define MASK_C_FLDSP 0xe003
716 #define MATCH_C_LWSP 0x4002
717 #define MASK_C_LWSP 0xe003
718 #define MATCH_C_FLWSP 0x6002
719 #define MASK_C_FLWSP 0xe003
720 #define MATCH_C_MV 0x8002
721 #define MASK_C_MV 0xf003
722 #define MATCH_C_ADD 0x9002
723 #define MASK_C_ADD 0xf003
724 #define MATCH_C_FSDSP 0xa002
725 #define MASK_C_FSDSP 0xe003
726 #define MATCH_C_SWSP 0xc002
727 #define MASK_C_SWSP 0xe003
728 #define MATCH_C_FSWSP 0xe002
729 #define MASK_C_FSWSP 0xe003
730 #define MATCH_C_NOP 0x1
731 #define MASK_C_NOP 0xffff
732 #define MATCH_C_ADDI16SP 0x6101
733 #define MASK_C_ADDI16SP 0xef83
734 #define MATCH_C_JR 0x8002
735 #define MASK_C_JR 0xf07f
736 #define MATCH_C_JALR 0x9002
737 #define MASK_C_JALR 0xf07f
738 #define MATCH_C_EBREAK 0x9002
739 #define MASK_C_EBREAK 0xffff
740 #define MATCH_C_LD 0x6000
741 #define MASK_C_LD 0xe003
742 #define MATCH_C_SD 0xe000
743 #define MASK_C_SD 0xe003
744 #define MATCH_C_ADDIW 0x2001
745 #define MASK_C_ADDIW 0xe003
746 #define MATCH_C_LDSP 0x6002
747 #define MASK_C_LDSP 0xe003
748 #define MATCH_C_SDSP 0xe002
749 #define MASK_C_SDSP 0xe003
750 #define MATCH_SM3P0 0x10801013
751 #define MASK_SM3P0 0xfff0707f
752 #define MATCH_SM3P1 0x10901013
753 #define MASK_SM3P1 0xfff0707f
754 #define MATCH_SHA256SUM0 0x10001013
755 #define MASK_SHA256SUM0 0xfff0707f
756 #define MATCH_SHA256SUM1 0x10101013
757 #define MASK_SHA256SUM1 0xfff0707f
758 #define MATCH_SHA256SIG0 0x10201013
759 #define MASK_SHA256SIG0 0xfff0707f
760 #define MATCH_SHA256SIG1 0x10301013
761 #define MASK_SHA256SIG1 0xfff0707f
762 #define MATCH_SHA512SUM0R 0x50000033
763 #define MASK_SHA512SUM0R 0xfe00707f
764 #define MATCH_SHA512SUM1R 0x52000033
765 #define MASK_SHA512SUM1R 0xfe00707f
766 #define MATCH_SHA512SIG0L 0x54000033
767 #define MASK_SHA512SIG0L 0xfe00707f
768 #define MATCH_SHA512SIG0H 0x5c000033
769 #define MASK_SHA512SIG0H 0xfe00707f
770 #define MATCH_SHA512SIG1L 0x56000033
771 #define MASK_SHA512SIG1L 0xfe00707f
772 #define MATCH_SHA512SIG1H 0x5e000033
773 #define MASK_SHA512SIG1H 0xfe00707f
774 #define MATCH_SM4ED 0x30000033
775 #define MASK_SM4ED 0x3e00707f
776 #define MATCH_SM4KS 0x34000033
777 #define MASK_SM4KS 0x3e00707f
778 #define MATCH_AES32ESMI 0x26000033
779 #define MASK_AES32ESMI 0x3e00707f
780 #define MATCH_AES32ESI 0x22000033
781 #define MASK_AES32ESI 0x3e00707f
782 #define MATCH_AES32DSMI 0x2e000033
783 #define MASK_AES32DSMI 0x3e00707f
784 #define MATCH_AES32DSI 0x2a000033
785 #define MASK_AES32DSI 0x3e00707f
786 #define MATCH_SHA512SUM0 0x10401013
787 #define MASK_SHA512SUM0 0xfff0707f
788 #define MATCH_SHA512SUM1 0x10501013
789 #define MASK_SHA512SUM1 0xfff0707f
790 #define MATCH_SHA512SIG0 0x10601013
791 #define MASK_SHA512SIG0 0xfff0707f
792 #define MATCH_SHA512SIG1 0x10701013
793 #define MASK_SHA512SIG1 0xfff0707f
794 #define MATCH_AES64KS1I 0x31001013
795 #define MASK_AES64KS1I 0xff00707f
796 #define MATCH_AES64IM 0x30001013
797 #define MASK_AES64IM 0xfff0707f
798 #define MATCH_AES64KS2 0x7e000033
799 #define MASK_AES64KS2 0xfe00707f
800 #define MATCH_AES64ESM 0x36000033
801 #define MASK_AES64ESM 0xfe00707f
802 #define MATCH_AES64ES 0x32000033
803 #define MASK_AES64ES 0xfe00707f
804 #define MATCH_AES64DSM 0x3e000033
805 #define MASK_AES64DSM 0xfe00707f
806 #define MATCH_AES64DS 0x3a000033
807 #define MASK_AES64DS 0xfe00707f
808 #define MATCH_FADD_H 0x4000053
809 #define MASK_FADD_H 0xfe00007f
810 #define MATCH_FSUB_H 0xc000053
811 #define MASK_FSUB_H 0xfe00007f
812 #define MATCH_FMUL_H 0x14000053
813 #define MASK_FMUL_H 0xfe00007f
814 #define MATCH_FDIV_H 0x1c000053
815 #define MASK_FDIV_H 0xfe00007f
816 #define MATCH_FSGNJ_H 0x24000053
817 #define MASK_FSGNJ_H 0xfe00707f
818 #define MATCH_FSGNJN_H 0x24001053
819 #define MASK_FSGNJN_H 0xfe00707f
820 #define MATCH_FSGNJX_H 0x24002053
821 #define MASK_FSGNJX_H 0xfe00707f
822 #define MATCH_FMIN_H 0x2c000053
823 #define MASK_FMIN_H 0xfe00707f
824 #define MATCH_FMAX_H 0x2c001053
825 #define MASK_FMAX_H 0xfe00707f
826 #define MATCH_FCVT_H_S 0x44000053
827 #define MASK_FCVT_H_S 0xfff0007f
828 #define MATCH_FCVT_S_H 0x40200053
829 #define MASK_FCVT_S_H 0xfff0007f
830 #define MATCH_FSQRT_H 0x5c000053
831 #define MASK_FSQRT_H 0xfff0007f
832 #define MATCH_FLE_H 0xa4000053
833 #define MASK_FLE_H 0xfe00707f
834 #define MATCH_FLT_H 0xa4001053
835 #define MASK_FLT_H 0xfe00707f
836 #define MATCH_FEQ_H 0xa4002053
837 #define MASK_FEQ_H 0xfe00707f
838 #define MATCH_FCVT_W_H 0xc4000053
839 #define MASK_FCVT_W_H 0xfff0007f
840 #define MATCH_FCVT_WU_H 0xc4100053
841 #define MASK_FCVT_WU_H 0xfff0007f
842 #define MATCH_FMV_X_H 0xe4000053
843 #define MASK_FMV_X_H 0xfff0707f
844 #define MATCH_FCLASS_H 0xe4001053
845 #define MASK_FCLASS_H 0xfff0707f
846 #define MATCH_FCVT_H_W 0xd4000053
847 #define MASK_FCVT_H_W 0xfff0007f
848 #define MATCH_FCVT_H_WU 0xd4100053
849 #define MASK_FCVT_H_WU 0xfff0007f
850 #define MATCH_FMV_H_X 0xf4000053
851 #define MASK_FMV_H_X 0xfff0707f
852 #define MATCH_FLH 0x1007
853 #define MASK_FLH 0x707f
854 #define MATCH_FSH 0x1027
855 #define MASK_FSH 0x707f
856 #define MATCH_FMADD_H 0x4000043
857 #define MASK_FMADD_H 0x600007f
858 #define MATCH_FMSUB_H 0x4000047
859 #define MASK_FMSUB_H 0x600007f
860 #define MATCH_FNMSUB_H 0x400004b
861 #define MASK_FNMSUB_H 0x600007f
862 #define MATCH_FNMADD_H 0x400004f
863 #define MASK_FNMADD_H 0x600007f
864 #define MATCH_FCVT_H_D 0x44100053
865 #define MASK_FCVT_H_D 0xfff0007f
866 #define MATCH_FCVT_D_H 0x42200053
867 #define MASK_FCVT_D_H 0xfff0007f
868 #define MATCH_FCVT_H_Q 0x44300053
869 #define MASK_FCVT_H_Q 0xfff0007f
870 #define MATCH_FCVT_Q_H 0x46200053
871 #define MASK_FCVT_Q_H 0xfff0007f
872 #define MATCH_FCVT_L_H 0xc4200053
873 #define MASK_FCVT_L_H 0xfff0007f
874 #define MATCH_FCVT_LU_H 0xc4300053
875 #define MASK_FCVT_LU_H 0xfff0007f
876 #define MATCH_FCVT_H_L 0xd4200053
877 #define MASK_FCVT_H_L 0xfff0007f
878 #define MATCH_FCVT_H_LU 0xd4300053
879 #define MASK_FCVT_H_LU 0xfff0007f
880 #define MATCH_VSETVL 0x80007057
881 #define MASK_VSETVL 0xfe00707f
882 #define MATCH_VSETIVLI 0xc0007057
883 #define MASK_VSETIVLI 0xc000707f
884 #define MATCH_VSETVLI 0x00007057
885 #define MASK_VSETVLI 0x8000707f
886 #define MATCH_VLMV 0x02b00007
887 #define MASK_VLMV 0xfff0707f
888 #define MATCH_VSMV 0x02b00027
889 #define MASK_VSMV 0xfff0707f
890 #define MATCH_VLE8V 0x00000007
891 #define MASK_VLE8V 0xfdf0707f
892 #define MATCH_VLE16V 0x00005007
893 #define MASK_VLE16V 0xfdf0707f
894 #define MATCH_VLE32V 0x00006007
895 #define MASK_VLE32V 0xfdf0707f
896 #define MATCH_VLE64V 0x00007007
897 #define MASK_VLE64V 0xfdf0707f
898 #define MATCH_VSE8V 0x00000027
899 #define MASK_VSE8V 0xfdf0707f
900 #define MATCH_VSE16V 0x00005027
901 #define MASK_VSE16V 0xfdf0707f
902 #define MATCH_VSE32V 0x00006027
903 #define MASK_VSE32V 0xfdf0707f
904 #define MATCH_VSE64V 0x00007027
905 #define MASK_VSE64V 0xfdf0707f
906 #define MATCH_VLSE8V 0x08000007
907 #define MASK_VLSE8V 0xfc00707f
908 #define MATCH_VLSE16V 0x08005007
909 #define MASK_VLSE16V 0xfc00707f
910 #define MATCH_VLSE32V 0x08006007
911 #define MASK_VLSE32V 0xfc00707f
912 #define MATCH_VLSE64V 0x08007007
913 #define MASK_VLSE64V 0xfc00707f
914 #define MATCH_VSSE8V 0x08000027
915 #define MASK_VSSE8V 0xfc00707f
916 #define MATCH_VSSE16V 0x08005027
917 #define MASK_VSSE16V 0xfc00707f
918 #define MATCH_VSSE32V 0x08006027
919 #define MASK_VSSE32V 0xfc00707f
920 #define MATCH_VSSE64V 0x08007027
921 #define MASK_VSSE64V 0xfc00707f
922 #define MATCH_VLOXEI8V 0x0c000007
923 #define MASK_VLOXEI8V 0xfc00707f
924 #define MATCH_VLOXEI16V 0x0c005007
925 #define MASK_VLOXEI16V 0xfc00707f
926 #define MATCH_VLOXEI32V 0x0c006007
927 #define MASK_VLOXEI32V 0xfc00707f
928 #define MATCH_VLOXEI64V 0x0c007007
929 #define MASK_VLOXEI64V 0xfc00707f
930 #define MATCH_VSOXEI8V 0x0c000027
931 #define MASK_VSOXEI8V 0xfc00707f
932 #define MATCH_VSOXEI16V 0x0c005027
933 #define MASK_VSOXEI16V 0xfc00707f
934 #define MATCH_VSOXEI32V 0x0c006027
935 #define MASK_VSOXEI32V 0xfc00707f
936 #define MATCH_VSOXEI64V 0x0c007027
937 #define MASK_VSOXEI64V 0xfc00707f
938 #define MATCH_VLUXEI8V 0x04000007
939 #define MASK_VLUXEI8V 0xfc00707f
940 #define MATCH_VLUXEI16V 0x04005007
941 #define MASK_VLUXEI16V 0xfc00707f
942 #define MATCH_VLUXEI32V 0x04006007
943 #define MASK_VLUXEI32V 0xfc00707f
944 #define MATCH_VLUXEI64V 0x04007007
945 #define MASK_VLUXEI64V 0xfc00707f
946 #define MATCH_VSUXEI8V 0x04000027
947 #define MASK_VSUXEI8V 0xfc00707f
948 #define MATCH_VSUXEI16V 0x04005027
949 #define MASK_VSUXEI16V 0xfc00707f
950 #define MATCH_VSUXEI32V 0x04006027
951 #define MASK_VSUXEI32V 0xfc00707f
952 #define MATCH_VSUXEI64V 0x04007027
953 #define MASK_VSUXEI64V 0xfc00707f
954 #define MATCH_VLE8FFV 0x01000007
955 #define MASK_VLE8FFV 0xfdf0707f
956 #define MATCH_VLE16FFV 0x01005007
957 #define MASK_VLE16FFV 0xfdf0707f
958 #define MATCH_VLE32FFV 0x01006007
959 #define MASK_VLE32FFV 0xfdf0707f
960 #define MATCH_VLE64FFV 0x01007007
961 #define MASK_VLE64FFV 0xfdf0707f
962 #define MATCH_VLSEG2E8V 0x20000007
963 #define MASK_VLSEG2E8V 0xfdf0707f
964 #define MATCH_VSSEG2E8V 0x20000027
965 #define MASK_VSSEG2E8V 0xfdf0707f
966 #define MATCH_VLSEG3E8V 0x40000007
967 #define MASK_VLSEG3E8V 0xfdf0707f
968 #define MATCH_VSSEG3E8V 0x40000027
969 #define MASK_VSSEG3E8V 0xfdf0707f
970 #define MATCH_VLSEG4E8V 0x60000007
971 #define MASK_VLSEG4E8V 0xfdf0707f
972 #define MATCH_VSSEG4E8V 0x60000027
973 #define MASK_VSSEG4E8V 0xfdf0707f
974 #define MATCH_VLSEG5E8V 0x80000007
975 #define MASK_VLSEG5E8V 0xfdf0707f
976 #define MATCH_VSSEG5E8V 0x80000027
977 #define MASK_VSSEG5E8V 0xfdf0707f
978 #define MATCH_VLSEG6E8V 0xa0000007
979 #define MASK_VLSEG6E8V 0xfdf0707f
980 #define MATCH_VSSEG6E8V 0xa0000027
981 #define MASK_VSSEG6E8V 0xfdf0707f
982 #define MATCH_VLSEG7E8V 0xc0000007
983 #define MASK_VLSEG7E8V 0xfdf0707f
984 #define MATCH_VSSEG7E8V 0xc0000027
985 #define MASK_VSSEG7E8V 0xfdf0707f
986 #define MATCH_VLSEG8E8V 0xe0000007
987 #define MASK_VLSEG8E8V 0xfdf0707f
988 #define MATCH_VSSEG8E8V 0xe0000027
989 #define MASK_VSSEG8E8V 0xfdf0707f
990 #define MATCH_VLSEG2E16V 0x20005007
991 #define MASK_VLSEG2E16V 0xfdf0707f
992 #define MATCH_VSSEG2E16V 0x20005027
993 #define MASK_VSSEG2E16V 0xfdf0707f
994 #define MATCH_VLSEG3E16V 0x40005007
995 #define MASK_VLSEG3E16V 0xfdf0707f
996 #define MATCH_VSSEG3E16V 0x40005027
997 #define MASK_VSSEG3E16V 0xfdf0707f
998 #define MATCH_VLSEG4E16V 0x60005007
999 #define MASK_VLSEG4E16V 0xfdf0707f
1000 #define MATCH_VSSEG4E16V 0x60005027
1001 #define MASK_VSSEG4E16V 0xfdf0707f
1002 #define MATCH_VLSEG5E16V 0x80005007
1003 #define MASK_VLSEG5E16V 0xfdf0707f
1004 #define MATCH_VSSEG5E16V 0x80005027
1005 #define MASK_VSSEG5E16V 0xfdf0707f
1006 #define MATCH_VLSEG6E16V 0xa0005007
1007 #define MASK_VLSEG6E16V 0xfdf0707f
1008 #define MATCH_VSSEG6E16V 0xa0005027
1009 #define MASK_VSSEG6E16V 0xfdf0707f
1010 #define MATCH_VLSEG7E16V 0xc0005007
1011 #define MASK_VLSEG7E16V 0xfdf0707f
1012 #define MATCH_VSSEG7E16V 0xc0005027
1013 #define MASK_VSSEG7E16V 0xfdf0707f
1014 #define MATCH_VLSEG8E16V 0xe0005007
1015 #define MASK_VLSEG8E16V 0xfdf0707f
1016 #define MATCH_VSSEG8E16V 0xe0005027
1017 #define MASK_VSSEG8E16V 0xfdf0707f
1018 #define MATCH_VLSEG2E32V 0x20006007
1019 #define MASK_VLSEG2E32V 0xfdf0707f
1020 #define MATCH_VSSEG2E32V 0x20006027
1021 #define MASK_VSSEG2E32V 0xfdf0707f
1022 #define MATCH_VLSEG3E32V 0x40006007
1023 #define MASK_VLSEG3E32V 0xfdf0707f
1024 #define MATCH_VSSEG3E32V 0x40006027
1025 #define MASK_VSSEG3E32V 0xfdf0707f
1026 #define MATCH_VLSEG4E32V 0x60006007
1027 #define MASK_VLSEG4E32V 0xfdf0707f
1028 #define MATCH_VSSEG4E32V 0x60006027
1029 #define MASK_VSSEG4E32V 0xfdf0707f
1030 #define MATCH_VLSEG5E32V 0x80006007
1031 #define MASK_VLSEG5E32V 0xfdf0707f
1032 #define MATCH_VSSEG5E32V 0x80006027
1033 #define MASK_VSSEG5E32V 0xfdf0707f
1034 #define MATCH_VLSEG6E32V 0xa0006007
1035 #define MASK_VLSEG6E32V 0xfdf0707f
1036 #define MATCH_VSSEG6E32V 0xa0006027
1037 #define MASK_VSSEG6E32V 0xfdf0707f
1038 #define MATCH_VLSEG7E32V 0xc0006007
1039 #define MASK_VLSEG7E32V 0xfdf0707f
1040 #define MATCH_VSSEG7E32V 0xc0006027
1041 #define MASK_VSSEG7E32V 0xfdf0707f
1042 #define MATCH_VLSEG8E32V 0xe0006007
1043 #define MASK_VLSEG8E32V 0xfdf0707f
1044 #define MATCH_VSSEG8E32V 0xe0006027
1045 #define MASK_VSSEG8E32V 0xfdf0707f
1046 #define MATCH_VLSEG2E64V 0x20007007
1047 #define MASK_VLSEG2E64V 0xfdf0707f
1048 #define MATCH_VSSEG2E64V 0x20007027
1049 #define MASK_VSSEG2E64V 0xfdf0707f
1050 #define MATCH_VLSEG3E64V 0x40007007
1051 #define MASK_VLSEG3E64V 0xfdf0707f
1052 #define MATCH_VSSEG3E64V 0x40007027
1053 #define MASK_VSSEG3E64V 0xfdf0707f
1054 #define MATCH_VLSEG4E64V 0x60007007
1055 #define MASK_VLSEG4E64V 0xfdf0707f
1056 #define MATCH_VSSEG4E64V 0x60007027
1057 #define MASK_VSSEG4E64V 0xfdf0707f
1058 #define MATCH_VLSEG5E64V 0x80007007
1059 #define MASK_VLSEG5E64V 0xfdf0707f
1060 #define MATCH_VSSEG5E64V 0x80007027
1061 #define MASK_VSSEG5E64V 0xfdf0707f
1062 #define MATCH_VLSEG6E64V 0xa0007007
1063 #define MASK_VLSEG6E64V 0xfdf0707f
1064 #define MATCH_VSSEG6E64V 0xa0007027
1065 #define MASK_VSSEG6E64V 0xfdf0707f
1066 #define MATCH_VLSEG7E64V 0xc0007007
1067 #define MASK_VLSEG7E64V 0xfdf0707f
1068 #define MATCH_VSSEG7E64V 0xc0007027
1069 #define MASK_VSSEG7E64V 0xfdf0707f
1070 #define MATCH_VLSEG8E64V 0xe0007007
1071 #define MASK_VLSEG8E64V 0xfdf0707f
1072 #define MATCH_VSSEG8E64V 0xe0007027
1073 #define MASK_VSSEG8E64V 0xfdf0707f
1074 #define MATCH_VLSSEG2E8V 0x28000007
1075 #define MASK_VLSSEG2E8V 0xfc00707f
1076 #define MATCH_VSSSEG2E8V 0x28000027
1077 #define MASK_VSSSEG2E8V 0xfc00707f
1078 #define MATCH_VLSSEG3E8V 0x48000007
1079 #define MASK_VLSSEG3E8V 0xfc00707f
1080 #define MATCH_VSSSEG3E8V 0x48000027
1081 #define MASK_VSSSEG3E8V 0xfc00707f
1082 #define MATCH_VLSSEG4E8V 0x68000007
1083 #define MASK_VLSSEG4E8V 0xfc00707f
1084 #define MATCH_VSSSEG4E8V 0x68000027
1085 #define MASK_VSSSEG4E8V 0xfc00707f
1086 #define MATCH_VLSSEG5E8V 0x88000007
1087 #define MASK_VLSSEG5E8V 0xfc00707f
1088 #define MATCH_VSSSEG5E8V 0x88000027
1089 #define MASK_VSSSEG5E8V 0xfc00707f
1090 #define MATCH_VLSSEG6E8V 0xa8000007
1091 #define MASK_VLSSEG6E8V 0xfc00707f
1092 #define MATCH_VSSSEG6E8V 0xa8000027
1093 #define MASK_VSSSEG6E8V 0xfc00707f
1094 #define MATCH_VLSSEG7E8V 0xc8000007
1095 #define MASK_VLSSEG7E8V 0xfc00707f
1096 #define MATCH_VSSSEG7E8V 0xc8000027
1097 #define MASK_VSSSEG7E8V 0xfc00707f
1098 #define MATCH_VLSSEG8E8V 0xe8000007
1099 #define MASK_VLSSEG8E8V 0xfc00707f
1100 #define MATCH_VSSSEG8E8V 0xe8000027
1101 #define MASK_VSSSEG8E8V 0xfc00707f
1102 #define MATCH_VLSSEG2E16V 0x28005007
1103 #define MASK_VLSSEG2E16V 0xfc00707f
1104 #define MATCH_VSSSEG2E16V 0x28005027
1105 #define MASK_VSSSEG2E16V 0xfc00707f
1106 #define MATCH_VLSSEG3E16V 0x48005007
1107 #define MASK_VLSSEG3E16V 0xfc00707f
1108 #define MATCH_VSSSEG3E16V 0x48005027
1109 #define MASK_VSSSEG3E16V 0xfc00707f
1110 #define MATCH_VLSSEG4E16V 0x68005007
1111 #define MASK_VLSSEG4E16V 0xfc00707f
1112 #define MATCH_VSSSEG4E16V 0x68005027
1113 #define MASK_VSSSEG4E16V 0xfc00707f
1114 #define MATCH_VLSSEG5E16V 0x88005007
1115 #define MASK_VLSSEG5E16V 0xfc00707f
1116 #define MATCH_VSSSEG5E16V 0x88005027
1117 #define MASK_VSSSEG5E16V 0xfc00707f
1118 #define MATCH_VLSSEG6E16V 0xa8005007
1119 #define MASK_VLSSEG6E16V 0xfc00707f
1120 #define MATCH_VSSSEG6E16V 0xa8005027
1121 #define MASK_VSSSEG6E16V 0xfc00707f
1122 #define MATCH_VLSSEG7E16V 0xc8005007
1123 #define MASK_VLSSEG7E16V 0xfc00707f
1124 #define MATCH_VSSSEG7E16V 0xc8005027
1125 #define MASK_VSSSEG7E16V 0xfc00707f
1126 #define MATCH_VLSSEG8E16V 0xe8005007
1127 #define MASK_VLSSEG8E16V 0xfc00707f
1128 #define MATCH_VSSSEG8E16V 0xe8005027
1129 #define MASK_VSSSEG8E16V 0xfc00707f
1130 #define MATCH_VLSSEG2E32V 0x28006007
1131 #define MASK_VLSSEG2E32V 0xfc00707f
1132 #define MATCH_VSSSEG2E32V 0x28006027
1133 #define MASK_VSSSEG2E32V 0xfc00707f
1134 #define MATCH_VLSSEG3E32V 0x48006007
1135 #define MASK_VLSSEG3E32V 0xfc00707f
1136 #define MATCH_VSSSEG3E32V 0x48006027
1137 #define MASK_VSSSEG3E32V 0xfc00707f
1138 #define MATCH_VLSSEG4E32V 0x68006007
1139 #define MASK_VLSSEG4E32V 0xfc00707f
1140 #define MATCH_VSSSEG4E32V 0x68006027
1141 #define MASK_VSSSEG4E32V 0xfc00707f
1142 #define MATCH_VLSSEG5E32V 0x88006007
1143 #define MASK_VLSSEG5E32V 0xfc00707f
1144 #define MATCH_VSSSEG5E32V 0x88006027
1145 #define MASK_VSSSEG5E32V 0xfc00707f
1146 #define MATCH_VLSSEG6E32V 0xa8006007
1147 #define MASK_VLSSEG6E32V 0xfc00707f
1148 #define MATCH_VSSSEG6E32V 0xa8006027
1149 #define MASK_VSSSEG6E32V 0xfc00707f
1150 #define MATCH_VLSSEG7E32V 0xc8006007
1151 #define MASK_VLSSEG7E32V 0xfc00707f
1152 #define MATCH_VSSSEG7E32V 0xc8006027
1153 #define MASK_VSSSEG7E32V 0xfc00707f
1154 #define MATCH_VLSSEG8E32V 0xe8006007
1155 #define MASK_VLSSEG8E32V 0xfc00707f
1156 #define MATCH_VSSSEG8E32V 0xe8006027
1157 #define MASK_VSSSEG8E32V 0xfc00707f
1158 #define MATCH_VLSSEG2E64V 0x28007007
1159 #define MASK_VLSSEG2E64V 0xfc00707f
1160 #define MATCH_VSSSEG2E64V 0x28007027
1161 #define MASK_VSSSEG2E64V 0xfc00707f
1162 #define MATCH_VLSSEG3E64V 0x48007007
1163 #define MASK_VLSSEG3E64V 0xfc00707f
1164 #define MATCH_VSSSEG3E64V 0x48007027
1165 #define MASK_VSSSEG3E64V 0xfc00707f
1166 #define MATCH_VLSSEG4E64V 0x68007007
1167 #define MASK_VLSSEG4E64V 0xfc00707f
1168 #define MATCH_VSSSEG4E64V 0x68007027
1169 #define MASK_VSSSEG4E64V 0xfc00707f
1170 #define MATCH_VLSSEG5E64V 0x88007007
1171 #define MASK_VLSSEG5E64V 0xfc00707f
1172 #define MATCH_VSSSEG5E64V 0x88007027
1173 #define MASK_VSSSEG5E64V 0xfc00707f
1174 #define MATCH_VLSSEG6E64V 0xa8007007
1175 #define MASK_VLSSEG6E64V 0xfc00707f
1176 #define MATCH_VSSSEG6E64V 0xa8007027
1177 #define MASK_VSSSEG6E64V 0xfc00707f
1178 #define MATCH_VLSSEG7E64V 0xc8007007
1179 #define MASK_VLSSEG7E64V 0xfc00707f
1180 #define MATCH_VSSSEG7E64V 0xc8007027
1181 #define MASK_VSSSEG7E64V 0xfc00707f
1182 #define MATCH_VLSSEG8E64V 0xe8007007
1183 #define MASK_VLSSEG8E64V 0xfc00707f
1184 #define MATCH_VSSSEG8E64V 0xe8007027
1185 #define MASK_VSSSEG8E64V 0xfc00707f
1186 #define MATCH_VLOXSEG2EI8V 0x2c000007
1187 #define MASK_VLOXSEG2EI8V 0xfc00707f
1188 #define MATCH_VSOXSEG2EI8V 0x2c000027
1189 #define MASK_VSOXSEG2EI8V 0xfc00707f
1190 #define MATCH_VLOXSEG3EI8V 0x4c000007
1191 #define MASK_VLOXSEG3EI8V 0xfc00707f
1192 #define MATCH_VSOXSEG3EI8V 0x4c000027
1193 #define MASK_VSOXSEG3EI8V 0xfc00707f
1194 #define MATCH_VLOXSEG4EI8V 0x6c000007
1195 #define MASK_VLOXSEG4EI8V 0xfc00707f
1196 #define MATCH_VSOXSEG4EI8V 0x6c000027
1197 #define MASK_VSOXSEG4EI8V 0xfc00707f
1198 #define MATCH_VLOXSEG5EI8V 0x8c000007
1199 #define MASK_VLOXSEG5EI8V 0xfc00707f
1200 #define MATCH_VSOXSEG5EI8V 0x8c000027
1201 #define MASK_VSOXSEG5EI8V 0xfc00707f
1202 #define MATCH_VLOXSEG6EI8V 0xac000007
1203 #define MASK_VLOXSEG6EI8V 0xfc00707f
1204 #define MATCH_VSOXSEG6EI8V 0xac000027
1205 #define MASK_VSOXSEG6EI8V 0xfc00707f
1206 #define MATCH_VLOXSEG7EI8V 0xcc000007
1207 #define MASK_VLOXSEG7EI8V 0xfc00707f
1208 #define MATCH_VSOXSEG7EI8V 0xcc000027
1209 #define MASK_VSOXSEG7EI8V 0xfc00707f
1210 #define MATCH_VLOXSEG8EI8V 0xec000007
1211 #define MASK_VLOXSEG8EI8V 0xfc00707f
1212 #define MATCH_VSOXSEG8EI8V 0xec000027
1213 #define MASK_VSOXSEG8EI8V 0xfc00707f
1214 #define MATCH_VLUXSEG2EI8V 0x24000007
1215 #define MASK_VLUXSEG2EI8V 0xfc00707f
1216 #define MATCH_VSUXSEG2EI8V 0x24000027
1217 #define MASK_VSUXSEG2EI8V 0xfc00707f
1218 #define MATCH_VLUXSEG3EI8V 0x44000007
1219 #define MASK_VLUXSEG3EI8V 0xfc00707f
1220 #define MATCH_VSUXSEG3EI8V 0x44000027
1221 #define MASK_VSUXSEG3EI8V 0xfc00707f
1222 #define MATCH_VLUXSEG4EI8V 0x64000007
1223 #define MASK_VLUXSEG4EI8V 0xfc00707f
1224 #define MATCH_VSUXSEG4EI8V 0x64000027
1225 #define MASK_VSUXSEG4EI8V 0xfc00707f
1226 #define MATCH_VLUXSEG5EI8V 0x84000007
1227 #define MASK_VLUXSEG5EI8V 0xfc00707f
1228 #define MATCH_VSUXSEG5EI8V 0x84000027
1229 #define MASK_VSUXSEG5EI8V 0xfc00707f
1230 #define MATCH_VLUXSEG6EI8V 0xa4000007
1231 #define MASK_VLUXSEG6EI8V 0xfc00707f
1232 #define MATCH_VSUXSEG6EI8V 0xa4000027
1233 #define MASK_VSUXSEG6EI8V 0xfc00707f
1234 #define MATCH_VLUXSEG7EI8V 0xc4000007
1235 #define MASK_VLUXSEG7EI8V 0xfc00707f
1236 #define MATCH_VSUXSEG7EI8V 0xc4000027
1237 #define MASK_VSUXSEG7EI8V 0xfc00707f
1238 #define MATCH_VLUXSEG8EI8V 0xe4000007
1239 #define MASK_VLUXSEG8EI8V 0xfc00707f
1240 #define MATCH_VSUXSEG8EI8V 0xe4000027
1241 #define MASK_VSUXSEG8EI8V 0xfc00707f
1242 #define MATCH_VLOXSEG2EI16V 0x2c005007
1243 #define MASK_VLOXSEG2EI16V 0xfc00707f
1244 #define MATCH_VSOXSEG2EI16V 0x2c005027
1245 #define MASK_VSOXSEG2EI16V 0xfc00707f
1246 #define MATCH_VLOXSEG3EI16V 0x4c005007
1247 #define MASK_VLOXSEG3EI16V 0xfc00707f
1248 #define MATCH_VSOXSEG3EI16V 0x4c005027
1249 #define MASK_VSOXSEG3EI16V 0xfc00707f
1250 #define MATCH_VLOXSEG4EI16V 0x6c005007
1251 #define MASK_VLOXSEG4EI16V 0xfc00707f
1252 #define MATCH_VSOXSEG4EI16V 0x6c005027
1253 #define MASK_VSOXSEG4EI16V 0xfc00707f
1254 #define MATCH_VLOXSEG5EI16V 0x8c005007
1255 #define MASK_VLOXSEG5EI16V 0xfc00707f
1256 #define MATCH_VSOXSEG5EI16V 0x8c005027
1257 #define MASK_VSOXSEG5EI16V 0xfc00707f
1258 #define MATCH_VLOXSEG6EI16V 0xac005007
1259 #define MASK_VLOXSEG6EI16V 0xfc00707f
1260 #define MATCH_VSOXSEG6EI16V 0xac005027
1261 #define MASK_VSOXSEG6EI16V 0xfc00707f
1262 #define MATCH_VLOXSEG7EI16V 0xcc005007
1263 #define MASK_VLOXSEG7EI16V 0xfc00707f
1264 #define MATCH_VSOXSEG7EI16V 0xcc005027
1265 #define MASK_VSOXSEG7EI16V 0xfc00707f
1266 #define MATCH_VLOXSEG8EI16V 0xec005007
1267 #define MASK_VLOXSEG8EI16V 0xfc00707f
1268 #define MATCH_VSOXSEG8EI16V 0xec005027
1269 #define MASK_VSOXSEG8EI16V 0xfc00707f
1270 #define MATCH_VLUXSEG2EI16V 0x24005007
1271 #define MASK_VLUXSEG2EI16V 0xfc00707f
1272 #define MATCH_VSUXSEG2EI16V 0x24005027
1273 #define MASK_VSUXSEG2EI16V 0xfc00707f
1274 #define MATCH_VLUXSEG3EI16V 0x44005007
1275 #define MASK_VLUXSEG3EI16V 0xfc00707f
1276 #define MATCH_VSUXSEG3EI16V 0x44005027
1277 #define MASK_VSUXSEG3EI16V 0xfc00707f
1278 #define MATCH_VLUXSEG4EI16V 0x64005007
1279 #define MASK_VLUXSEG4EI16V 0xfc00707f
1280 #define MATCH_VSUXSEG4EI16V 0x64005027
1281 #define MASK_VSUXSEG4EI16V 0xfc00707f
1282 #define MATCH_VLUXSEG5EI16V 0x84005007
1283 #define MASK_VLUXSEG5EI16V 0xfc00707f
1284 #define MATCH_VSUXSEG5EI16V 0x84005027
1285 #define MASK_VSUXSEG5EI16V 0xfc00707f
1286 #define MATCH_VLUXSEG6EI16V 0xa4005007
1287 #define MASK_VLUXSEG6EI16V 0xfc00707f
1288 #define MATCH_VSUXSEG6EI16V 0xa4005027
1289 #define MASK_VSUXSEG6EI16V 0xfc00707f
1290 #define MATCH_VLUXSEG7EI16V 0xc4005007
1291 #define MASK_VLUXSEG7EI16V 0xfc00707f
1292 #define MATCH_VSUXSEG7EI16V 0xc4005027
1293 #define MASK_VSUXSEG7EI16V 0xfc00707f
1294 #define MATCH_VLUXSEG8EI16V 0xe4005007
1295 #define MASK_VLUXSEG8EI16V 0xfc00707f
1296 #define MATCH_VSUXSEG8EI16V 0xe4005027
1297 #define MASK_VSUXSEG8EI16V 0xfc00707f
1298 #define MATCH_VLOXSEG2EI32V 0x2c006007
1299 #define MASK_VLOXSEG2EI32V 0xfc00707f
1300 #define MATCH_VSOXSEG2EI32V 0x2c006027
1301 #define MASK_VSOXSEG2EI32V 0xfc00707f
1302 #define MATCH_VLOXSEG3EI32V 0x4c006007
1303 #define MASK_VLOXSEG3EI32V 0xfc00707f
1304 #define MATCH_VSOXSEG3EI32V 0x4c006027
1305 #define MASK_VSOXSEG3EI32V 0xfc00707f
1306 #define MATCH_VLOXSEG4EI32V 0x6c006007
1307 #define MASK_VLOXSEG4EI32V 0xfc00707f
1308 #define MATCH_VSOXSEG4EI32V 0x6c006027
1309 #define MASK_VSOXSEG4EI32V 0xfc00707f
1310 #define MATCH_VLOXSEG5EI32V 0x8c006007
1311 #define MASK_VLOXSEG5EI32V 0xfc00707f
1312 #define MATCH_VSOXSEG5EI32V 0x8c006027
1313 #define MASK_VSOXSEG5EI32V 0xfc00707f
1314 #define MATCH_VLOXSEG6EI32V 0xac006007
1315 #define MASK_VLOXSEG6EI32V 0xfc00707f
1316 #define MATCH_VSOXSEG6EI32V 0xac006027
1317 #define MASK_VSOXSEG6EI32V 0xfc00707f
1318 #define MATCH_VLOXSEG7EI32V 0xcc006007
1319 #define MASK_VLOXSEG7EI32V 0xfc00707f
1320 #define MATCH_VSOXSEG7EI32V 0xcc006027
1321 #define MASK_VSOXSEG7EI32V 0xfc00707f
1322 #define MATCH_VLOXSEG8EI32V 0xec006007
1323 #define MASK_VLOXSEG8EI32V 0xfc00707f
1324 #define MATCH_VSOXSEG8EI32V 0xec006027
1325 #define MASK_VSOXSEG8EI32V 0xfc00707f
1326 #define MATCH_VLUXSEG2EI32V 0x24006007
1327 #define MASK_VLUXSEG2EI32V 0xfc00707f
1328 #define MATCH_VSUXSEG2EI32V 0x24006027
1329 #define MASK_VSUXSEG2EI32V 0xfc00707f
1330 #define MATCH_VLUXSEG3EI32V 0x44006007
1331 #define MASK_VLUXSEG3EI32V 0xfc00707f
1332 #define MATCH_VSUXSEG3EI32V 0x44006027
1333 #define MASK_VSUXSEG3EI32V 0xfc00707f
1334 #define MATCH_VLUXSEG4EI32V 0x64006007
1335 #define MASK_VLUXSEG4EI32V 0xfc00707f
1336 #define MATCH_VSUXSEG4EI32V 0x64006027
1337 #define MASK_VSUXSEG4EI32V 0xfc00707f
1338 #define MATCH_VLUXSEG5EI32V 0x84006007
1339 #define MASK_VLUXSEG5EI32V 0xfc00707f
1340 #define MATCH_VSUXSEG5EI32V 0x84006027
1341 #define MASK_VSUXSEG5EI32V 0xfc00707f
1342 #define MATCH_VLUXSEG6EI32V 0xa4006007
1343 #define MASK_VLUXSEG6EI32V 0xfc00707f
1344 #define MATCH_VSUXSEG6EI32V 0xa4006027
1345 #define MASK_VSUXSEG6EI32V 0xfc00707f
1346 #define MATCH_VLUXSEG7EI32V 0xc4006007
1347 #define MASK_VLUXSEG7EI32V 0xfc00707f
1348 #define MATCH_VSUXSEG7EI32V 0xc4006027
1349 #define MASK_VSUXSEG7EI32V 0xfc00707f
1350 #define MATCH_VLUXSEG8EI32V 0xe4006007
1351 #define MASK_VLUXSEG8EI32V 0xfc00707f
1352 #define MATCH_VSUXSEG8EI32V 0xe4006027
1353 #define MASK_VSUXSEG8EI32V 0xfc00707f
1354 #define MATCH_VLOXSEG2EI64V 0x2c007007
1355 #define MASK_VLOXSEG2EI64V 0xfc00707f
1356 #define MATCH_VSOXSEG2EI64V 0x2c007027
1357 #define MASK_VSOXSEG2EI64V 0xfc00707f
1358 #define MATCH_VLOXSEG3EI64V 0x4c007007
1359 #define MASK_VLOXSEG3EI64V 0xfc00707f
1360 #define MATCH_VSOXSEG3EI64V 0x4c007027
1361 #define MASK_VSOXSEG3EI64V 0xfc00707f
1362 #define MATCH_VLOXSEG4EI64V 0x6c007007
1363 #define MASK_VLOXSEG4EI64V 0xfc00707f
1364 #define MATCH_VSOXSEG4EI64V 0x6c007027
1365 #define MASK_VSOXSEG4EI64V 0xfc00707f
1366 #define MATCH_VLOXSEG5EI64V 0x8c007007
1367 #define MASK_VLOXSEG5EI64V 0xfc00707f
1368 #define MATCH_VSOXSEG5EI64V 0x8c007027
1369 #define MASK_VSOXSEG5EI64V 0xfc00707f
1370 #define MATCH_VLOXSEG6EI64V 0xac007007
1371 #define MASK_VLOXSEG6EI64V 0xfc00707f
1372 #define MATCH_VSOXSEG6EI64V 0xac007027
1373 #define MASK_VSOXSEG6EI64V 0xfc00707f
1374 #define MATCH_VLOXSEG7EI64V 0xcc007007
1375 #define MASK_VLOXSEG7EI64V 0xfc00707f
1376 #define MATCH_VSOXSEG7EI64V 0xcc007027
1377 #define MASK_VSOXSEG7EI64V 0xfc00707f
1378 #define MATCH_VLOXSEG8EI64V 0xec007007
1379 #define MASK_VLOXSEG8EI64V 0xfc00707f
1380 #define MATCH_VSOXSEG8EI64V 0xec007027
1381 #define MASK_VSOXSEG8EI64V 0xfc00707f
1382 #define MATCH_VLUXSEG2EI64V 0x24007007
1383 #define MASK_VLUXSEG2EI64V 0xfc00707f
1384 #define MATCH_VSUXSEG2EI64V 0x24007027
1385 #define MASK_VSUXSEG2EI64V 0xfc00707f
1386 #define MATCH_VLUXSEG3EI64V 0x44007007
1387 #define MASK_VLUXSEG3EI64V 0xfc00707f
1388 #define MATCH_VSUXSEG3EI64V 0x44007027
1389 #define MASK_VSUXSEG3EI64V 0xfc00707f
1390 #define MATCH_VLUXSEG4EI64V 0x64007007
1391 #define MASK_VLUXSEG4EI64V 0xfc00707f
1392 #define MATCH_VSUXSEG4EI64V 0x64007027
1393 #define MASK_VSUXSEG4EI64V 0xfc00707f
1394 #define MATCH_VLUXSEG5EI64V 0x84007007
1395 #define MASK_VLUXSEG5EI64V 0xfc00707f
1396 #define MATCH_VSUXSEG5EI64V 0x84007027
1397 #define MASK_VSUXSEG5EI64V 0xfc00707f
1398 #define MATCH_VLUXSEG6EI64V 0xa4007007
1399 #define MASK_VLUXSEG6EI64V 0xfc00707f
1400 #define MATCH_VSUXSEG6EI64V 0xa4007027
1401 #define MASK_VSUXSEG6EI64V 0xfc00707f
1402 #define MATCH_VLUXSEG7EI64V 0xc4007007
1403 #define MASK_VLUXSEG7EI64V 0xfc00707f
1404 #define MATCH_VSUXSEG7EI64V 0xc4007027
1405 #define MASK_VSUXSEG7EI64V 0xfc00707f
1406 #define MATCH_VLUXSEG8EI64V 0xe4007007
1407 #define MASK_VLUXSEG8EI64V 0xfc00707f
1408 #define MATCH_VSUXSEG8EI64V 0xe4007027
1409 #define MASK_VSUXSEG8EI64V 0xfc00707f
1410 #define MATCH_VLSEG2E8FFV 0x21000007
1411 #define MASK_VLSEG2E8FFV 0xfdf0707f
1412 #define MATCH_VLSEG3E8FFV 0x41000007
1413 #define MASK_VLSEG3E8FFV 0xfdf0707f
1414 #define MATCH_VLSEG4E8FFV 0x61000007
1415 #define MASK_VLSEG4E8FFV 0xfdf0707f
1416 #define MATCH_VLSEG5E8FFV 0x81000007
1417 #define MASK_VLSEG5E8FFV 0xfdf0707f
1418 #define MATCH_VLSEG6E8FFV 0xa1000007
1419 #define MASK_VLSEG6E8FFV 0xfdf0707f
1420 #define MATCH_VLSEG7E8FFV 0xc1000007
1421 #define MASK_VLSEG7E8FFV 0xfdf0707f
1422 #define MATCH_VLSEG8E8FFV 0xe1000007
1423 #define MASK_VLSEG8E8FFV 0xfdf0707f
1424 #define MATCH_VLSEG2E16FFV 0x21005007
1425 #define MASK_VLSEG2E16FFV 0xfdf0707f
1426 #define MATCH_VLSEG3E16FFV 0x41005007
1427 #define MASK_VLSEG3E16FFV 0xfdf0707f
1428 #define MATCH_VLSEG4E16FFV 0x61005007
1429 #define MASK_VLSEG4E16FFV 0xfdf0707f
1430 #define MATCH_VLSEG5E16FFV 0x81005007
1431 #define MASK_VLSEG5E16FFV 0xfdf0707f
1432 #define MATCH_VLSEG6E16FFV 0xa1005007
1433 #define MASK_VLSEG6E16FFV 0xfdf0707f
1434 #define MATCH_VLSEG7E16FFV 0xc1005007
1435 #define MASK_VLSEG7E16FFV 0xfdf0707f
1436 #define MATCH_VLSEG8E16FFV 0xe1005007
1437 #define MASK_VLSEG8E16FFV 0xfdf0707f
1438 #define MATCH_VLSEG2E32FFV 0x21006007
1439 #define MASK_VLSEG2E32FFV 0xfdf0707f
1440 #define MATCH_VLSEG3E32FFV 0x41006007
1441 #define MASK_VLSEG3E32FFV 0xfdf0707f
1442 #define MATCH_VLSEG4E32FFV 0x61006007
1443 #define MASK_VLSEG4E32FFV 0xfdf0707f
1444 #define MATCH_VLSEG5E32FFV 0x81006007
1445 #define MASK_VLSEG5E32FFV 0xfdf0707f
1446 #define MATCH_VLSEG6E32FFV 0xa1006007
1447 #define MASK_VLSEG6E32FFV 0xfdf0707f
1448 #define MATCH_VLSEG7E32FFV 0xc1006007
1449 #define MASK_VLSEG7E32FFV 0xfdf0707f
1450 #define MATCH_VLSEG8E32FFV 0xe1006007
1451 #define MASK_VLSEG8E32FFV 0xfdf0707f
1452 #define MATCH_VLSEG2E64FFV 0x21007007
1453 #define MASK_VLSEG2E64FFV 0xfdf0707f
1454 #define MATCH_VLSEG3E64FFV 0x41007007
1455 #define MASK_VLSEG3E64FFV 0xfdf0707f
1456 #define MATCH_VLSEG4E64FFV 0x61007007
1457 #define MASK_VLSEG4E64FFV 0xfdf0707f
1458 #define MATCH_VLSEG5E64FFV 0x81007007
1459 #define MASK_VLSEG5E64FFV 0xfdf0707f
1460 #define MATCH_VLSEG6E64FFV 0xa1007007
1461 #define MASK_VLSEG6E64FFV 0xfdf0707f
1462 #define MATCH_VLSEG7E64FFV 0xc1007007
1463 #define MASK_VLSEG7E64FFV 0xfdf0707f
1464 #define MATCH_VLSEG8E64FFV 0xe1007007
1465 #define MASK_VLSEG8E64FFV 0xfdf0707f
1466 #define MATCH_VL1RE8V 0x02800007
1467 #define MASK_VL1RE8V 0xfff0707f
1468 #define MATCH_VL1RE16V 0x02805007
1469 #define MASK_VL1RE16V 0xfff0707f
1470 #define MATCH_VL1RE32V 0x02806007
1471 #define MASK_VL1RE32V 0xfff0707f
1472 #define MATCH_VL1RE64V 0x02807007
1473 #define MASK_VL1RE64V 0xfff0707f
1474 #define MATCH_VL2RE8V 0x22800007
1475 #define MASK_VL2RE8V 0xfff0707f
1476 #define MATCH_VL2RE16V 0x22805007
1477 #define MASK_VL2RE16V 0xfff0707f
1478 #define MATCH_VL2RE32V 0x22806007
1479 #define MASK_VL2RE32V 0xfff0707f
1480 #define MATCH_VL2RE64V 0x22807007
1481 #define MASK_VL2RE64V 0xfff0707f
1482 #define MATCH_VL4RE8V 0x62800007
1483 #define MASK_VL4RE8V 0xfff0707f
1484 #define MATCH_VL4RE16V 0x62805007
1485 #define MASK_VL4RE16V 0xfff0707f
1486 #define MATCH_VL4RE32V 0x62806007
1487 #define MASK_VL4RE32V 0xfff0707f
1488 #define MATCH_VL4RE64V 0x62807007
1489 #define MASK_VL4RE64V 0xfff0707f
1490 #define MATCH_VL8RE8V 0xe2800007
1491 #define MASK_VL8RE8V 0xfff0707f
1492 #define MATCH_VL8RE16V 0xe2805007
1493 #define MASK_VL8RE16V 0xfff0707f
1494 #define MATCH_VL8RE32V 0xe2806007
1495 #define MASK_VL8RE32V 0xfff0707f
1496 #define MATCH_VL8RE64V 0xe2807007
1497 #define MASK_VL8RE64V 0xfff0707f
1498 #define MATCH_VS1RV 0x02800027
1499 #define MASK_VS1RV 0xfff0707f
1500 #define MATCH_VS2RV 0x22800027
1501 #define MASK_VS2RV 0xfff0707f
1502 #define MATCH_VS4RV 0x62800027
1503 #define MASK_VS4RV 0xfff0707f
1504 #define MATCH_VS8RV 0xe2800027
1505 #define MASK_VS8RV 0xfff0707f
1506 #define MATCH_VADDVV 0x00000057
1507 #define MASK_VADDVV 0xfc00707f
1508 #define MATCH_VADDVX 0x00004057
1509 #define MASK_VADDVX 0xfc00707f
1510 #define MATCH_VADDVI 0x00003057
1511 #define MASK_VADDVI 0xfc00707f
1512 #define MATCH_VSUBVV 0x08000057
1513 #define MASK_VSUBVV 0xfc00707f
1514 #define MATCH_VSUBVX 0x08004057
1515 #define MASK_VSUBVX 0xfc00707f
1516 #define MATCH_VRSUBVX 0x0c004057
1517 #define MASK_VRSUBVX 0xfc00707f
1518 #define MATCH_VRSUBVI 0x0c003057
1519 #define MASK_VRSUBVI 0xfc00707f
1520 #define MATCH_VWCVTXXV 0xc4006057
1521 #define MASK_VWCVTXXV 0xfc0ff07f
1522 #define MATCH_VWCVTUXXV 0xc0006057
1523 #define MASK_VWCVTUXXV 0xfc0ff07f
1524 #define MATCH_VWADDVV 0xc4002057
1525 #define MASK_VWADDVV 0xfc00707f
1526 #define MATCH_VWADDVX 0xc4006057
1527 #define MASK_VWADDVX 0xfc00707f
1528 #define MATCH_VWSUBVV 0xcc002057
1529 #define MASK_VWSUBVV 0xfc00707f
1530 #define MATCH_VWSUBVX 0xcc006057
1531 #define MASK_VWSUBVX 0xfc00707f
1532 #define MATCH_VWADDWV 0xd4002057
1533 #define MASK_VWADDWV 0xfc00707f
1534 #define MATCH_VWADDWX 0xd4006057
1535 #define MASK_VWADDWX 0xfc00707f
1536 #define MATCH_VWSUBWV 0xdc002057
1537 #define MASK_VWSUBWV 0xfc00707f
1538 #define MATCH_VWSUBWX 0xdc006057
1539 #define MASK_VWSUBWX 0xfc00707f
1540 #define MATCH_VWADDUVV 0xc0002057
1541 #define MASK_VWADDUVV 0xfc00707f
1542 #define MATCH_VWADDUVX 0xc0006057
1543 #define MASK_VWADDUVX 0xfc00707f
1544 #define MATCH_VWSUBUVV 0xc8002057
1545 #define MASK_VWSUBUVV 0xfc00707f
1546 #define MATCH_VWSUBUVX 0xc8006057
1547 #define MASK_VWSUBUVX 0xfc00707f
1548 #define MATCH_VWADDUWV 0xd0002057
1549 #define MASK_VWADDUWV 0xfc00707f
1550 #define MATCH_VWADDUWX 0xd0006057
1551 #define MASK_VWADDUWX 0xfc00707f
1552 #define MATCH_VWSUBUWV 0xd8002057
1553 #define MASK_VWSUBUWV 0xfc00707f
1554 #define MATCH_VWSUBUWX 0xd8006057
1555 #define MASK_VWSUBUWX 0xfc00707f
1556 #define MATCH_VZEXT_VF8 0x48012057
1557 #define MASK_VZEXT_VF8 0xfc0ff07f
1558 #define MATCH_VSEXT_VF8 0x4801a057
1559 #define MASK_VSEXT_VF8 0xfc0ff07f
1560 #define MATCH_VZEXT_VF4 0x48022057
1561 #define MASK_VZEXT_VF4 0xfc0ff07f
1562 #define MATCH_VSEXT_VF4 0x4802a057
1563 #define MASK_VSEXT_VF4 0xfc0ff07f
1564 #define MATCH_VZEXT_VF2 0x48032057
1565 #define MASK_VZEXT_VF2 0xfc0ff07f
1566 #define MATCH_VSEXT_VF2 0x4803a057
1567 #define MASK_VSEXT_VF2 0xfc0ff07f
1568 #define MATCH_VADCVVM 0x40000057
1569 #define MASK_VADCVVM 0xfe00707f
1570 #define MATCH_VADCVXM 0x40004057
1571 #define MASK_VADCVXM 0xfe00707f
1572 #define MATCH_VADCVIM 0x40003057
1573 #define MASK_VADCVIM 0xfe00707f
1574 #define MATCH_VMADCVVM 0x44000057
1575 #define MASK_VMADCVVM 0xfe00707f
1576 #define MATCH_VMADCVXM 0x44004057
1577 #define MASK_VMADCVXM 0xfe00707f
1578 #define MATCH_VMADCVIM 0x44003057
1579 #define MASK_VMADCVIM 0xfe00707f
1580 #define MATCH_VMADCVV 0x46000057
1581 #define MASK_VMADCVV 0xfe00707f
1582 #define MATCH_VMADCVX 0x46004057
1583 #define MASK_VMADCVX 0xfe00707f
1584 #define MATCH_VMADCVI 0x46003057
1585 #define MASK_VMADCVI 0xfe00707f
1586 #define MATCH_VSBCVVM 0x48000057
1587 #define MASK_VSBCVVM 0xfe00707f
1588 #define MATCH_VSBCVXM 0x48004057
1589 #define MASK_VSBCVXM 0xfe00707f
1590 #define MATCH_VMSBCVVM 0x4c000057
1591 #define MASK_VMSBCVVM 0xfe00707f
1592 #define MATCH_VMSBCVXM 0x4c004057
1593 #define MASK_VMSBCVXM 0xfe00707f
1594 #define MATCH_VMSBCVV 0x4e000057
1595 #define MASK_VMSBCVV 0xfe00707f
1596 #define MATCH_VMSBCVX 0x4e004057
1597 #define MASK_VMSBCVX 0xfe00707f
1598 #define MATCH_VNOTV 0x2c0fb057
1599 #define MASK_VNOTV 0xfc0ff07f
1600 #define MATCH_VANDVV 0x24000057
1601 #define MASK_VANDVV 0xfc00707f
1602 #define MATCH_VANDVX 0x24004057
1603 #define MASK_VANDVX 0xfc00707f
1604 #define MATCH_VANDVI 0x24003057
1605 #define MASK_VANDVI 0xfc00707f
1606 #define MATCH_VORVV 0x28000057
1607 #define MASK_VORVV 0xfc00707f
1608 #define MATCH_VORVX 0x28004057
1609 #define MASK_VORVX 0xfc00707f
1610 #define MATCH_VORVI 0x28003057
1611 #define MASK_VORVI 0xfc00707f
1612 #define MATCH_VXORVV 0x2c000057
1613 #define MASK_VXORVV 0xfc00707f
1614 #define MATCH_VXORVX 0x2c004057
1615 #define MASK_VXORVX 0xfc00707f
1616 #define MATCH_VXORVI 0x2c003057
1617 #define MASK_VXORVI 0xfc00707f
1618 #define MATCH_VSLLVV 0x94000057
1619 #define MASK_VSLLVV 0xfc00707f
1620 #define MATCH_VSLLVX 0x94004057
1621 #define MASK_VSLLVX 0xfc00707f
1622 #define MATCH_VSLLVI 0x94003057
1623 #define MASK_VSLLVI 0xfc00707f
1624 #define MATCH_VSRLVV 0xa0000057
1625 #define MASK_VSRLVV 0xfc00707f
1626 #define MATCH_VSRLVX 0xa0004057
1627 #define MASK_VSRLVX 0xfc00707f
1628 #define MATCH_VSRLVI 0xa0003057
1629 #define MASK_VSRLVI 0xfc00707f
1630 #define MATCH_VSRAVV 0xa4000057
1631 #define MASK_VSRAVV 0xfc00707f
1632 #define MATCH_VSRAVX 0xa4004057
1633 #define MASK_VSRAVX 0xfc00707f
1634 #define MATCH_VSRAVI 0xa4003057
1635 #define MASK_VSRAVI 0xfc00707f
1636 #define MATCH_VNCVTXXW 0xb0004057
1637 #define MASK_VNCVTXXW 0xfc0ff07f
1638 #define MATCH_VNSRLWV 0xb0000057
1639 #define MASK_VNSRLWV 0xfc00707f
1640 #define MATCH_VNSRLWX 0xb0004057
1641 #define MASK_VNSRLWX 0xfc00707f
1642 #define MATCH_VNSRLWI 0xb0003057
1643 #define MASK_VNSRLWI 0xfc00707f
1644 #define MATCH_VNSRAWV 0xb4000057
1645 #define MASK_VNSRAWV 0xfc00707f
1646 #define MATCH_VNSRAWX 0xb4004057
1647 #define MASK_VNSRAWX 0xfc00707f
1648 #define MATCH_VNSRAWI 0xb4003057
1649 #define MASK_VNSRAWI 0xfc00707f
1650 #define MATCH_VMSEQVV 0x60000057
1651 #define MASK_VMSEQVV 0xfc00707f
1652 #define MATCH_VMSEQVX 0x60004057
1653 #define MASK_VMSEQVX 0xfc00707f
1654 #define MATCH_VMSEQVI 0x60003057
1655 #define MASK_VMSEQVI 0xfc00707f
1656 #define MATCH_VMSNEVV 0x64000057
1657 #define MASK_VMSNEVV 0xfc00707f
1658 #define MATCH_VMSNEVX 0x64004057
1659 #define MASK_VMSNEVX 0xfc00707f
1660 #define MATCH_VMSNEVI 0x64003057
1661 #define MASK_VMSNEVI 0xfc00707f
1662 #define MATCH_VMSLTVV 0x6c000057
1663 #define MASK_VMSLTVV 0xfc00707f
1664 #define MATCH_VMSLTVX 0x6c004057
1665 #define MASK_VMSLTVX 0xfc00707f
1666 #define MATCH_VMSLTUVV 0x68000057
1667 #define MASK_VMSLTUVV 0xfc00707f
1668 #define MATCH_VMSLTUVX 0x68004057
1669 #define MASK_VMSLTUVX 0xfc00707f
1670 #define MATCH_VMSLEVV 0x74000057
1671 #define MASK_VMSLEVV 0xfc00707f
1672 #define MATCH_VMSLEVX 0x74004057
1673 #define MASK_VMSLEVX 0xfc00707f
1674 #define MATCH_VMSLEVI 0x74003057
1675 #define MASK_VMSLEVI 0xfc00707f
1676 #define MATCH_VMSLEUVV 0x70000057
1677 #define MASK_VMSLEUVV 0xfc00707f
1678 #define MATCH_VMSLEUVX 0x70004057
1679 #define MASK_VMSLEUVX 0xfc00707f
1680 #define MATCH_VMSLEUVI 0x70003057
1681 #define MASK_VMSLEUVI 0xfc00707f
1682 #define MATCH_VMSGTVX 0x7c004057
1683 #define MASK_VMSGTVX 0xfc00707f
1684 #define MATCH_VMSGTVI 0x7c003057
1685 #define MASK_VMSGTVI 0xfc00707f
1686 #define MATCH_VMSGTUVX 0x78004057
1687 #define MASK_VMSGTUVX 0xfc00707f
1688 #define MATCH_VMSGTUVI 0x78003057
1689 #define MASK_VMSGTUVI 0xfc00707f
1690 #define MATCH_VMINVV 0x14000057
1691 #define MASK_VMINVV 0xfc00707f
1692 #define MATCH_VMINVX 0x14004057
1693 #define MASK_VMINVX 0xfc00707f
1694 #define MATCH_VMAXVV 0x1c000057
1695 #define MASK_VMAXVV 0xfc00707f
1696 #define MATCH_VMAXVX 0x1c004057
1697 #define MASK_VMAXVX 0xfc00707f
1698 #define MATCH_VMINUVV 0x10000057
1699 #define MASK_VMINUVV 0xfc00707f
1700 #define MATCH_VMINUVX 0x10004057
1701 #define MASK_VMINUVX 0xfc00707f
1702 #define MATCH_VMAXUVV 0x18000057
1703 #define MASK_VMAXUVV 0xfc00707f
1704 #define MATCH_VMAXUVX 0x18004057
1705 #define MASK_VMAXUVX 0xfc00707f
1706 #define MATCH_VMULVV 0x94002057
1707 #define MASK_VMULVV 0xfc00707f
1708 #define MATCH_VMULVX 0x94006057
1709 #define MASK_VMULVX 0xfc00707f
1710 #define MATCH_VMULHVV 0x9c002057
1711 #define MASK_VMULHVV 0xfc00707f
1712 #define MATCH_VMULHVX 0x9c006057
1713 #define MASK_VMULHVX 0xfc00707f
1714 #define MATCH_VMULHUVV 0x90002057
1715 #define MASK_VMULHUVV 0xfc00707f
1716 #define MATCH_VMULHUVX 0x90006057
1717 #define MASK_VMULHUVX 0xfc00707f
1718 #define MATCH_VMULHSUVV 0x98002057
1719 #define MASK_VMULHSUVV 0xfc00707f
1720 #define MATCH_VMULHSUVX 0x98006057
1721 #define MASK_VMULHSUVX 0xfc00707f
1722 #define MATCH_VWMULVV 0xec002057
1723 #define MASK_VWMULVV 0xfc00707f
1724 #define MATCH_VWMULVX 0xec006057
1725 #define MASK_VWMULVX 0xfc00707f
1726 #define MATCH_VWMULUVV 0xe0002057
1727 #define MASK_VWMULUVV 0xfc00707f
1728 #define MATCH_VWMULUVX 0xe0006057
1729 #define MASK_VWMULUVX 0xfc00707f
1730 #define MATCH_VWMULSUVV 0xe8002057
1731 #define MASK_VWMULSUVV 0xfc00707f
1732 #define MATCH_VWMULSUVX 0xe8006057
1733 #define MASK_VWMULSUVX 0xfc00707f
1734 #define MATCH_VMACCVV 0xb4002057
1735 #define MASK_VMACCVV 0xfc00707f
1736 #define MATCH_VMACCVX 0xb4006057
1737 #define MASK_VMACCVX 0xfc00707f
1738 #define MATCH_VNMSACVV 0xbc002057
1739 #define MASK_VNMSACVV 0xfc00707f
1740 #define MATCH_VNMSACVX 0xbc006057
1741 #define MASK_VNMSACVX 0xfc00707f
1742 #define MATCH_VMADDVV 0xa4002057
1743 #define MASK_VMADDVV 0xfc00707f
1744 #define MATCH_VMADDVX 0xa4006057
1745 #define MASK_VMADDVX 0xfc00707f
1746 #define MATCH_VNMSUBVV 0xac002057
1747 #define MASK_VNMSUBVV 0xfc00707f
1748 #define MATCH_VNMSUBVX 0xac006057
1749 #define MASK_VNMSUBVX 0xfc00707f
1750 #define MATCH_VWMACCUVV 0xf0002057
1751 #define MASK_VWMACCUVV 0xfc00707f
1752 #define MATCH_VWMACCUVX 0xf0006057
1753 #define MASK_VWMACCUVX 0xfc00707f
1754 #define MATCH_VWMACCVV 0xf4002057
1755 #define MASK_VWMACCVV 0xfc00707f
1756 #define MATCH_VWMACCVX 0xf4006057
1757 #define MASK_VWMACCVX 0xfc00707f
1758 #define MATCH_VWMACCSUVV 0xfc002057
1759 #define MASK_VWMACCSUVV 0xfc00707f
1760 #define MATCH_VWMACCSUVX 0xfc006057
1761 #define MASK_VWMACCSUVX 0xfc00707f
1762 #define MATCH_VWMACCUSVX 0xf8006057
1763 #define MASK_VWMACCUSVX 0xfc00707f
1764 #define MATCH_VQMACCUVV 0xf0000057
1765 #define MASK_VQMACCUVV 0xfc00707f
1766 #define MATCH_VQMACCUVX 0xf0004057
1767 #define MASK_VQMACCUVX 0xfc00707f
1768 #define MATCH_VQMACCVV 0xf4000057
1769 #define MASK_VQMACCVV 0xfc00707f
1770 #define MATCH_VQMACCVX 0xf4004057
1771 #define MASK_VQMACCVX 0xfc00707f
1772 #define MATCH_VQMACCSUVV 0xfc000057
1773 #define MASK_VQMACCSUVV 0xfc00707f
1774 #define MATCH_VQMACCSUVX 0xfc004057
1775 #define MASK_VQMACCSUVX 0xfc00707f
1776 #define MATCH_VQMACCUSVX 0xf8004057
1777 #define MASK_VQMACCUSVX 0xfc00707f
1778 #define MATCH_VDIVVV 0x84002057
1779 #define MASK_VDIVVV 0xfc00707f
1780 #define MATCH_VDIVVX 0x84006057
1781 #define MASK_VDIVVX 0xfc00707f
1782 #define MATCH_VDIVUVV 0x80002057
1783 #define MASK_VDIVUVV 0xfc00707f
1784 #define MATCH_VDIVUVX 0x80006057
1785 #define MASK_VDIVUVX 0xfc00707f
1786 #define MATCH_VREMVV 0x8c002057
1787 #define MASK_VREMVV 0xfc00707f
1788 #define MATCH_VREMVX 0x8c006057
1789 #define MASK_VREMVX 0xfc00707f
1790 #define MATCH_VREMUVV 0x88002057
1791 #define MASK_VREMUVV 0xfc00707f
1792 #define MATCH_VREMUVX 0x88006057
1793 #define MASK_VREMUVX 0xfc00707f
1794 #define MATCH_VMERGEVVM 0x5c000057
1795 #define MASK_VMERGEVVM 0xfe00707f
1796 #define MATCH_VMERGEVXM 0x5c004057
1797 #define MASK_VMERGEVXM 0xfe00707f
1798 #define MATCH_VMERGEVIM 0x5c003057
1799 #define MASK_VMERGEVIM 0xfe00707f
1800 #define MATCH_VMVVV 0x5e000057
1801 #define MASK_VMVVV 0xfff0707f
1802 #define MATCH_VMVVX 0x5e004057
1803 #define MASK_VMVVX 0xfff0707f
1804 #define MATCH_VMVVI 0x5e003057
1805 #define MASK_VMVVI 0xfff0707f
1806 #define MATCH_VSADDUVV 0x80000057
1807 #define MASK_VSADDUVV 0xfc00707f
1808 #define MATCH_VSADDUVX 0x80004057
1809 #define MASK_VSADDUVX 0xfc00707f
1810 #define MATCH_VSADDUVI 0x80003057
1811 #define MASK_VSADDUVI 0xfc00707f
1812 #define MATCH_VSADDVV 0x84000057
1813 #define MASK_VSADDVV 0xfc00707f
1814 #define MATCH_VSADDVX 0x84004057
1815 #define MASK_VSADDVX 0xfc00707f
1816 #define MATCH_VSADDVI 0x84003057
1817 #define MASK_VSADDVI 0xfc00707f
1818 #define MATCH_VSSUBUVV 0x88000057
1819 #define MASK_VSSUBUVV 0xfc00707f
1820 #define MATCH_VSSUBUVX 0x88004057
1821 #define MASK_VSSUBUVX 0xfc00707f
1822 #define MATCH_VSSUBVV 0x8c000057
1823 #define MASK_VSSUBVV 0xfc00707f
1824 #define MATCH_VSSUBVX 0x8c004057
1825 #define MASK_VSSUBVX 0xfc00707f
1826 #define MATCH_VAADDUVV 0x20002057
1827 #define MASK_VAADDUVV 0xfc00707f
1828 #define MATCH_VAADDUVX 0x20006057
1829 #define MASK_VAADDUVX 0xfc00707f
1830 #define MATCH_VAADDVV 0x24002057
1831 #define MASK_VAADDVV 0xfc00707f
1832 #define MATCH_VAADDVX 0x24006057
1833 #define MASK_VAADDVX 0xfc00707f
1834 #define MATCH_VASUBUVV 0x28002057
1835 #define MASK_VASUBUVV 0xfc00707f
1836 #define MATCH_VASUBUVX 0x28006057
1837 #define MASK_VASUBUVX 0xfc00707f
1838 #define MATCH_VASUBVV 0x2c002057
1839 #define MASK_VASUBVV 0xfc00707f
1840 #define MATCH_VASUBVX 0x2c006057
1841 #define MASK_VASUBVX 0xfc00707f
1842 #define MATCH_VSMULVV 0x9c000057
1843 #define MASK_VSMULVV 0xfc00707f
1844 #define MATCH_VSMULVX 0x9c004057
1845 #define MASK_VSMULVX 0xfc00707f
1846 #define MATCH_VSSRLVV 0xa8000057
1847 #define MASK_VSSRLVV 0xfc00707f
1848 #define MATCH_VSSRLVX 0xa8004057
1849 #define MASK_VSSRLVX 0xfc00707f
1850 #define MATCH_VSSRLVI 0xa8003057
1851 #define MASK_VSSRLVI 0xfc00707f
1852 #define MATCH_VSSRAVV 0xac000057
1853 #define MASK_VSSRAVV 0xfc00707f
1854 #define MATCH_VSSRAVX 0xac004057
1855 #define MASK_VSSRAVX 0xfc00707f
1856 #define MATCH_VSSRAVI 0xac003057
1857 #define MASK_VSSRAVI 0xfc00707f
1858 #define MATCH_VNCLIPUWV 0xb8000057
1859 #define MASK_VNCLIPUWV 0xfc00707f
1860 #define MATCH_VNCLIPUWX 0xb8004057
1861 #define MASK_VNCLIPUWX 0xfc00707f
1862 #define MATCH_VNCLIPUWI 0xb8003057
1863 #define MASK_VNCLIPUWI 0xfc00707f
1864 #define MATCH_VNCLIPWV 0xbc000057
1865 #define MASK_VNCLIPWV 0xfc00707f
1866 #define MATCH_VNCLIPWX 0xbc004057
1867 #define MASK_VNCLIPWX 0xfc00707f
1868 #define MATCH_VNCLIPWI 0xbc003057
1869 #define MASK_VNCLIPWI 0xfc00707f
1870 #define MATCH_VFADDVV 0x00001057
1871 #define MASK_VFADDVV 0xfc00707f
1872 #define MATCH_VFADDVF 0x00005057
1873 #define MASK_VFADDVF 0xfc00707f
1874 #define MATCH_VFSUBVV 0x08001057
1875 #define MASK_VFSUBVV 0xfc00707f
1876 #define MATCH_VFSUBVF 0x08005057
1877 #define MASK_VFSUBVF 0xfc00707f
1878 #define MATCH_VFRSUBVF 0x9c005057
1879 #define MASK_VFRSUBVF 0xfc00707f
1880 #define MATCH_VFWADDVV 0xc0001057
1881 #define MASK_VFWADDVV 0xfc00707f
1882 #define MATCH_VFWADDVF 0xc0005057
1883 #define MASK_VFWADDVF 0xfc00707f
1884 #define MATCH_VFWSUBVV 0xc8001057
1885 #define MASK_VFWSUBVV 0xfc00707f
1886 #define MATCH_VFWSUBVF 0xc8005057
1887 #define MASK_VFWSUBVF 0xfc00707f
1888 #define MATCH_VFWADDWV 0xd0001057
1889 #define MASK_VFWADDWV 0xfc00707f
1890 #define MATCH_VFWADDWF 0xd0005057
1891 #define MASK_VFWADDWF 0xfc00707f
1892 #define MATCH_VFWSUBWV 0xd8001057
1893 #define MASK_VFWSUBWV 0xfc00707f
1894 #define MATCH_VFWSUBWF 0xd8005057
1895 #define MASK_VFWSUBWF 0xfc00707f
1896 #define MATCH_VFMULVV 0x90001057
1897 #define MASK_VFMULVV 0xfc00707f
1898 #define MATCH_VFMULVF 0x90005057
1899 #define MASK_VFMULVF 0xfc00707f
1900 #define MATCH_VFDIVVV 0x80001057
1901 #define MASK_VFDIVVV 0xfc00707f
1902 #define MATCH_VFDIVVF 0x80005057
1903 #define MASK_VFDIVVF 0xfc00707f
1904 #define MATCH_VFRDIVVF 0x84005057
1905 #define MASK_VFRDIVVF 0xfc00707f
1906 #define MATCH_VFWMULVV 0xe0001057
1907 #define MASK_VFWMULVV 0xfc00707f
1908 #define MATCH_VFWMULVF 0xe0005057
1909 #define MASK_VFWMULVF 0xfc00707f
1910 #define MATCH_VFMADDVV 0xa0001057
1911 #define MASK_VFMADDVV 0xfc00707f
1912 #define MATCH_VFMADDVF 0xa0005057
1913 #define MASK_VFMADDVF 0xfc00707f
1914 #define MATCH_VFNMADDVV 0xa4001057
1915 #define MASK_VFNMADDVV 0xfc00707f
1916 #define MATCH_VFNMADDVF 0xa4005057
1917 #define MASK_VFNMADDVF 0xfc00707f
1918 #define MATCH_VFMSUBVV 0xa8001057
1919 #define MASK_VFMSUBVV 0xfc00707f
1920 #define MATCH_VFMSUBVF 0xa8005057
1921 #define MASK_VFMSUBVF 0xfc00707f
1922 #define MATCH_VFNMSUBVV 0xac001057
1923 #define MASK_VFNMSUBVV 0xfc00707f
1924 #define MATCH_VFNMSUBVF 0xac005057
1925 #define MASK_VFNMSUBVF 0xfc00707f
1926 #define MATCH_VFMACCVV 0xb0001057
1927 #define MASK_VFMACCVV 0xfc00707f
1928 #define MATCH_VFMACCVF 0xb0005057
1929 #define MASK_VFMACCVF 0xfc00707f
1930 #define MATCH_VFNMACCVV 0xb4001057
1931 #define MASK_VFNMACCVV 0xfc00707f
1932 #define MATCH_VFNMACCVF 0xb4005057
1933 #define MASK_VFNMACCVF 0xfc00707f
1934 #define MATCH_VFMSACVV 0xb8001057
1935 #define MASK_VFMSACVV 0xfc00707f
1936 #define MATCH_VFMSACVF 0xb8005057
1937 #define MASK_VFMSACVF 0xfc00707f
1938 #define MATCH_VFNMSACVV 0xbc001057
1939 #define MASK_VFNMSACVV 0xfc00707f
1940 #define MATCH_VFNMSACVF 0xbc005057
1941 #define MASK_VFNMSACVF 0xfc00707f
1942 #define MATCH_VFWMACCVV 0xf0001057
1943 #define MASK_VFWMACCVV 0xfc00707f
1944 #define MATCH_VFWMACCVF 0xf0005057
1945 #define MASK_VFWMACCVF 0xfc00707f
1946 #define MATCH_VFWNMACCVV 0xf4001057
1947 #define MASK_VFWNMACCVV 0xfc00707f
1948 #define MATCH_VFWNMACCVF 0xf4005057
1949 #define MASK_VFWNMACCVF 0xfc00707f
1950 #define MATCH_VFWMSACVV 0xf8001057
1951 #define MASK_VFWMSACVV 0xfc00707f
1952 #define MATCH_VFWMSACVF 0xf8005057
1953 #define MASK_VFWMSACVF 0xfc00707f
1954 #define MATCH_VFWNMSACVV 0xfc001057
1955 #define MASK_VFWNMSACVV 0xfc00707f
1956 #define MATCH_VFWNMSACVF 0xfc005057
1957 #define MASK_VFWNMSACVF 0xfc00707f
1958 #define MATCH_VFSQRTV 0x4c001057
1959 #define MASK_VFSQRTV 0xfc0ff07f
1960 #define MATCH_VFRSQRT7V 0x4c021057
1961 #define MASK_VFRSQRT7V 0xfc0ff07f
1962 #define MATCH_VFREC7V 0x4c029057
1963 #define MASK_VFREC7V 0xfc0ff07f
1964 #define MATCH_VFCLASSV 0x4c081057
1965 #define MASK_VFCLASSV 0xfc0ff07f
1966 #define MATCH_VFMINVV 0x10001057
1967 #define MASK_VFMINVV 0xfc00707f
1968 #define MATCH_VFMINVF 0x10005057
1969 #define MASK_VFMINVF 0xfc00707f
1970 #define MATCH_VFMAXVV 0x18001057
1971 #define MASK_VFMAXVV 0xfc00707f
1972 #define MATCH_VFMAXVF 0x18005057
1973 #define MASK_VFMAXVF 0xfc00707f
1974 #define MATCH_VFSGNJVV 0x20001057
1975 #define MASK_VFSGNJVV 0xfc00707f
1976 #define MATCH_VFSGNJVF 0x20005057
1977 #define MASK_VFSGNJVF 0xfc00707f
1978 #define MATCH_VFSGNJNVV 0x24001057
1979 #define MASK_VFSGNJNVV 0xfc00707f
1980 #define MATCH_VFSGNJNVF 0x24005057
1981 #define MASK_VFSGNJNVF 0xfc00707f
1982 #define MATCH_VFSGNJXVV 0x28001057
1983 #define MASK_VFSGNJXVV 0xfc00707f
1984 #define MATCH_VFSGNJXVF 0x28005057
1985 #define MASK_VFSGNJXVF 0xfc00707f
1986 #define MATCH_VMFEQVV 0x60001057
1987 #define MASK_VMFEQVV 0xfc00707f
1988 #define MATCH_VMFEQVF 0x60005057
1989 #define MASK_VMFEQVF 0xfc00707f
1990 #define MATCH_VMFNEVV 0x70001057
1991 #define MASK_VMFNEVV 0xfc00707f
1992 #define MATCH_VMFNEVF 0x70005057
1993 #define MASK_VMFNEVF 0xfc00707f
1994 #define MATCH_VMFLTVV 0x6c001057
1995 #define MASK_VMFLTVV 0xfc00707f
1996 #define MATCH_VMFLTVF 0x6c005057
1997 #define MASK_VMFLTVF 0xfc00707f
1998 #define MATCH_VMFLEVV 0x64001057
1999 #define MASK_VMFLEVV 0xfc00707f
2000 #define MATCH_VMFLEVF 0x64005057
2001 #define MASK_VMFLEVF 0xfc00707f
2002 #define MATCH_VMFGTVF 0x74005057
2003 #define MASK_VMFGTVF 0xfc00707f
2004 #define MATCH_VMFGEVF 0x7c005057
2005 #define MASK_VMFGEVF 0xfc00707f
2006 #define MATCH_VFMERGEVFM 0x5c005057
2007 #define MASK_VFMERGEVFM 0xfe00707f
2008 #define MATCH_VFMVVF 0x5e005057
2009 #define MASK_VFMVVF 0xfff0707f
2010 #define MATCH_VFCVTXUFV 0x48001057
2011 #define MASK_VFCVTXUFV 0xfc0ff07f
2012 #define MATCH_VFCVTXFV 0x48009057
2013 #define MASK_VFCVTXFV 0xfc0ff07f
2014 #define MATCH_VFCVTFXUV 0x48011057
2015 #define MASK_VFCVTFXUV 0xfc0ff07f
2016 #define MATCH_VFCVTFXV 0x48019057
2017 #define MASK_VFCVTFXV 0xfc0ff07f
2018 #define MATCH_VFCVTRTZXUFV 0x48031057
2019 #define MASK_VFCVTRTZXUFV 0xfc0ff07f
2020 #define MATCH_VFCVTRTZXFV 0x48039057
2021 #define MASK_VFCVTRTZXFV 0xfc0ff07f
2022 #define MATCH_VFWCVTXUFV 0x48041057
2023 #define MASK_VFWCVTXUFV 0xfc0ff07f
2024 #define MATCH_VFWCVTXFV 0x48049057
2025 #define MASK_VFWCVTXFV 0xfc0ff07f
2026 #define MATCH_VFWCVTFXUV 0x48051057
2027 #define MASK_VFWCVTFXUV 0xfc0ff07f
2028 #define MATCH_VFWCVTFXV 0x48059057
2029 #define MASK_VFWCVTFXV 0xfc0ff07f
2030 #define MATCH_VFWCVTFFV 0x48061057
2031 #define MASK_VFWCVTFFV 0xfc0ff07f
2032 #define MATCH_VFWCVTRTZXUFV 0x48071057
2033 #define MASK_VFWCVTRTZXUFV 0xfc0ff07f
2034 #define MATCH_VFWCVTRTZXFV 0x48079057
2035 #define MASK_VFWCVTRTZXFV 0xfc0ff07f
2036 #define MATCH_VFNCVTXUFW 0x48081057
2037 #define MASK_VFNCVTXUFW 0xfc0ff07f
2038 #define MATCH_VFNCVTXFW 0x48089057
2039 #define MASK_VFNCVTXFW 0xfc0ff07f
2040 #define MATCH_VFNCVTFXUW 0x48091057
2041 #define MASK_VFNCVTFXUW 0xfc0ff07f
2042 #define MATCH_VFNCVTFXW 0x48099057
2043 #define MASK_VFNCVTFXW 0xfc0ff07f
2044 #define MATCH_VFNCVTFFW 0x480a1057
2045 #define MASK_VFNCVTFFW 0xfc0ff07f
2046 #define MATCH_VFNCVTRODFFW 0x480a9057
2047 #define MASK_VFNCVTRODFFW 0xfc0ff07f
2048 #define MATCH_VFNCVTRTZXUFW 0x480b1057
2049 #define MASK_VFNCVTRTZXUFW 0xfc0ff07f
2050 #define MATCH_VFNCVTRTZXFW 0x480b9057
2051 #define MASK_VFNCVTRTZXFW 0xfc0ff07f
2052 #define MATCH_VREDSUMVS 0x00002057
2053 #define MASK_VREDSUMVS 0xfc00707f
2054 #define MATCH_VREDMAXVS 0x1c002057
2055 #define MASK_VREDMAXVS 0xfc00707f
2056 #define MATCH_VREDMAXUVS 0x18002057
2057 #define MASK_VREDMAXUVS 0xfc00707f
2058 #define MATCH_VREDMINVS 0x14002057
2059 #define MASK_VREDMINVS 0xfc00707f
2060 #define MATCH_VREDMINUVS 0x10002057
2061 #define MASK_VREDMINUVS 0xfc00707f
2062 #define MATCH_VREDANDVS 0x04002057
2063 #define MASK_VREDANDVS 0xfc00707f
2064 #define MATCH_VREDORVS 0x08002057
2065 #define MASK_VREDORVS 0xfc00707f
2066 #define MATCH_VREDXORVS 0x0c002057
2067 #define MASK_VREDXORVS 0xfc00707f
2068 #define MATCH_VWREDSUMUVS 0xc0000057
2069 #define MASK_VWREDSUMUVS 0xfc00707f
2070 #define MATCH_VWREDSUMVS 0xc4000057
2071 #define MASK_VWREDSUMVS 0xfc00707f
2072 #define MATCH_VFREDOSUMVS 0x0c001057
2073 #define MASK_VFREDOSUMVS 0xfc00707f
2074 #define MATCH_VFREDUSUMVS 0x04001057
2075 #define MASK_VFREDUSUMVS 0xfc00707f
2076 #define MATCH_VFREDMAXVS 0x1c001057
2077 #define MASK_VFREDMAXVS 0xfc00707f
2078 #define MATCH_VFREDMINVS 0x14001057
2079 #define MASK_VFREDMINVS 0xfc00707f
2080 #define MATCH_VFWREDOSUMVS 0xcc001057
2081 #define MASK_VFWREDOSUMVS 0xfc00707f
2082 #define MATCH_VFWREDUSUMVS 0xc4001057
2083 #define MASK_VFWREDUSUMVS 0xfc00707f
2084 #define MATCH_VMANDMM 0x66002057
2085 #define MASK_VMANDMM 0xfe00707f
2086 #define MATCH_VMNANDMM 0x76002057
2087 #define MASK_VMNANDMM 0xfe00707f
2088 #define MATCH_VMANDNMM 0x62002057
2089 #define MASK_VMANDNMM 0xfe00707f
2090 #define MATCH_VMXORMM 0x6e002057
2091 #define MASK_VMXORMM 0xfe00707f
2092 #define MATCH_VMORMM 0x6a002057
2093 #define MASK_VMORMM 0xfe00707f
2094 #define MATCH_VMNORMM 0x7a002057
2095 #define MASK_VMNORMM 0xfe00707f
2096 #define MATCH_VMORNMM 0x72002057
2097 #define MASK_VMORNMM 0xfe00707f
2098 #define MATCH_VMXNORMM 0x7e002057
2099 #define MASK_VMXNORMM 0xfe00707f
2100 #define MATCH_VCPOPM 0x40082057
2101 #define MASK_VCPOPM 0xfc0ff07f
2102 #define MATCH_VFIRSTM 0x4008a057
2103 #define MASK_VFIRSTM 0xfc0ff07f
2104 #define MATCH_VMSBFM 0x5000a057
2105 #define MASK_VMSBFM 0xfc0ff07f
2106 #define MATCH_VMSIFM 0x5001a057
2107 #define MASK_VMSIFM 0xfc0ff07f
2108 #define MATCH_VMSOFM 0x50012057
2109 #define MASK_VMSOFM 0xfc0ff07f
2110 #define MATCH_VIOTAM 0x50082057
2111 #define MASK_VIOTAM 0xfc0ff07f
2112 #define MATCH_VIDV 0x5008a057
2113 #define MASK_VIDV 0xfdfff07f
2114 #define MATCH_VMVXS 0x42002057
2115 #define MASK_VMVXS 0xfe0ff07f
2116 #define MATCH_VMVSX 0x42006057
2117 #define MASK_VMVSX 0xfff0707f
2118 #define MATCH_VFMVFS 0x42001057
2119 #define MASK_VFMVFS 0xfe0ff07f
2120 #define MATCH_VFMVSF 0x42005057
2121 #define MASK_VFMVSF 0xfff0707f
2122 #define MATCH_VSLIDEUPVX 0x38004057
2123 #define MASK_VSLIDEUPVX 0xfc00707f
2124 #define MATCH_VSLIDEUPVI 0x38003057
2125 #define MASK_VSLIDEUPVI 0xfc00707f
2126 #define MATCH_VSLIDEDOWNVX 0x3c004057
2127 #define MASK_VSLIDEDOWNVX 0xfc00707f
2128 #define MATCH_VSLIDEDOWNVI 0x3c003057
2129 #define MASK_VSLIDEDOWNVI 0xfc00707f
2130 #define MATCH_VSLIDE1UPVX 0x38006057
2131 #define MASK_VSLIDE1UPVX 0xfc00707f
2132 #define MATCH_VSLIDE1DOWNVX 0x3c006057
2133 #define MASK_VSLIDE1DOWNVX 0xfc00707f
2134 #define MATCH_VFSLIDE1UPVF 0x38005057
2135 #define MASK_VFSLIDE1UPVF 0xfc00707f
2136 #define MATCH_VFSLIDE1DOWNVF 0x3c005057
2137 #define MASK_VFSLIDE1DOWNVF 0xfc00707f
2138 #define MATCH_VRGATHERVV 0x30000057
2139 #define MASK_VRGATHERVV 0xfc00707f
2140 #define MATCH_VRGATHERVX 0x30004057
2141 #define MASK_VRGATHERVX 0xfc00707f
2142 #define MATCH_VRGATHERVI 0x30003057
2143 #define MASK_VRGATHERVI 0xfc00707f
2144 #define MATCH_VRGATHEREI16VV 0x38000057
2145 #define MASK_VRGATHEREI16VV 0xfc00707f
2146 #define MATCH_VCOMPRESSVM 0x5e002057
2147 #define MASK_VCOMPRESSVM 0xfe00707f
2148 #define MATCH_VMV1RV 0x9e003057
2149 #define MASK_VMV1RV 0xfe0ff07f
2150 #define MATCH_VMV2RV 0x9e00b057
2151 #define MASK_VMV2RV 0xfe0ff07f
2152 #define MATCH_VMV4RV 0x9e01b057
2153 #define MASK_VMV4RV 0xfe0ff07f
2154 #define MATCH_VMV8RV 0x9e03b057
2155 #define MASK_VMV8RV 0xfe0ff07f
2156 #define MATCH_VDOTVV 0xe4000057
2157 #define MASK_VDOTVV 0xfc00707f
2158 #define MATCH_VDOTUVV 0xe0000057
2159 #define MASK_VDOTUVV 0xfc00707f
2160 #define MATCH_VFDOTVV 0xe4001057
2161 #define MASK_VFDOTVV 0xfc00707f
2162 /* Zvbb/Zvkb instructions. */
2163 #define MATCH_VANDN_VV 0x4000057
2164 #define MASK_VANDN_VV 0xfc00707f
2165 #define MATCH_VANDN_VX 0x4004057
2166 #define MASK_VANDN_VX 0xfc00707f
2167 #define MATCH_VBREV8_V 0x48042057
2168 #define MASK_VBREV8_V 0xfc0ff07f
2169 #define MATCH_VBREV_V 0x48052057
2170 #define MASK_VBREV_V 0xfc0ff07f
2171 #define MATCH_VCLZ_V 0x48062057
2172 #define MASK_VCLZ_V 0xfc0ff07f
2173 #define MATCH_VCPOP_V 0x48072057
2174 #define MASK_VCPOP_V 0xfc0ff07f
2175 #define MATCH_VCTZ_V 0x4806a057
2176 #define MASK_VCTZ_V 0xfc0ff07f
2177 #define MATCH_VREV8_V 0x4804a057
2178 #define MASK_VREV8_V 0xfc0ff07f
2179 #define MATCH_VROL_VV 0x54000057
2180 #define MASK_VROL_VV 0xfc00707f
2181 #define MATCH_VROL_VX 0x54004057
2182 #define MASK_VROL_VX 0xfc00707f
2183 #define MATCH_VROR_VI 0x50003057
2184 #define MASK_VROR_VI 0xf800707f
2185 #define MATCH_VROR_VV 0x50000057
2186 #define MASK_VROR_VV 0xfc00707f
2187 #define MATCH_VROR_VX 0x50004057
2188 #define MASK_VROR_VX 0xfc00707f
2189 #define MATCH_VWSLL_VI 0xd4003057
2190 #define MASK_VWSLL_VI 0xfc00707f
2191 #define MATCH_VWSLL_VV 0xd4000057
2192 #define MASK_VWSLL_VV 0xfc00707f
2193 #define MATCH_VWSLL_VX 0xd4004057
2194 #define MASK_VWSLL_VX 0xfc00707f
2195 /* Zvbc instructions. */
2196 #define MATCH_VCLMUL_VV 0x30002057
2197 #define MASK_VCLMUL_VV 0xfc00707f
2198 #define MATCH_VCLMUL_VX 0x30006057
2199 #define MASK_VCLMUL_VX 0xfc00707f
2200 #define MATCH_VCLMULH_VV 0x34002057
2201 #define MASK_VCLMULH_VV 0xfc00707f
2202 #define MATCH_VCLMULH_VX 0x34006057
2203 #define MASK_VCLMULH_VX 0xfc00707f
2204 /* Zvkg instructions. */
2205 #define MATCH_VGHSH_VV 0xb2002077
2206 #define MASK_VGHSH_VV 0xfe00707f
2207 #define MATCH_VGMUL_VV 0xa208a077
2208 #define MASK_VGMUL_VV 0xfe0ff07f
2209 /* Zvkned instructions. */
2210 #define MATCH_VAESDF_VS 0xa600a077
2211 #define MASK_VAESDF_VS 0xfe0ff07f
2212 #define MATCH_VAESDF_VV 0xa200a077
2213 #define MASK_VAESDF_VV 0xfe0ff07f
2214 #define MATCH_VAESDM_VS 0xa6002077
2215 #define MASK_VAESDM_VS 0xfe0ff07f
2216 #define MATCH_VAESDM_VV 0xa2002077
2217 #define MASK_VAESDM_VV 0xfe0ff07f
2218 #define MATCH_VAESEF_VS 0xa601a077
2219 #define MASK_VAESEF_VS 0xfe0ff07f
2220 #define MATCH_VAESEF_VV 0xa201a077
2221 #define MASK_VAESEF_VV 0xfe0ff07f
2222 #define MATCH_VAESEM_VS 0xa6012077
2223 #define MASK_VAESEM_VS 0xfe0ff07f
2224 #define MATCH_VAESEM_VV 0xa2012077
2225 #define MASK_VAESEM_VV 0xfe0ff07f
2226 #define MATCH_VAESKF1_VI 0x8a002077
2227 #define MASK_VAESKF1_VI 0xfe00707f
2228 #define MATCH_VAESKF2_VI 0xaa002077
2229 #define MASK_VAESKF2_VI 0xfe00707f
2230 #define MATCH_VAESZ_VS 0xa603a077
2231 #define MASK_VAESZ_VS 0xfe0ff07f
2232 /* Zvknh[a,b] instructions. */
2233 #define MATCH_VSHA2CH_VV 0xba002077
2234 #define MASK_VSHA2CH_VV 0xfe00707f
2235 #define MATCH_VSHA2CL_VV 0xbe002077
2236 #define MASK_VSHA2CL_VV 0xfe00707f
2237 #define MATCH_VSHA2MS_VV 0xb6002077
2238 #define MASK_VSHA2MS_VV 0xfe00707f
2239 /* Zvksed instructions. */
2240 #define MATCH_VSM4K_VI 0x86002077
2241 #define MASK_VSM4K_VI 0xfe00707f
2242 #define MATCH_VSM4R_VS 0xa6082077
2243 #define MASK_VSM4R_VS 0xfe0ff07f
2244 #define MATCH_VSM4R_VV 0xa2082077
2245 #define MASK_VSM4R_VV 0xfe0ff07f
2246 /* Zvksh instructions. */
2247 #define MATCH_VSM3C_VI 0xae002077
2248 #define MASK_VSM3C_VI 0xfe00707f
2249 #define MATCH_VSM3ME_VV 0x82002077
2250 #define MASK_VSM3ME_VV 0xfe00707f
2251 /* Zcb instructions. */
2252 #define MATCH_C_LBU 0x8000
2253 #define MASK_C_LBU 0xfc03
2254 #define MATCH_C_LHU 0x8400
2255 #define MASK_C_LHU 0xfc43
2256 #define MATCH_C_LH 0x8440
2257 #define MASK_C_LH 0xfc43
2258 #define MATCH_C_SB 0x8800
2259 #define MASK_C_SB 0xfc03
2260 #define MATCH_C_SH 0x8c00
2261 #define MASK_C_SH 0xfc43
2262 #define MATCH_C_ZEXT_B 0x9c61
2263 #define MASK_C_ZEXT_B 0xfc7f
2264 #define MATCH_C_SEXT_B 0x9c65
2265 #define MASK_C_SEXT_B 0xfc7f
2266 #define MATCH_C_ZEXT_H 0x9c69
2267 #define MASK_C_ZEXT_H 0xfc7f
2268 #define MATCH_C_SEXT_H 0x9c6d
2269 #define MASK_C_SEXT_H 0xfc7f
2270 #define MATCH_C_ZEXT_W 0x9c71
2271 #define MASK_C_ZEXT_W 0xfc7f
2272 #define MATCH_C_NOT 0x9c75
2273 #define MASK_C_NOT 0xfc7f
2274 #define MATCH_C_MUL 0x9c41
2275 #define MASK_C_MUL 0xfc63
2276 /* Zcmop instructions. */
2277 #define MATCH_C_MOP_1 0x6081
2278 #define MASK_C_MOP_1 0xffff
2279 #define MATCH_C_MOP_3 0x6181
2280 #define MASK_C_MOP_3 0xffff
2281 #define MATCH_C_MOP_5 0x6281
2282 #define MASK_C_MOP_5 0xffff
2283 #define MATCH_C_MOP_7 0x6381
2284 #define MASK_C_MOP_7 0xffff
2285 #define MATCH_C_MOP_9 0x6481
2286 #define MASK_C_MOP_9 0xffff
2287 #define MATCH_C_MOP_11 0x6581
2288 #define MASK_C_MOP_11 0xffff
2289 #define MATCH_C_MOP_13 0x6681
2290 #define MASK_C_MOP_13 0xffff
2291 #define MATCH_C_MOP_15 0x6781
2292 #define MASK_C_MOP_15 0xffff
2293 /* Zcmp instructions. */
2294 #define MATCH_CM_PUSH 0xb802
2295 #define MASK_CM_PUSH 0xff03
2296 #define MATCH_CM_POP 0xba02
2297 #define MASK_CM_POP 0xff03
2298 #define MATCH_CM_POPRET 0xbe02
2299 #define MASK_CM_POPRET 0xff03
2300 #define MATCH_CM_POPRETZ 0xbc02
2301 #define MASK_CM_POPRETZ 0xff03
2302 #define MATCH_CM_MVA01S 0xac62
2303 #define MASK_CM_MVA01S 0xfc63
2304 #define MATCH_CM_MVSA01 0xac22
2305 #define MASK_CM_MVSA01 0xfc63
2306 /* Zcmt instructions. */
2307 #define MATCH_CM_JT 0xa002
2308 #define MASK_CM_JT 0xfc03
2309 #define MATCH_CM_JALT 0xa002
2310 #define MASK_CM_JALT 0xfc03
2311 /* Smctr/Ssctr instruction. */
2312 #define MATCH_SCTRCLR 0x10400073
2313 #define MASK_SCTRCLR 0xffffffff
2314 /* Svinval instruction. */
2315 #define MATCH_SINVAL_VMA 0x16000073
2316 #define MASK_SINVAL_VMA 0xfe007fff
2317 #define MATCH_SFENCE_W_INVAL 0x18000073
2318 #define MASK_SFENCE_W_INVAL 0xffffffff
2319 #define MATCH_SFENCE_INVAL_IR 0x18100073
2320 #define MASK_SFENCE_INVAL_IR 0xffffffff
2321 #define MATCH_HINVAL_VVMA 0x26000073
2322 #define MASK_HINVAL_VVMA 0xfe007fff
2323 #define MATCH_HINVAL_GVMA 0x66000073
2324 #define MASK_HINVAL_GVMA 0xfe007fff
2325 /* Hypervisor instruction. */
2326 #define MATCH_HFENCE_VVMA 0x22000073
2327 #define MASK_HFENCE_VVMA 0xfe007fff
2328 #define MATCH_HFENCE_GVMA 0x62000073
2329 #define MASK_HFENCE_GVMA 0xfe007fff
2330 #define MATCH_HLV_B 0x60004073
2331 #define MASK_HLV_B 0xfff0707f
2332 #define MATCH_HLV_H 0x64004073
2333 #define MASK_HLV_H 0xfff0707f
2334 #define MATCH_HLV_W 0x68004073
2335 #define MASK_HLV_W 0xfff0707f
2336 #define MATCH_HLV_D 0x6c004073
2337 #define MASK_HLV_D 0xfff0707f
2338 #define MATCH_HLV_BU 0x60104073
2339 #define MASK_HLV_BU 0xfff0707f
2340 #define MATCH_HLV_HU 0x64104073
2341 #define MASK_HLV_HU 0xfff0707f
2342 #define MATCH_HLV_WU 0x68104073
2343 #define MASK_HLV_WU 0xfff0707f
2344 #define MATCH_HLVX_HU 0x64304073
2345 #define MASK_HLVX_HU 0xfff0707f
2346 #define MATCH_HLVX_WU 0x68304073
2347 #define MASK_HLVX_WU 0xfff0707f
2348 #define MATCH_HSV_B 0x62004073
2349 #define MASK_HSV_B 0xfe007fff
2350 #define MATCH_HSV_H 0x66004073
2351 #define MASK_HSV_H 0xfe007fff
2352 #define MATCH_HSV_W 0x6a004073
2353 #define MASK_HSV_W 0xfe007fff
2354 #define MATCH_HSV_D 0x6e004073
2355 #define MASK_HSV_D 0xfe007fff
2356 /* Zicfiss instructions. */
2357 #define MATCH_SSPUSH 0xce004073
2358 #define MASK_SSPUSH 0xfe0fffff
2359 #define MATCH_SSPOPCHK 0xcdc04073
2360 #define MASK_SSPOPCHK 0xfff07fff
2361 #define MATCH_SSRDP 0xcdc04073
2362 #define MASK_SSRDP 0xfffff07f
2363 #define MATCH_SSAMOSWAP_W 0x4800202f
2364 #define MASK_SSAMOSWAP_W 0xf800707f
2365 #define MATCH_SSAMOSWAP_D 0x4800302f
2366 #define MASK_SSAMOSWAP_D 0xf800707f
2367 #define MATCH_C_SSPUSH 0x6081
2368 #define MASK_C_SSPUSH 0xffff
2369 #define MATCH_C_SSPOPCHK 0x6281
2370 #define MASK_C_SSPOPCHK 0xffff
2371 /* Zicfilp instructions. */
2372 #define MATCH_LPAD 0x17
2373 #define MASK_LPAD 0xfff
2374 /* Zicbop hint instructions. */
2375 #define MATCH_PREFETCH_I 0x6013
2376 #define MASK_PREFETCH_I 0x1f07fff
2377 #define MATCH_PREFETCH_R 0x106013
2378 #define MASK_PREFETCH_R 0x1f07fff
2379 #define MATCH_PREFETCH_W 0x306013
2380 #define MASK_PREFETCH_W 0x1f07fff
2381 /* Zicbom/Zicboz instructions. */
2382 #define MATCH_CBO_CLEAN 0x10200f
2383 #define MASK_CBO_CLEAN 0xfff07fff
2384 #define MATCH_CBO_FLUSH 0x20200f
2385 #define MASK_CBO_FLUSH 0xfff07fff
2386 #define MATCH_CBO_INVAL 0x200f
2387 #define MASK_CBO_INVAL 0xfff07fff
2388 #define MATCH_CBO_ZERO 0x40200f
2389 #define MASK_CBO_ZERO 0xfff07fff
2390 /* Zicond instructions. */
2391 #define MATCH_CZERO_EQZ 0xe005033
2392 #define MASK_CZERO_EQZ 0xfe00707f
2393 #define MATCH_CZERO_NEZ 0xe007033
2394 #define MASK_CZERO_NEZ 0xfe00707f
2395 /* Zihintntl hint instructions. */
2396 #define MATCH_NTL_P1 0x200033
2397 #define MASK_NTL_P1 0xffffffff
2398 #define MATCH_NTL_PALL 0x300033
2399 #define MASK_NTL_PALL 0xffffffff
2400 #define MATCH_NTL_S1 0x400033
2401 #define MASK_NTL_S1 0xffffffff
2402 #define MATCH_NTL_ALL 0x500033
2403 #define MASK_NTL_ALL 0xffffffff
2404 #define MATCH_C_NTL_P1 0x900a
2405 #define MASK_C_NTL_P1 0xffff
2406 #define MATCH_C_NTL_PALL 0x900e
2407 #define MASK_C_NTL_PALL 0xffff
2408 #define MATCH_C_NTL_S1 0x9012
2409 #define MASK_C_NTL_S1 0xffff
2410 #define MATCH_C_NTL_ALL 0x9016
2411 #define MASK_C_NTL_ALL 0xffff
2412 /* Zimop instructions. */
2413 #define MATCH_MOP_R_0 0x81c04073
2414 #define MASK_MOP_R_0 0xfff0707f
2415 #define MATCH_MOP_R_1 0x81d04073
2416 #define MASK_MOP_R_1 0xfff0707f
2417 #define MATCH_MOP_R_2 0x81e04073
2418 #define MASK_MOP_R_2 0xfff0707f
2419 #define MATCH_MOP_R_3 0x81f04073
2420 #define MASK_MOP_R_3 0xfff0707f
2421 #define MATCH_MOP_R_4 0x85c04073
2422 #define MASK_MOP_R_4 0xfff0707f
2423 #define MATCH_MOP_R_5 0x85d04073
2424 #define MASK_MOP_R_5 0xfff0707f
2425 #define MATCH_MOP_R_6 0x85e04073
2426 #define MASK_MOP_R_6 0xfff0707f
2427 #define MATCH_MOP_R_7 0x85f04073
2428 #define MASK_MOP_R_7 0xfff0707f
2429 #define MATCH_MOP_R_8 0x89c04073
2430 #define MASK_MOP_R_8 0xfff0707f
2431 #define MATCH_MOP_R_9 0x89d04073
2432 #define MASK_MOP_R_9 0xfff0707f
2433 #define MATCH_MOP_R_10 0x89e04073
2434 #define MASK_MOP_R_10 0xfff0707f
2435 #define MATCH_MOP_R_11 0x89f04073
2436 #define MASK_MOP_R_11 0xfff0707f
2437 #define MATCH_MOP_R_12 0x8dc04073
2438 #define MASK_MOP_R_12 0xfff0707f
2439 #define MATCH_MOP_R_13 0x8dd04073
2440 #define MASK_MOP_R_13 0xfff0707f
2441 #define MATCH_MOP_R_14 0x8de04073
2442 #define MASK_MOP_R_14 0xfff0707f
2443 #define MATCH_MOP_R_15 0x8df04073
2444 #define MASK_MOP_R_15 0xfff0707f
2445 #define MATCH_MOP_R_16 0xc1c04073
2446 #define MASK_MOP_R_16 0xfff0707f
2447 #define MATCH_MOP_R_17 0xc1d04073
2448 #define MASK_MOP_R_17 0xfff0707f
2449 #define MATCH_MOP_R_18 0xc1e04073
2450 #define MASK_MOP_R_18 0xfff0707f
2451 #define MATCH_MOP_R_19 0xc1f04073
2452 #define MASK_MOP_R_19 0xfff0707f
2453 #define MATCH_MOP_R_20 0xc5c04073
2454 #define MASK_MOP_R_20 0xfff0707f
2455 #define MATCH_MOP_R_21 0xc5d04073
2456 #define MASK_MOP_R_21 0xfff0707f
2457 #define MATCH_MOP_R_22 0xc5e04073
2458 #define MASK_MOP_R_22 0xfff0707f
2459 #define MATCH_MOP_R_23 0xc5f04073
2460 #define MASK_MOP_R_23 0xfff0707f
2461 #define MATCH_MOP_R_24 0xc9c04073
2462 #define MASK_MOP_R_24 0xfff0707f
2463 #define MATCH_MOP_R_25 0xc9d04073
2464 #define MASK_MOP_R_25 0xfff0707f
2465 #define MATCH_MOP_R_26 0xc9e04073
2466 #define MASK_MOP_R_26 0xfff0707f
2467 #define MATCH_MOP_R_27 0xc9f04073
2468 #define MASK_MOP_R_27 0xfff0707f
2469 #define MATCH_MOP_R_28 0xcdc04073
2470 #define MASK_MOP_R_28 0xfff0707f
2471 #define MATCH_MOP_R_29 0xcdd04073
2472 #define MASK_MOP_R_29 0xfff0707f
2473 #define MATCH_MOP_R_30 0xcde04073
2474 #define MASK_MOP_R_30 0xfff0707f
2475 #define MATCH_MOP_R_31 0xcdf04073
2476 #define MASK_MOP_R_31 0xfff0707f
2477 #define MATCH_MOP_RR_0 0x82004073
2478 #define MASK_MOP_RR_0 0xfe00707f
2479 #define MATCH_MOP_RR_1 0x86004073
2480 #define MASK_MOP_RR_1 0xfe00707f
2481 #define MATCH_MOP_RR_2 0x8a004073
2482 #define MASK_MOP_RR_2 0xfe00707f
2483 #define MATCH_MOP_RR_3 0x8e004073
2484 #define MASK_MOP_RR_3 0xfe00707f
2485 #define MATCH_MOP_RR_4 0xc2004073
2486 #define MASK_MOP_RR_4 0xfe00707f
2487 #define MATCH_MOP_RR_5 0xc6004073
2488 #define MASK_MOP_RR_5 0xfe00707f
2489 #define MATCH_MOP_RR_6 0xca004073
2490 #define MASK_MOP_RR_6 0xfe00707f
2491 #define MATCH_MOP_RR_7 0xce004073
2492 #define MASK_MOP_RR_7 0xfe00707f
2493 /* Zacas instructions. */
2494 #define MATCH_AMOCAS_W 0x2800202f
2495 #define MASK_AMOCAS_W 0xf800707f
2496 #define MATCH_AMOCAS_D 0x2800302f
2497 #define MASK_AMOCAS_D 0xf800707f
2498 #define MATCH_AMOCAS_Q 0x2800402f
2499 #define MASK_AMOCAS_Q 0xf800707f
2500 /* Zawrs instructions. */
2501 #define MATCH_WRS_NTO 0x00d00073
2502 #define MASK_WRS_NTO 0xffffffff
2503 #define MATCH_WRS_STO 0x01d00073
2504 #define MASK_WRS_STO 0xffffffff
2505 /* Zfbfmin intructions. */
2506 #define MATCH_FCVT_BF16_S 0x44800053
2507 #define MASK_FCVT_BF16_S 0xfff0007f
2508 #define MATCH_FCVT_S_BF16 0x40600053
2509 #define MASK_FCVT_S_BF16 0xfff0007f
2510 /* Zvfbfmin intructions. */
2511 #define MATCH_VFNCVTBF16_F_F_W 0x480e9057
2512 #define MASK_VFNCVTBF16_F_F_W 0xfc0ff07f
2513 #define MATCH_VFWCVTBF16_F_F_V 0x48069057
2514 #define MASK_VFWCVTBF16_F_F_V 0xfc0ff07f
2515 /* Zvfbfwma intructions. */
2516 #define MATCH_VFWMACCBF16_VF 0xec005057
2517 #define MASK_VFWMACCBF16_VF 0xfc00707f
2518 #define MATCH_VFWMACCBF16_VV 0xec001057
2519 #define MASK_VFWMACCBF16_VV 0xfc00707f
2520 /* Vendor-specific (CORE-V) Xcvmac instructions. */
2521 #define MATCH_CV_MAC 0x9000302b
2522 #define MASK_CV_MAC 0xfe00707f
2523 #define MATCH_CV_MSU 0x9200302b
2524 #define MASK_CV_MSU 0xfe00707f
2525 #define MATCH_CV_MULSN 0x405b
2526 #define MASK_CV_MULSN 0xc000707f
2527 #define MATCH_CV_MULHHSN 0x4000405b
2528 #define MASK_CV_MULHHSN 0xc000707f
2529 #define MATCH_CV_MULSRN 0x8000405b
2530 #define MASK_CV_MULSRN 0xc000707f
2531 #define MATCH_CV_MULHHSRN 0xc000405b
2532 #define MASK_CV_MULHHSRN 0xc000707f
2533 #define MATCH_CV_MULUN 0x505b
2534 #define MASK_CV_MULUN 0xc000707f
2535 #define MATCH_CV_MULHHUN 0x4000505b
2536 #define MASK_CV_MULHHUN 0xc000707f
2537 #define MATCH_CV_MULURN 0x8000505b
2538 #define MASK_CV_MULURN 0xc000707f
2539 #define MATCH_CV_MULHHURN 0xc000505b
2540 #define MASK_CV_MULHHURN 0xc000707f
2541 #define MATCH_CV_MACSN 0x605b
2542 #define MASK_CV_MACSN 0xc000707f
2543 #define MATCH_CV_MACHHSN 0x4000605b
2544 #define MASK_CV_MACHHSN 0xc000707f
2545 #define MATCH_CV_MACSRN 0x8000605b
2546 #define MASK_CV_MACSRN 0xc000707f
2547 #define MATCH_CV_MACHHSRN 0xc000605b
2548 #define MASK_CV_MACHHSRN 0xc000707f
2549 #define MATCH_CV_MACUN 0x705b
2550 #define MASK_CV_MACUN 0xc000707f
2551 #define MATCH_CV_MACHHUN 0x4000705b
2552 #define MASK_CV_MACHHUN 0xc000707f
2553 #define MATCH_CV_MACURN 0x8000705b
2554 #define MASK_CV_MACURN 0xc000707f
2555 #define MATCH_CV_MACHHURN 0xc000705b
2556 #define MASK_CV_MACHHURN 0xc000707f
2557 /* Vendor-specific (CORE-V) Xcvalu instructions. */
2558 #define MATCH_CV_ABS 0x5000302b
2559 #define MASK_CV_ABS 0xfff0707f
2560 #define MATCH_CV_SLE 0x5200302b
2561 #define MASK_CV_SLE 0xfe00707f
2562 #define MATCH_CV_SLET 0x5200302b
2563 #define MASK_CV_SLET 0xfe00707f
2564 #define MATCH_CV_SLEU 0x5400302b
2565 #define MASK_CV_SLEU 0xfe00707f
2566 #define MATCH_CV_SLETU 0x5400302b
2567 #define MASK_CV_SLETU 0xfe00707f
2568 #define MATCH_CV_MIN 0x5600302b
2569 #define MASK_CV_MIN 0xfe00707f
2570 #define MATCH_CV_MINU 0x5800302b
2571 #define MASK_CV_MINU 0xfe00707f
2572 #define MATCH_CV_MAX 0x5a00302b
2573 #define MASK_CV_MAX 0xfe00707f
2574 #define MATCH_CV_MAXU 0x5c00302b
2575 #define MASK_CV_MAXU 0xfe00707f
2576 #define MATCH_CV_EXTHS 0x6000302b
2577 #define MASK_CV_EXTHS 0xfff0707f
2578 #define MATCH_CV_EXTHZ 0x6200302b
2579 #define MASK_CV_EXTHZ 0xfff0707f
2580 #define MATCH_CV_EXTBS 0x6400302b
2581 #define MASK_CV_EXTBS 0xfff0707f
2582 #define MATCH_CV_EXTBZ 0x6600302b
2583 #define MASK_CV_EXTBZ 0xfff0707f
2584 #define MATCH_CV_CLIP 0x7000302b
2585 #define MASK_CV_CLIP 0xfe00707f
2586 #define MATCH_CV_CLIPU 0x7200302b
2587 #define MASK_CV_CLIPU 0xfe00707f
2588 #define MATCH_CV_CLIPR 0x7400302b
2589 #define MASK_CV_CLIPR 0xfe00707f
2590 #define MATCH_CV_CLIPUR 0x7600302b
2591 #define MASK_CV_CLIPUR 0xfe00707f
2592 #define MATCH_CV_ADDNR 0x8000302b
2593 #define MASK_CV_ADDNR 0xfe00707f
2594 #define MATCH_CV_ADDUNR 0x8200302b
2595 #define MASK_CV_ADDUNR 0xfe00707f
2596 #define MATCH_CV_ADDRNR 0x8400302b
2597 #define MASK_CV_ADDRNR 0xfe00707f
2598 #define MATCH_CV_ADDURNR 0x8600302b
2599 #define MASK_CV_ADDURNR 0xfe00707f
2600 #define MATCH_CV_SUBNR 0x8800302b
2601 #define MASK_CV_SUBNR 0xfe00707f
2602 #define MATCH_CV_SUBUNR 0x8a00302b
2603 #define MASK_CV_SUBUNR 0xfe00707f
2604 #define MATCH_CV_SUBRNR 0x8c00302b
2605 #define MASK_CV_SUBRNR 0xfe00707f
2606 #define MATCH_CV_SUBURNR 0x8e00302b
2607 #define MASK_CV_SUBURNR 0xfe00707f
2608 #define MATCH_CV_ADDN 0x205b
2609 #define MASK_CV_ADDN 0xc000707f
2610 #define MATCH_CV_ADDUN 0x4000205b
2611 #define MASK_CV_ADDUN 0xc000707f
2612 #define MATCH_CV_ADDRN 0x8000205b
2613 #define MASK_CV_ADDRN 0xc000707f
2614 #define MATCH_CV_ADDURN 0xc000205b
2615 #define MASK_CV_ADDURN 0xc000707f
2616 #define MATCH_CV_SUBN 0x305b
2617 #define MASK_CV_SUBN 0xc000707f
2618 #define MATCH_CV_SUBUN 0x4000305b
2619 #define MASK_CV_SUBUN 0xc000707f
2620 #define MATCH_CV_SUBRN 0x8000305b
2621 #define MASK_CV_SUBRN 0xc000707f
2622 #define MATCH_CV_SUBURN 0xc000305b
2623 #define MASK_CV_SUBURN 0xc000707f
2624 /* Vendor-specific (CORE-V) Xcvelw instructions. */
2625 #define MATCH_CV_ELW 0x600b
2626 #define MASK_CV_ELW 0x707f
2627 /* Vendor-specific (CORE-V) Xcvbi instructions. */
2628 #define MATCH_CV_BNEIMM 0x700b
2629 #define MASK_CV_BNEIMM 0x707f
2630 #define MATCH_CV_BEQIMM 0x600b
2631 #define MASK_CV_BEQIMM 0x707f
2632 /* Vendor-specific (CORE-V) Xcvmem instructions. */
2633 #define MASK_CV_LBPOST 0x707f
2634 #define MATCH_CV_LBPOST 0xb
2635 #define MASK_CV_LBUPOST 0x707f
2636 #define MATCH_CV_LBUPOST 0x400b
2637 #define MASK_CV_LHPOST 0x707f
2638 #define MATCH_CV_LHPOST 0x100b
2639 #define MASK_CV_LHUPOST 0x707f
2640 #define MATCH_CV_LHUPOST 0x500b
2641 #define MASK_CV_LWPOST 0x707f
2642 #define MATCH_CV_LWPOST 0x200b
2643 #define MASK_CV_LBRRPOST 0xfe00707f
2644 #define MATCH_CV_LBRRPOST 0x302b
2645 #define MASK_CV_LBURRPOST 0xfe00707f
2646 #define MATCH_CV_LBURRPOST 0x1000302b
2647 #define MASK_CV_LHRRPOST 0xfe00707f
2648 #define MATCH_CV_LHRRPOST 0x200302b
2649 #define MASK_CV_LHURRPOST 0xfe00707f
2650 #define MATCH_CV_LHURRPOST 0x1200302b
2651 #define MASK_CV_LWRRPOST 0xfe00707f
2652 #define MATCH_CV_LWRRPOST 0x400302b
2653 #define MASK_CV_LBRR 0xfe00707f
2654 #define MATCH_CV_LBRR 0x800302b
2655 #define MASK_CV_LBURR 0xfe00707f
2656 #define MATCH_CV_LBURR 0x1800302b
2657 #define MASK_CV_LHRR 0xfe00707f
2658 #define MATCH_CV_LHRR 0xa00302b
2659 #define MASK_CV_LHURR 0xfe00707f
2660 #define MATCH_CV_LHURR 0x1a00302b
2661 #define MASK_CV_LWRR 0xfe00707f
2662 #define MATCH_CV_LWRR 0xc00302b
2663 #define MASK_CV_SBPOST 0x707f
2664 #define MATCH_CV_SBPOST 0x2b
2665 #define MASK_CV_SHPOST 0x707f
2666 #define MATCH_CV_SHPOST 0x102b
2667 #define MASK_CV_SWPOST 0x707f
2668 #define MATCH_CV_SWPOST 0x202b
2669 #define MASK_CV_SBRRPOST 0xfe00707f
2670 #define MATCH_CV_SBRRPOST 0x2000302b
2671 #define MASK_CV_SHRRPOST 0xfe00707f
2672 #define MATCH_CV_SHRRPOST 0x2200302b
2673 #define MASK_CV_SWRRPOST 0xfe00707f
2674 #define MATCH_CV_SWRRPOST 0x2400302b
2675 #define MASK_CV_SBRR 0xfe00707f
2676 #define MATCH_CV_SBRR 0x2800302b
2677 #define MASK_CV_SHRR 0xfe00707f
2678 #define MATCH_CV_SHRR 0x2a00302b
2679 #define MASK_CV_SWRR 0xfe00707f
2680 #define MATCH_CV_SWRR 0x2c00302b
2681 /* Vendor-specific (CORE-V) Xcvbitmanip instructions. */
2682 #define MATCH_CV_EXTRACTR 0x3000302b
2683 #define MATCH_CV_EXTRACTUR 0x3200302b
2684 #define MATCH_CV_INSERTR 0x3400302b
2685 #define MATCH_CV_BCLRR 0x3800302b
2686 #define MATCH_CV_BSETR 0x3a00302b
2687 #define MATCH_CV_ROR 0x4000302b
2688 #define MATCH_CV_FF1 0x4200302b
2689 #define MATCH_CV_FL1 0x4400302b
2690 #define MATCH_CV_CLB 0x4600302b
2691 #define MATCH_CV_CNT 0x4800302b
2692 #define MATCH_CV_EXTRACT 0x5b
2693 #define MATCH_CV_EXTRACTU 0x4000005b
2694 #define MATCH_CV_INSERT 0x8000005b
2695 #define MATCH_CV_BCLR 0x105b
2696 #define MATCH_CV_BSET 0x4000105b
2697 #define MATCH_CV_BITREV 0xc000105b
2698 #define MASK_CV_EXTRACTR 0xfe00707f
2699 #define MASK_CV_EXTRACTUR 0xfe00707f
2700 #define MASK_CV_INSERTR 0xfe00707f
2701 #define MASK_CV_BCLRR 0xfe00707f
2702 #define MASK_CV_BSETR 0xfe00707f
2703 #define MASK_CV_ROR 0xfe00707f
2704 #define MASK_CV_FF1 0xfff0707f
2705 #define MASK_CV_FL1 0xfff0707f
2706 #define MASK_CV_CLB 0xfff0707f
2707 #define MASK_CV_CNT 0xfff0707f
2708 #define MASK_CV_EXTRACT 0xc000707f
2709 #define MASK_CV_EXTRACTU 0xc000707f
2710 #define MASK_CV_INSERT 0xc000707f
2711 #define MASK_CV_BCLR 0xc000707f
2712 #define MASK_CV_BSET 0xc000707f
2713 #define MASK_CV_BITREV 0xf800707f
2714 /* Vendor-specific (CORE-V) Xcvsimd instructions. */
2715 #define MATCH_CV_ADD_H 0x7b
2716 #define MATCH_CV_ADD_B 0x107b
2717 #define MATCH_CV_ADD_SC_H 0x407b
2718 #define MATCH_CV_ADD_SC_B 0x507b
2719 #define MATCH_CV_ADD_SCI_H 0x607b
2720 #define MATCH_CV_ADD_SCI_B 0x707b
2721 #define MATCH_CV_SUB_H 0x800007b
2722 #define MATCH_CV_SUB_B 0x800107b
2723 #define MATCH_CV_SUB_SC_H 0x800407b
2724 #define MATCH_CV_SUB_SC_B 0x800507b
2725 #define MATCH_CV_SUB_SCI_H 0x800607b
2726 #define MATCH_CV_SUB_SCI_B 0x800707b
2727 #define MATCH_CV_AVG_H 0x1000007b
2728 #define MATCH_CV_AVG_B 0x1000107b
2729 #define MATCH_CV_AVG_SC_H 0x1000407b
2730 #define MATCH_CV_AVG_SC_B 0x1000507b
2731 #define MATCH_CV_AVG_SCI_H 0x1000607b
2732 #define MATCH_CV_AVG_SCI_B 0x1000707b
2733 #define MATCH_CV_AVGU_H 0x1800007b
2734 #define MATCH_CV_AVGU_B 0x1800107b
2735 #define MATCH_CV_AVGU_SC_H 0x1800407b
2736 #define MATCH_CV_AVGU_SC_B 0x1800507b
2737 #define MATCH_CV_AVGU_SCI_H 0x1800607b
2738 #define MATCH_CV_AVGU_SCI_B 0x1800707b
2739 #define MATCH_CV_MIN_H 0x2000007b
2740 #define MATCH_CV_MIN_B 0x2000107b
2741 #define MATCH_CV_MIN_SC_H 0x2000407b
2742 #define MATCH_CV_MIN_SC_B 0x2000507b
2743 #define MATCH_CV_MIN_SCI_H 0x2000607b
2744 #define MATCH_CV_MIN_SCI_B 0x2000707b
2745 #define MATCH_CV_MINU_H 0x2800007b
2746 #define MATCH_CV_MINU_B 0x2800107b
2747 #define MATCH_CV_MINU_SC_H 0x2800407b
2748 #define MATCH_CV_MINU_SC_B 0x2800507b
2749 #define MATCH_CV_MINU_SCI_H 0x2800607b
2750 #define MATCH_CV_MINU_SCI_B 0x2800707b
2751 #define MATCH_CV_MAX_H 0x3000007b
2752 #define MATCH_CV_MAX_B 0x3000107b
2753 #define MATCH_CV_MAX_SC_H 0x3000407b
2754 #define MATCH_CV_MAX_SC_B 0x3000507b
2755 #define MATCH_CV_MAX_SCI_H 0x3000607b
2756 #define MATCH_CV_MAX_SCI_B 0x3000707b
2757 #define MATCH_CV_MAXU_H 0x3800007b
2758 #define MATCH_CV_MAXU_B 0x3800107b
2759 #define MATCH_CV_MAXU_SC_H 0x3800407b
2760 #define MATCH_CV_MAXU_SC_B 0x3800507b
2761 #define MATCH_CV_MAXU_SCI_H 0x3800607b
2762 #define MATCH_CV_MAXU_SCI_B 0x3800707b
2763 #define MATCH_CV_SRL_H 0x4000007b
2764 #define MATCH_CV_SRL_B 0x4000107b
2765 #define MATCH_CV_SRL_SC_H 0x4000407b
2766 #define MATCH_CV_SRL_SC_B 0x4000507b
2767 #define MATCH_CV_SRL_SCI_H 0x4000607b
2768 #define MATCH_CV_SRL_SCI_B 0x4000707b
2769 #define MATCH_CV_SRA_H 0x4800007b
2770 #define MATCH_CV_SRA_B 0x4800107b
2771 #define MATCH_CV_SRA_SC_H 0x4800407b
2772 #define MATCH_CV_SRA_SC_B 0x4800507b
2773 #define MATCH_CV_SRA_SCI_H 0x4800607b
2774 #define MATCH_CV_SRA_SCI_B 0x4800707b
2775 #define MATCH_CV_SLL_H 0x5000007b
2776 #define MATCH_CV_SLL_B 0x5000107b
2777 #define MATCH_CV_SLL_SC_H 0x5000407b
2778 #define MATCH_CV_SLL_SC_B 0x5000507b
2779 #define MATCH_CV_SLL_SCI_H 0x5000607b
2780 #define MATCH_CV_SLL_SCI_B 0x5000707b
2781 #define MATCH_CV_OR_H 0x5800007b
2782 #define MATCH_CV_OR_B 0x5800107b
2783 #define MATCH_CV_OR_SC_H 0x5800407b
2784 #define MATCH_CV_OR_SC_B 0x5800507b
2785 #define MATCH_CV_OR_SCI_H 0x5800607b
2786 #define MATCH_CV_OR_SCI_B 0x5800707b
2787 #define MATCH_CV_XOR_H 0x6000007b
2788 #define MATCH_CV_XOR_B 0x6000107b
2789 #define MATCH_CV_XOR_SC_H 0x6000407b
2790 #define MATCH_CV_XOR_SC_B 0x6000507b
2791 #define MATCH_CV_XOR_SCI_H 0x6000607b
2792 #define MATCH_CV_XOR_SCI_B 0x6000707b
2793 #define MATCH_CV_AND_H 0x6800007b
2794 #define MATCH_CV_AND_B 0x6800107b
2795 #define MATCH_CV_AND_SC_H 0x6800407b
2796 #define MATCH_CV_AND_SC_B 0x6800507b
2797 #define MATCH_CV_AND_SCI_H 0x6800607b
2798 #define MATCH_CV_AND_SCI_B 0x6800707b
2799 #define MATCH_CV_ABS_H 0x7000007b
2800 #define MATCH_CV_ABS_B 0x7000107b
2801 #define MATCH_CV_DOTUP_H 0x8000007b
2802 #define MATCH_CV_DOTUP_B 0x8000107b
2803 #define MATCH_CV_DOTUP_SC_H 0x8000407b
2804 #define MATCH_CV_DOTUP_SC_B 0x8000507b
2805 #define MATCH_CV_DOTUP_SCI_H 0x8000607b
2806 #define MATCH_CV_DOTUP_SCI_B 0x8000707b
2807 #define MATCH_CV_DOTUSP_H 0x8800007b
2808 #define MATCH_CV_DOTUSP_B 0x8800107b
2809 #define MATCH_CV_DOTUSP_SC_H 0x8800407b
2810 #define MATCH_CV_DOTUSP_SC_B 0x8800507b
2811 #define MATCH_CV_DOTUSP_SCI_H 0x8800607b
2812 #define MATCH_CV_DOTUSP_SCI_B 0x8800707b
2813 #define MATCH_CV_DOTSP_H 0x9000007b
2814 #define MATCH_CV_DOTSP_B 0x9000107b
2815 #define MATCH_CV_DOTSP_SC_H 0x9000407b
2816 #define MATCH_CV_DOTSP_SC_B 0x9000507b
2817 #define MATCH_CV_DOTSP_SCI_H 0x9000607b
2818 #define MATCH_CV_DOTSP_SCI_B 0x9000707b
2819 #define MATCH_CV_SDOTUP_H 0x9800007b
2820 #define MATCH_CV_SDOTUP_B 0x9800107b
2821 #define MATCH_CV_SDOTUP_SC_H 0x9800407b
2822 #define MATCH_CV_SDOTUP_SC_B 0x9800507b
2823 #define MATCH_CV_SDOTUP_SCI_H 0x9800607b
2824 #define MATCH_CV_SDOTUP_SCI_B 0x9800707b
2825 #define MATCH_CV_SDOTUSP_H 0xa000007b
2826 #define MATCH_CV_SDOTUSP_B 0xa000107b
2827 #define MATCH_CV_SDOTUSP_SC_H 0xa000407b
2828 #define MATCH_CV_SDOTUSP_SC_B 0xa000507b
2829 #define MATCH_CV_SDOTUSP_SCI_H 0xa000607b
2830 #define MATCH_CV_SDOTUSP_SCI_B 0xa000707b
2831 #define MATCH_CV_SDOTSP_H 0xa800007b
2832 #define MATCH_CV_SDOTSP_B 0xa800107b
2833 #define MATCH_CV_SDOTSP_SC_H 0xa800407b
2834 #define MATCH_CV_SDOTSP_SC_B 0xa800507b
2835 #define MATCH_CV_SDOTSP_SCI_H 0xa800607b
2836 #define MATCH_CV_SDOTSP_SCI_B 0xa800707b
2837 #define MATCH_CV_EXTRACT_H 0xb800007b
2838 #define MATCH_CV_EXTRACT_B 0xb800107b
2839 #define MATCH_CV_EXTRACTU_H 0xb800207b
2840 #define MATCH_CV_EXTRACTU_B 0xb800307b
2841 #define MATCH_CV_INSERT_H 0xb800407b
2842 #define MATCH_CV_INSERT_B 0xb800507b
2843 #define MATCH_CV_SHUFFLE_H 0xc000007b
2844 #define MATCH_CV_SHUFFLE_B 0xc000107b
2845 #define MATCH_CV_SHUFFLE_SCI_H 0xc000607b
2846 #define MATCH_CV_SHUFFLEI0_SCI_B 0xc000707b
2847 #define MATCH_CV_SHUFFLEI1_SCI_B 0xc800707b
2848 #define MATCH_CV_SHUFFLEI2_SCI_B 0xd000707b
2849 #define MATCH_CV_SHUFFLEI3_SCI_B 0xd800707b
2850 #define MATCH_CV_SHUFFLE2_H 0xe000007b
2851 #define MATCH_CV_SHUFFLE2_B 0xe000107b
2852 #define MATCH_CV_PACK 0xf000007b
2853 #define MATCH_CV_PACK_H 0xf200007b
2854 #define MATCH_CV_PACKHI_B 0xfa00107b
2855 #define MATCH_CV_PACKLO_B 0xf800107b
2856 #define MATCH_CV_CMPEQ_H 0x400007b
2857 #define MATCH_CV_CMPEQ_B 0x400107b
2858 #define MATCH_CV_CMPEQ_SC_H 0x400407b
2859 #define MATCH_CV_CMPEQ_SC_B 0x400507b
2860 #define MATCH_CV_CMPEQ_SCI_H 0x400607b
2861 #define MATCH_CV_CMPEQ_SCI_B 0x400707b
2862 #define MATCH_CV_CMPNE_H 0xc00007b
2863 #define MATCH_CV_CMPNE_B 0xc00107b
2864 #define MATCH_CV_CMPNE_SC_H 0xc00407b
2865 #define MATCH_CV_CMPNE_SC_B 0xc00507b
2866 #define MATCH_CV_CMPNE_SCI_H 0xc00607b
2867 #define MATCH_CV_CMPNE_SCI_B 0xc00707b
2868 #define MATCH_CV_CMPGT_H 0x1400007b
2869 #define MATCH_CV_CMPGT_B 0x1400107b
2870 #define MATCH_CV_CMPGT_SC_H 0x1400407b
2871 #define MATCH_CV_CMPGT_SC_B 0x1400507b
2872 #define MATCH_CV_CMPGT_SCI_H 0x1400607b
2873 #define MATCH_CV_CMPGT_SCI_B 0x1400707b
2874 #define MATCH_CV_CMPGE_H 0x1c00007b
2875 #define MATCH_CV_CMPGE_B 0x1c00107b
2876 #define MATCH_CV_CMPGE_SC_H 0x1c00407b
2877 #define MATCH_CV_CMPGE_SC_B 0x1c00507b
2878 #define MATCH_CV_CMPGE_SCI_H 0x1c00607b
2879 #define MATCH_CV_CMPGE_SCI_B 0x1c00707b
2880 #define MATCH_CV_CMPLT_H 0x2400007b
2881 #define MATCH_CV_CMPLT_B 0x2400107b
2882 #define MATCH_CV_CMPLT_SC_H 0x2400407b
2883 #define MATCH_CV_CMPLT_SC_B 0x2400507b
2884 #define MATCH_CV_CMPLT_SCI_H 0x2400607b
2885 #define MATCH_CV_CMPLT_SCI_B 0x2400707b
2886 #define MATCH_CV_CMPLE_H 0x2c00007b
2887 #define MATCH_CV_CMPLE_B 0x2c00107b
2888 #define MATCH_CV_CMPLE_SC_H 0x2c00407b
2889 #define MATCH_CV_CMPLE_SC_B 0x2c00507b
2890 #define MATCH_CV_CMPLE_SCI_H 0x2c00607b
2891 #define MATCH_CV_CMPLE_SCI_B 0x2c00707b
2892 #define MATCH_CV_CMPGTU_H 0x3400007b
2893 #define MATCH_CV_CMPGTU_B 0x3400107b
2894 #define MATCH_CV_CMPGTU_SC_H 0x3400407b
2895 #define MATCH_CV_CMPGTU_SC_B 0x3400507b
2896 #define MATCH_CV_CMPGTU_SCI_H 0x3400607b
2897 #define MATCH_CV_CMPGTU_SCI_B 0x3400707b
2898 #define MATCH_CV_CMPGEU_H 0x3c00007b
2899 #define MATCH_CV_CMPGEU_B 0x3c00107b
2900 #define MATCH_CV_CMPGEU_SC_H 0x3c00407b
2901 #define MATCH_CV_CMPGEU_SC_B 0x3c00507b
2902 #define MATCH_CV_CMPGEU_SCI_H 0x3c00607b
2903 #define MATCH_CV_CMPGEU_SCI_B 0x3c00707b
2904 #define MATCH_CV_CMPLTU_H 0x4400007b
2905 #define MATCH_CV_CMPLTU_B 0x4400107b
2906 #define MATCH_CV_CMPLTU_SC_H 0x4400407b
2907 #define MATCH_CV_CMPLTU_SC_B 0x4400507b
2908 #define MATCH_CV_CMPLTU_SCI_H 0x4400607b
2909 #define MATCH_CV_CMPLTU_SCI_B 0x4400707b
2910 #define MATCH_CV_CMPLEU_H 0x4c00007b
2911 #define MATCH_CV_CMPLEU_B 0x4c00107b
2912 #define MATCH_CV_CMPLEU_SC_H 0x4c00407b
2913 #define MATCH_CV_CMPLEU_SC_B 0x4c00507b
2914 #define MATCH_CV_CMPLEU_SCI_H 0x4c00607b
2915 #define MATCH_CV_CMPLEU_SCI_B 0x4c00707b
2916 #define MATCH_CV_CPLXMUL_R 0x5400007b
2917 #define MATCH_CV_CPLXMUL_I 0x5600007b
2918 #define MATCH_CV_CPLXMUL_R_DIV2 0x5400207b
2919 #define MATCH_CV_CPLXMUL_I_DIV2 0x5600207b
2920 #define MATCH_CV_CPLXMUL_R_DIV4 0x5400407b
2921 #define MATCH_CV_CPLXMUL_I_DIV4 0x5600407b
2922 #define MATCH_CV_CPLXMUL_R_DIV8 0x5400607b
2923 #define MATCH_CV_CPLXMUL_I_DIV8 0x5600607b
2924 #define MATCH_CV_CPLXCONJ 0x5c00007b
2925 #define MATCH_CV_SUBROTMJ 0x6400007b
2926 #define MATCH_CV_SUBROTMJ_DIV2 0x6400207b
2927 #define MATCH_CV_SUBROTMJ_DIV4 0x6400407b
2928 #define MATCH_CV_SUBROTMJ_DIV8 0x6400607b
2929 #define MATCH_CV_ADD_DIV2 0x6c00207b
2930 #define MATCH_CV_ADD_DIV4 0x6c00407b
2931 #define MATCH_CV_ADD_DIV8 0x6c00607b
2932 #define MATCH_CV_SUB_DIV2 0x7400207b
2933 #define MATCH_CV_SUB_DIV4 0x7400407b
2934 #define MATCH_CV_SUB_DIV8 0x7400607b
2935 #define MASK_CV_ADD_H 0xfe00707f
2936 #define MASK_CV_ADD_B 0xfe00707f
2937 #define MASK_CV_ADD_SC_H 0xfe00707f
2938 #define MASK_CV_ADD_SC_B 0xfe00707f
2939 #define MASK_CV_ADD_SCI_H 0xfc00707f
2940 #define MASK_CV_ADD_SCI_B 0xfc00707f
2941 #define MASK_CV_SUB_H 0xfe00707f
2942 #define MASK_CV_SUB_B 0xfe00707f
2943 #define MASK_CV_SUB_SC_H 0xfe00707f
2944 #define MASK_CV_SUB_SC_B 0xfe00707f
2945 #define MASK_CV_SUB_SCI_H 0xfc00707f
2946 #define MASK_CV_SUB_SCI_B 0xfc00707f
2947 #define MASK_CV_AVG_H 0xfe00707f
2948 #define MASK_CV_AVG_B 0xfe00707f
2949 #define MASK_CV_AVG_SC_H 0xfe00707f
2950 #define MASK_CV_AVG_SC_B 0xfe00707f
2951 #define MASK_CV_AVG_SCI_H 0xfc00707f
2952 #define MASK_CV_AVG_SCI_B 0xfc00707f
2953 #define MASK_CV_AVGU_H 0xfe00707f
2954 #define MASK_CV_AVGU_B 0xfe00707f
2955 #define MASK_CV_AVGU_SC_H 0xfe00707f
2956 #define MASK_CV_AVGU_SC_B 0xfe00707f
2957 #define MASK_CV_AVGU_SCI_H 0xfc00707f
2958 #define MASK_CV_AVGU_SCI_B 0xfc00707f
2959 #define MASK_CV_MIN_H 0xfe00707f
2960 #define MASK_CV_MIN_B 0xfe00707f
2961 #define MASK_CV_MIN_SC_H 0xfe00707f
2962 #define MASK_CV_MIN_SC_B 0xfe00707f
2963 #define MASK_CV_MIN_SCI_H 0xfc00707f
2964 #define MASK_CV_MIN_SCI_B 0xfc00707f
2965 #define MASK_CV_MINU_H 0xfe00707f
2966 #define MASK_CV_MINU_B 0xfe00707f
2967 #define MASK_CV_MINU_SC_H 0xfe00707f
2968 #define MASK_CV_MINU_SC_B 0xfe00707f
2969 #define MASK_CV_MINU_SCI_H 0xfc00707f
2970 #define MASK_CV_MINU_SCI_B 0xfc00707f
2971 #define MASK_CV_MAX_H 0xfe00707f
2972 #define MASK_CV_MAX_B 0xfe00707f
2973 #define MASK_CV_MAX_SC_H 0xfe00707f
2974 #define MASK_CV_MAX_SC_B 0xfe00707f
2975 #define MASK_CV_MAX_SCI_H 0xfc00707f
2976 #define MASK_CV_MAX_SCI_B 0xfc00707f
2977 #define MASK_CV_MAXU_H 0xfe00707f
2978 #define MASK_CV_MAXU_B 0xfe00707f
2979 #define MASK_CV_MAXU_SC_H 0xfe00707f
2980 #define MASK_CV_MAXU_SC_B 0xfe00707f
2981 #define MASK_CV_MAXU_SCI_H 0xfc00707f
2982 #define MASK_CV_MAXU_SCI_B 0xfc00707f
2983 #define MASK_CV_SRL_H 0xfe00707f
2984 #define MASK_CV_SRL_B 0xfe00707f
2985 #define MASK_CV_SRL_SC_H 0xfe00707f
2986 #define MASK_CV_SRL_SC_B 0xfe00707f
2987 #define MASK_CV_SRL_SCI_H 0xfc00707f
2988 #define MASK_CV_SRL_SCI_B 0xfc00707f
2989 #define MASK_CV_SRA_H 0xfe00707f
2990 #define MASK_CV_SRA_B 0xfe00707f
2991 #define MASK_CV_SRA_SC_H 0xfe00707f
2992 #define MASK_CV_SRA_SC_B 0xfe00707f
2993 #define MASK_CV_SRA_SCI_H 0xfc00707f
2994 #define MASK_CV_SRA_SCI_B 0xfc00707f
2995 #define MASK_CV_SLL_H 0xfe00707f
2996 #define MASK_CV_SLL_B 0xfe00707f
2997 #define MASK_CV_SLL_SC_H 0xfe00707f
2998 #define MASK_CV_SLL_SC_B 0xfe00707f
2999 #define MASK_CV_SLL_SCI_H 0xfc00707f
3000 #define MASK_CV_SLL_SCI_B 0xfc00707f
3001 #define MASK_CV_OR_H 0xfe00707f
3002 #define MASK_CV_OR_B 0xfe00707f
3003 #define MASK_CV_OR_SC_H 0xfe00707f
3004 #define MASK_CV_OR_SC_B 0xfe00707f
3005 #define MASK_CV_OR_SCI_H 0xfc00707f
3006 #define MASK_CV_OR_SCI_B 0xfc00707f
3007 #define MASK_CV_XOR_H 0xfe00707f
3008 #define MASK_CV_XOR_B 0xfe00707f
3009 #define MASK_CV_XOR_SC_H 0xfe00707f
3010 #define MASK_CV_XOR_SC_B 0xfe00707f
3011 #define MASK_CV_XOR_SCI_H 0xfc00707f
3012 #define MASK_CV_XOR_SCI_B 0xfc00707f
3013 #define MASK_CV_AND_H 0xfe00707f
3014 #define MASK_CV_AND_B 0xfe00707f
3015 #define MASK_CV_AND_SC_H 0xfe00707f
3016 #define MASK_CV_AND_SC_B 0xfe00707f
3017 #define MASK_CV_AND_SCI_H 0xfc00707f
3018 #define MASK_CV_AND_SCI_B 0xfc00707f
3019 #define MASK_CV_ABS_H 0xfff0707f
3020 #define MASK_CV_ABS_B 0xfff0707f
3021 #define MASK_CV_DOTUP_H 0xfe00707f
3022 #define MASK_CV_DOTUP_B 0xfe00707f
3023 #define MASK_CV_DOTUP_SC_H 0xfe00707f
3024 #define MASK_CV_DOTUP_SC_B 0xfe00707f
3025 #define MASK_CV_DOTUP_SCI_H 0xfc00707f
3026 #define MASK_CV_DOTUP_SCI_B 0xfc00707f
3027 #define MASK_CV_DOTUSP_H 0xfe00707f
3028 #define MASK_CV_DOTUSP_B 0xfe00707f
3029 #define MASK_CV_DOTUSP_SC_H 0xfe00707f
3030 #define MASK_CV_DOTUSP_SC_B 0xfe00707f
3031 #define MASK_CV_DOTUSP_SCI_H 0xfc00707f
3032 #define MASK_CV_DOTUSP_SCI_B 0xfc00707f
3033 #define MASK_CV_DOTSP_H 0xfe00707f
3034 #define MASK_CV_DOTSP_B 0xfe00707f
3035 #define MASK_CV_DOTSP_SC_H 0xfe00707f
3036 #define MASK_CV_DOTSP_SC_B 0xfe00707f
3037 #define MASK_CV_DOTSP_SCI_H 0xfc00707f
3038 #define MASK_CV_DOTSP_SCI_B 0xfc00707f
3039 #define MASK_CV_SDOTUP_H 0xfe00707f
3040 #define MASK_CV_SDOTUP_B 0xfe00707f
3041 #define MASK_CV_SDOTUP_SC_H 0xfe00707f
3042 #define MASK_CV_SDOTUP_SC_B 0xfe00707f
3043 #define MASK_CV_SDOTUP_SCI_H 0xfc00707f
3044 #define MASK_CV_SDOTUP_SCI_B 0xfc00707f
3045 #define MASK_CV_SDOTUSP_H 0xfe00707f
3046 #define MASK_CV_SDOTUSP_B 0xfe00707f
3047 #define MASK_CV_SDOTUSP_SC_H 0xfe00707f
3048 #define MASK_CV_SDOTUSP_SC_B 0xfe00707f
3049 #define MASK_CV_SDOTUSP_SCI_H 0xfc00707f
3050 #define MASK_CV_SDOTUSP_SCI_B 0xfc00707f
3051 #define MASK_CV_SDOTSP_H 0xfe00707f
3052 #define MASK_CV_SDOTSP_B 0xfe00707f
3053 #define MASK_CV_SDOTSP_SC_H 0xfe00707f
3054 #define MASK_CV_SDOTSP_SC_B 0xfe00707f
3055 #define MASK_CV_SDOTSP_SCI_H 0xfc00707f
3056 #define MASK_CV_SDOTSP_SCI_B 0xfc00707f
3057 #define MASK_CV_EXTRACT_H 0xfc00707f
3058 #define MASK_CV_EXTRACT_B 0xfc00707f
3059 #define MASK_CV_EXTRACTU_H 0xfc00707f
3060 #define MASK_CV_EXTRACTU_B 0xfc00707f
3061 #define MASK_CV_INSERT_H 0xfc00707f
3062 #define MASK_CV_INSERT_B 0xfc00707f
3063 #define MASK_CV_SHUFFLE_H 0xfe00707f
3064 #define MASK_CV_SHUFFLE_B 0xfe00707f
3065 #define MASK_CV_SHUFFLE_SCI_H 0xfc00707f
3066 #define MASK_CV_SHUFFLEI0_SCI_B 0xfc00707f
3067 #define MASK_CV_SHUFFLEI1_SCI_B 0xfc00707f
3068 #define MASK_CV_SHUFFLEI2_SCI_B 0xfc00707f
3069 #define MASK_CV_SHUFFLEI3_SCI_B 0xfc00707f
3070 #define MASK_CV_SHUFFLE2_H 0xfe00707f
3071 #define MASK_CV_SHUFFLE2_B 0xfe00707f
3072 #define MASK_CV_PACK 0xfe00707f
3073 #define MASK_CV_PACK_H 0xfe00707f
3074 #define MASK_CV_PACKHI_B 0xfe00707f
3075 #define MASK_CV_PACKLO_B 0xfe00707f
3076 #define MASK_CV_CMPEQ_H 0xfe00707f
3077 #define MASK_CV_CMPEQ_B 0xfe00707f
3078 #define MASK_CV_CMPEQ_SC_H 0xfe00707f
3079 #define MASK_CV_CMPEQ_SC_B 0xfe00707f
3080 #define MASK_CV_CMPEQ_SCI_H 0xfc00707f
3081 #define MASK_CV_CMPEQ_SCI_B 0xfc00707f
3082 #define MASK_CV_CMPNE_H 0xfe00707f
3083 #define MASK_CV_CMPNE_B 0xfe00707f
3084 #define MASK_CV_CMPNE_SC_H 0xfe00707f
3085 #define MASK_CV_CMPNE_SC_B 0xfe00707f
3086 #define MASK_CV_CMPNE_SCI_H 0xfc00707f
3087 #define MASK_CV_CMPNE_SCI_B 0xfc00707f
3088 #define MASK_CV_CMPGT_H 0xfe00707f
3089 #define MASK_CV_CMPGT_B 0xfe00707f
3090 #define MASK_CV_CMPGT_SC_H 0xfe00707f
3091 #define MASK_CV_CMPGT_SC_B 0xfe00707f
3092 #define MASK_CV_CMPGT_SCI_H 0xfc00707f
3093 #define MASK_CV_CMPGT_SCI_B 0xfc00707f
3094 #define MASK_CV_CMPGE_H 0xfe00707f
3095 #define MASK_CV_CMPGE_B 0xfe00707f
3096 #define MASK_CV_CMPGE_SC_H 0xfe00707f
3097 #define MASK_CV_CMPGE_SC_B 0xfe00707f
3098 #define MASK_CV_CMPGE_SCI_H 0xfc00707f
3099 #define MASK_CV_CMPGE_SCI_B 0xfc00707f
3100 #define MASK_CV_CMPLT_H 0xfe00707f
3101 #define MASK_CV_CMPLT_B 0xfe00707f
3102 #define MASK_CV_CMPLT_SC_H 0xfe00707f
3103 #define MASK_CV_CMPLT_SC_B 0xfe00707f
3104 #define MASK_CV_CMPLT_SCI_H 0xfc00707f
3105 #define MASK_CV_CMPLT_SCI_B 0xfc00707f
3106 #define MASK_CV_CMPLE_H 0xfe00707f
3107 #define MASK_CV_CMPLE_B 0xfe00707f
3108 #define MASK_CV_CMPLE_SC_H 0xfe00707f
3109 #define MASK_CV_CMPLE_SC_B 0xfe00707f
3110 #define MASK_CV_CMPLE_SCI_H 0xfc00707f
3111 #define MASK_CV_CMPLE_SCI_B 0xfc00707f
3112 #define MASK_CV_CMPGTU_H 0xfe00707f
3113 #define MASK_CV_CMPGTU_B 0xfe00707f
3114 #define MASK_CV_CMPGTU_SC_H 0xfe00707f
3115 #define MASK_CV_CMPGTU_SC_B 0xfe00707f
3116 #define MASK_CV_CMPGTU_SCI_H 0xfc00707f
3117 #define MASK_CV_CMPGTU_SCI_B 0xfc00707f
3118 #define MASK_CV_CMPGEU_H 0xfe00707f
3119 #define MASK_CV_CMPGEU_B 0xfe00707f
3120 #define MASK_CV_CMPGEU_SC_H 0xfe00707f
3121 #define MASK_CV_CMPGEU_SC_B 0xfe00707f
3122 #define MASK_CV_CMPGEU_SCI_H 0xfc00707f
3123 #define MASK_CV_CMPGEU_SC_B 0xfe00707f
3124 #define MASK_CV_CMPGEU_SCI_H 0xfc00707f
3125 #define MASK_CV_CMPGEU_SCI_B 0xfc00707f
3126 #define MASK_CV_CMPLTU_H 0xfe00707f
3127 #define MASK_CV_CMPLTU_B 0xfe00707f
3128 #define MASK_CV_CMPLTU_SC_H 0xfe00707f
3129 #define MASK_CV_CMPLTU_SC_B 0xfe00707f
3130 #define MASK_CV_CMPLTU_SCI_H 0xfc00707f
3131 #define MASK_CV_CMPLTU_SCI_B 0xfc00707f
3132 #define MASK_CV_CMPLEU_H 0xfe00707f
3133 #define MASK_CV_CMPLEU_B 0xfe00707f
3134 #define MASK_CV_CMPLEU_SC_H 0xfe00707f
3135 #define MASK_CV_CMPLEU_SC_B 0xfe00707f
3136 #define MASK_CV_CMPLEU_SCI_H 0xfc00707f
3137 #define MASK_CV_CMPLEU_SCI_B 0xfc00707f
3138 #define MASK_CV_CPLXMUL_R 0xfe00707f
3139 #define MASK_CV_CPLXMUL_I 0xfe00707f
3140 #define MASK_CV_CPLXMUL_R_DIV2 0xfe00707f
3141 #define MASK_CV_CPLXMUL_I_DIV2 0xfe00707f
3142 #define MASK_CV_CPLXMUL_R_DIV4 0xfe00707f
3143 #define MASK_CV_CPLXMUL_I_DIV4 0xfe00707f
3144 #define MASK_CV_CPLXMUL_R_DIV8 0xfe00707f
3145 #define MASK_CV_CPLXMUL_I_DIV8 0xfe00707f
3146 #define MASK_CV_CPLXCONJ 0xfff0707f
3147 #define MASK_CV_SUBROTMJ 0xfe00707f
3148 #define MASK_CV_SUBROTMJ_DIV2 0xfe00707f
3149 #define MASK_CV_SUBROTMJ_DIV4 0xfe00707f
3150 #define MASK_CV_SUBROTMJ_DIV8 0xfe00707f
3151 #define MASK_CV_ADD_DIV2 0xfe00707f
3152 #define MASK_CV_ADD_DIV4 0xfe00707f
3153 #define MASK_CV_ADD_DIV8 0xfe00707f
3154 #define MASK_CV_SUB_DIV2 0xfe00707f
3155 #define MASK_CV_SUB_DIV4 0xfe00707f
3156 #define MASK_CV_SUB_DIV8 0xfe00707f
3157 /* Vendor-specific (T-Head) XTheadBa instructions. */
3158 #define MATCH_TH_ADDSL 0x0000100b
3159 #define MASK_TH_ADDSL 0xf800707f
3160 /* Vendor-specific (T-Head) XTheadBb instructions. */
3161 #define MATCH_TH_SRRI 0x1000100b
3162 #define MASK_TH_SRRI 0xfc00707f
3163 #define MATCH_TH_SRRIW 0x1400100b
3164 #define MASK_TH_SRRIW 0xfe00707f
3165 #define MATCH_TH_EXT 0x0000200b
3166 #define MASK_TH_EXT 0x0000707f
3167 #define MATCH_TH_EXTU 0x0000300b
3168 #define MASK_TH_EXTU 0x0000707f
3169 #define MATCH_TH_FF0 0x8400100b
3170 #define MASK_TH_FF0 0xfff0707f
3171 #define MATCH_TH_FF1 0x8600100b
3172 #define MASK_TH_FF1 0xfff0707f
3173 #define MATCH_TH_REV 0x8200100b
3174 #define MASK_TH_REV 0xfff0707f
3175 #define MATCH_TH_REVW 0x9000100b
3176 #define MASK_TH_REVW 0xfff0707f
3177 #define MATCH_TH_TSTNBZ 0x8000100b
3178 #define MASK_TH_TSTNBZ 0xfff0707f
3179 /* Vendor-specific (T-Head) XTheadBs instructions. */
3180 #define MATCH_TH_TST 0x8800100b
3181 #define MASK_TH_TST 0xfc00707f
3182 /* Vendor-specific (T-Head) XTheadCmo instructions. */
3183 #define MATCH_TH_DCACHE_CALL 0x0010000b
3184 #define MASK_TH_DCACHE_CALL 0xffffffff
3185 #define MATCH_TH_DCACHE_CIALL 0x0030000b
3186 #define MASK_TH_DCACHE_CIALL 0xffffffff
3187 #define MATCH_TH_DCACHE_IALL 0x0020000b
3188 #define MASK_TH_DCACHE_IALL 0xffffffff
3189 #define MATCH_TH_DCACHE_CPA 0x0290000b
3190 #define MASK_TH_DCACHE_CPA 0xfff07fff
3191 #define MATCH_TH_DCACHE_CIPA 0x02b0000b
3192 #define MASK_TH_DCACHE_CIPA 0xfff07fff
3193 #define MATCH_TH_DCACHE_IPA 0x02a0000b
3194 #define MASK_TH_DCACHE_IPA 0xfff07fff
3195 #define MATCH_TH_DCACHE_CVA 0x0250000b
3196 #define MASK_TH_DCACHE_CVA 0xfff07fff
3197 #define MATCH_TH_DCACHE_CIVA 0x0270000b
3198 #define MASK_TH_DCACHE_CIVA 0xfff07fff
3199 #define MATCH_TH_DCACHE_IVA 0x0260000b
3200 #define MASK_TH_DCACHE_IVA 0xfff07fff
3201 #define MATCH_TH_DCACHE_CSW 0x0210000b
3202 #define MASK_TH_DCACHE_CSW 0xfff07fff
3203 #define MATCH_TH_DCACHE_CISW 0x0230000b
3204 #define MASK_TH_DCACHE_CISW 0xfff07fff
3205 #define MATCH_TH_DCACHE_ISW 0x0220000b
3206 #define MASK_TH_DCACHE_ISW 0xfff07fff
3207 #define MATCH_TH_DCACHE_CPAL1 0x0280000b
3208 #define MASK_TH_DCACHE_CPAL1 0xfff07fff
3209 #define MATCH_TH_DCACHE_CVAL1 0x0240000b
3210 #define MASK_TH_DCACHE_CVAL1 0xfff07fff
3211 #define MATCH_TH_ICACHE_IALL 0x0100000b
3212 #define MASK_TH_ICACHE_IALL 0xffffffff
3213 #define MATCH_TH_ICACHE_IALLS 0x0110000b
3214 #define MASK_TH_ICACHE_IALLS 0xffffffff
3215 #define MATCH_TH_ICACHE_IPA 0x0380000b
3216 #define MASK_TH_ICACHE_IPA 0xfff07fff
3217 #define MATCH_TH_ICACHE_IVA 0x0300000b
3218 #define MASK_TH_ICACHE_IVA 0xfff07fff
3219 #define MATCH_TH_L2CACHE_CALL 0x0150000b
3220 #define MASK_TH_L2CACHE_CALL 0xffffffff
3221 #define MATCH_TH_L2CACHE_CIALL 0x0170000b
3222 #define MASK_TH_L2CACHE_CIALL 0xffffffff
3223 #define MATCH_TH_L2CACHE_IALL 0x0160000b
3224 #define MASK_TH_L2CACHE_IALL 0xffffffff
3225 /* Vendor-specific (T-Head) XTheadCondMov instructions. */
3226 #define MATCH_TH_MVEQZ 0x4000100b
3227 #define MASK_TH_MVEQZ 0xfe00707f
3228 #define MATCH_TH_MVNEZ 0x4200100b
3229 #define MASK_TH_MVNEZ 0xfe00707f
3230 /* Vendor-specific (T-Head) XTheadFMemIdx instructions. */
3231 #define MATCH_TH_FLRD 0x6000600b
3232 #define MASK_TH_FLRD 0xf800707f
3233 #define MATCH_TH_FLRW 0x4000600b
3234 #define MASK_TH_FLRW 0xf800707f
3235 #define MATCH_TH_FLURD 0x7000600b
3236 #define MASK_TH_FLURD 0xf800707f
3237 #define MATCH_TH_FLURW 0x5000600b
3238 #define MASK_TH_FLURW 0xf800707f
3239 #define MATCH_TH_FSRD 0x6000700b
3240 #define MASK_TH_FSRD 0xf800707f
3241 #define MATCH_TH_FSRW 0x4000700b
3242 #define MASK_TH_FSRW 0xf800707f
3243 #define MATCH_TH_FSURD 0x7000700b
3244 #define MASK_TH_FSURD 0xf800707f
3245 #define MATCH_TH_FSURW 0x5000700b
3246 #define MASK_TH_FSURW 0xf800707f
3247 /* Vendor-specific (T-Head) XTheadFmv instructions. */
3248 #define MATCH_TH_FMV_X_HW 0xc000100b
3249 #define MASK_TH_FMV_X_HW 0xfff0707f
3250 #define MATCH_TH_FMV_HW_X 0xa000100b
3251 #define MASK_TH_FMV_HW_X 0xfff0707f
3252 /* Vendor-specific (T-Head) XTheadInt instructions. */
3253 #define MATCH_TH_IPOP 0x0050000b
3254 #define MASK_TH_IPOP 0xffffffff
3255 #define MATCH_TH_IPUSH 0x0040000b
3256 #define MASK_TH_IPUSH 0xffffffff
3257 /* Vendor-specific (T-Head) XTheadMac instructions. */
3258 #define MATCH_TH_MULA 0x2000100b
3259 #define MASK_TH_MULA 0xfe00707f
3260 #define MATCH_TH_MULAH 0x2800100b
3261 #define MASK_TH_MULAH 0xfe00707f
3262 #define MATCH_TH_MULAW 0x2400100b
3263 #define MASK_TH_MULAW 0xfe00707f
3264 #define MATCH_TH_MULS 0x2200100b
3265 #define MASK_TH_MULS 0xfe00707f
3266 #define MATCH_TH_MULSH 0x2a00100b
3267 #define MASK_TH_MULSH 0xfe00707f
3268 #define MATCH_TH_MULSW 0x2600100b
3269 #define MASK_TH_MULSW 0xfe00707f
3270 /* Vendor-specific (T-Head) XTheadMemPair instructions. */
3271 #define MATCH_TH_LDD 0xf800400b
3272 #define MASK_TH_LDD 0xf800707f
3273 #define MATCH_TH_LWD 0xe000400b
3274 #define MASK_TH_LWD 0xf800707f
3275 #define MATCH_TH_LWUD 0xf000400b
3276 #define MASK_TH_LWUD 0xf800707f
3277 #define MATCH_TH_SDD 0xf800500b
3278 #define MASK_TH_SDD 0xf800707f
3279 #define MATCH_TH_SWD 0xe000500b
3280 #define MASK_TH_SWD 0xf800707f
3281 /* Vendor-specific (T-Head) XTheadMemIdx instructions. */
3282 #define MATCH_TH_LDIA 0x7800400b
3283 #define MASK_TH_LDIA 0xf800707f
3284 #define MATCH_TH_LDIB 0x6800400b
3285 #define MASK_TH_LDIB 0xf800707f
3286 #define MATCH_TH_LWIA 0x5800400b
3287 #define MASK_TH_LWIA 0xf800707f
3288 #define MATCH_TH_LWIB 0x4800400b
3289 #define MASK_TH_LWIB 0xf800707f
3290 #define MATCH_TH_LWUIA 0xd800400b
3291 #define MASK_TH_LWUIA 0xf800707f
3292 #define MATCH_TH_LWUIB 0xc800400b
3293 #define MASK_TH_LWUIB 0xf800707f
3294 #define MATCH_TH_LHIA 0x3800400b
3295 #define MASK_TH_LHIA 0xf800707f
3296 #define MATCH_TH_LHIB 0x2800400b
3297 #define MASK_TH_LHIB 0xf800707f
3298 #define MATCH_TH_LHUIA 0xb800400b
3299 #define MASK_TH_LHUIA 0xf800707f
3300 #define MATCH_TH_LHUIB 0xa800400b
3301 #define MASK_TH_LHUIB 0xf800707f
3302 #define MATCH_TH_LBIA 0x1800400b
3303 #define MASK_TH_LBIA 0xf800707f
3304 #define MATCH_TH_LBIB 0x0800400b
3305 #define MASK_TH_LBIB 0xf800707f
3306 #define MATCH_TH_LBUIA 0x9800400b
3307 #define MASK_TH_LBUIA 0xf800707f
3308 #define MATCH_TH_LBUIB 0x8800400b
3309 #define MASK_TH_LBUIB 0xf800707f
3310 #define MATCH_TH_SDIA 0x7800500b
3311 #define MASK_TH_SDIA 0xf800707f
3312 #define MATCH_TH_SDIB 0x6800500b
3313 #define MASK_TH_SDIB 0xf800707f
3314 #define MATCH_TH_SWIA 0x5800500b
3315 #define MASK_TH_SWIA 0xf800707f
3316 #define MATCH_TH_SWIB 0x4800500b
3317 #define MASK_TH_SWIB 0xf800707f
3318 #define MATCH_TH_SHIA 0x3800500b
3319 #define MASK_TH_SHIA 0xf800707f
3320 #define MATCH_TH_SHIB 0x2800500b
3321 #define MASK_TH_SHIB 0xf800707f
3322 #define MATCH_TH_SBIA 0x1800500b
3323 #define MASK_TH_SBIA 0xf800707f
3324 #define MATCH_TH_SBIB 0x0800500b
3325 #define MASK_TH_SBIB 0xf800707f
3326 #define MATCH_TH_LRD 0x6000400b
3327 #define MASK_TH_LRD 0xf800707f
3328 #define MATCH_TH_LRW 0x4000400b
3329 #define MASK_TH_LRW 0xf800707f
3330 #define MATCH_TH_LRWU 0xc000400b
3331 #define MASK_TH_LRWU 0xf800707f
3332 #define MATCH_TH_LRH 0x2000400b
3333 #define MASK_TH_LRH 0xf800707f
3334 #define MATCH_TH_LRHU 0xa000400b
3335 #define MASK_TH_LRHU 0xf800707f
3336 #define MATCH_TH_LRB 0x0000400b
3337 #define MASK_TH_LRB 0xf800707f
3338 #define MATCH_TH_LRBU 0x8000400b
3339 #define MASK_TH_LRBU 0xf800707f
3340 #define MATCH_TH_SRD 0x6000500b
3341 #define MASK_TH_SRD 0xf800707f
3342 #define MATCH_TH_SRW 0x4000500b
3343 #define MASK_TH_SRW 0xf800707f
3344 #define MATCH_TH_SRH 0x2000500b
3345 #define MASK_TH_SRH 0xf800707f
3346 #define MATCH_TH_SRB 0x0000500b
3347 #define MASK_TH_SRB 0xf800707f
3348 #define MATCH_TH_LURD 0x7000400b
3349 #define MASK_TH_LURD 0xf800707f
3350 #define MATCH_TH_LURW 0x5000400b
3351 #define MASK_TH_LURW 0xf800707f
3352 #define MATCH_TH_LURWU 0xd000400b
3353 #define MASK_TH_LURWU 0xf800707f
3354 #define MATCH_TH_LURH 0x3000400b
3355 #define MASK_TH_LURH 0xf800707f
3356 #define MATCH_TH_LURHU 0xb000400b
3357 #define MASK_TH_LURHU 0xf800707f
3358 #define MATCH_TH_LURB 0x1000400b
3359 #define MASK_TH_LURB 0xf800707f
3360 #define MATCH_TH_LURBU 0x9000400b
3361 #define MASK_TH_LURBU 0xf800707f
3362 #define MATCH_TH_SURD 0x7000500b
3363 #define MASK_TH_SURD 0xf800707f
3364 #define MATCH_TH_SURW 0x5000500b
3365 #define MASK_TH_SURW 0xf800707f
3366 #define MATCH_TH_SURH 0x3000500b
3367 #define MASK_TH_SURH 0xf800707f
3368 #define MATCH_TH_SURB 0x1000500b
3369 #define MASK_TH_SURB 0xf800707f
3370 /* Vendor-specific (T-Head) XTheadSync instructions. */
3371 #define MATCH_TH_SFENCE_VMAS 0x0400000b
3372 #define MASK_TH_SFENCE_VMAS 0xfe007fff
3373 #define MATCH_TH_SYNC 0x0180000b
3374 #define MASK_TH_SYNC 0xffffffff
3375 #define MATCH_TH_SYNC_I 0x01a0000b
3376 #define MASK_TH_SYNC_I 0xffffffff
3377 #define MATCH_TH_SYNC_IS 0x01b0000b
3378 #define MASK_TH_SYNC_IS 0xffffffff
3379 #define MATCH_TH_SYNC_S 0x0190000b
3380 #define MASK_TH_SYNC_S 0xffffffff
3381 /* Vendor-specific (T-Head) XTheadVector instructions. */
3382 #define MATCH_TH_VLBV 0x10000007
3383 #define MASK_TH_VLBV 0xfdf0707f
3384 #define MATCH_TH_VLHV 0x10005007
3385 #define MASK_TH_VLHV 0xfdf0707f
3386 #define MATCH_TH_VLWV 0x10006007
3387 #define MASK_TH_VLWV 0xfdf0707f
3388 #define MATCH_TH_VLSBV 0x18000007
3389 #define MASK_TH_VLSBV 0xfc00707f
3390 #define MATCH_TH_VLSHV 0x18005007
3391 #define MASK_TH_VLSHV 0xfc00707f
3392 #define MATCH_TH_VLSWV 0x18006007
3393 #define MASK_TH_VLSWV 0xfc00707f
3394 #define MATCH_TH_VLXBV 0x1c000007
3395 #define MASK_TH_VLXBV 0xfc00707f
3396 #define MATCH_TH_VLXHV 0x1c005007
3397 #define MASK_TH_VLXHV 0xfc00707f
3398 #define MATCH_TH_VLXWV 0x1c006007
3399 #define MASK_TH_VLXWV 0xfc00707f
3400 #define MATCH_TH_VSUXBV 0x1c000027
3401 #define MASK_TH_VSUXBV 0xfc00707f
3402 #define MATCH_TH_VSUXHV 0x1c005027
3403 #define MASK_TH_VSUXHV 0xfc00707f
3404 #define MATCH_TH_VSUXWV 0x1c006027
3405 #define MASK_TH_VSUXWV 0xfc00707f
3406 #define MATCH_TH_VSUXEV 0x1c007027
3407 #define MASK_TH_VSUXEV 0xfc00707f
3408 #define MATCH_TH_VLBFFV 0x11000007
3409 #define MASK_TH_VLBFFV 0xfdf0707f
3410 #define MATCH_TH_VLHFFV 0x11005007
3411 #define MASK_TH_VLHFFV 0xfdf0707f
3412 #define MATCH_TH_VLWFFV 0x11006007
3413 #define MASK_TH_VLWFFV 0xfdf0707f
3414 #define MATCH_TH_VLSEG2BV 0x30000007
3415 #define MASK_TH_VLSEG2BV 0xfdf0707f
3416 #define MATCH_TH_VLSEG2HV 0x30005007
3417 #define MASK_TH_VLSEG2HV 0xfdf0707f
3418 #define MATCH_TH_VLSEG2WV 0x30006007
3419 #define MASK_TH_VLSEG2WV 0xfdf0707f
3420 #define MATCH_TH_VLSEG3BV 0x50000007
3421 #define MASK_TH_VLSEG3BV 0xfdf0707f
3422 #define MATCH_TH_VLSEG3HV 0x50005007
3423 #define MASK_TH_VLSEG3HV 0xfdf0707f
3424 #define MATCH_TH_VLSEG3WV 0x50006007
3425 #define MASK_TH_VLSEG3WV 0xfdf0707f
3426 #define MATCH_TH_VLSEG4BV 0x70000007
3427 #define MASK_TH_VLSEG4BV 0xfdf0707f
3428 #define MATCH_TH_VLSEG4HV 0x70005007
3429 #define MASK_TH_VLSEG4HV 0xfdf0707f
3430 #define MATCH_TH_VLSEG4WV 0x70006007
3431 #define MASK_TH_VLSEG4WV 0xfdf0707f
3432 #define MATCH_TH_VLSEG5BV 0x90000007
3433 #define MASK_TH_VLSEG5BV 0xfdf0707f
3434 #define MATCH_TH_VLSEG5HV 0x90005007
3435 #define MASK_TH_VLSEG5HV 0xfdf0707f
3436 #define MATCH_TH_VLSEG5WV 0x90006007
3437 #define MASK_TH_VLSEG5WV 0xfdf0707f
3438 #define MATCH_TH_VLSEG6BV 0xb0000007
3439 #define MASK_TH_VLSEG6BV 0xfdf0707f
3440 #define MATCH_TH_VLSEG6HV 0xb0005007
3441 #define MASK_TH_VLSEG6HV 0xfdf0707f
3442 #define MATCH_TH_VLSEG6WV 0xb0006007
3443 #define MASK_TH_VLSEG6WV 0xfdf0707f
3444 #define MATCH_TH_VLSEG7BV 0xd0000007
3445 #define MASK_TH_VLSEG7BV 0xfdf0707f
3446 #define MATCH_TH_VLSEG7HV 0xd0005007
3447 #define MASK_TH_VLSEG7HV 0xfdf0707f
3448 #define MATCH_TH_VLSEG7WV 0xd0006007
3449 #define MASK_TH_VLSEG7WV 0xfdf0707f
3450 #define MATCH_TH_VLSEG8BV 0xf0000007
3451 #define MASK_TH_VLSEG8BV 0xfdf0707f
3452 #define MATCH_TH_VLSEG8HV 0xf0005007
3453 #define MASK_TH_VLSEG8HV 0xfdf0707f
3454 #define MATCH_TH_VLSEG8WV 0xf0006007
3455 #define MASK_TH_VLSEG8WV 0xfdf0707f
3456 #define MATCH_TH_VLSSEG2BV 0x38000007
3457 #define MASK_TH_VLSSEG2BV 0xfc00707f
3458 #define MATCH_TH_VLSSEG2HV 0x38005007
3459 #define MASK_TH_VLSSEG2HV 0xfc00707f
3460 #define MATCH_TH_VLSSEG2WV 0x38006007
3461 #define MASK_TH_VLSSEG2WV 0xfc00707f
3462 #define MATCH_TH_VLSSEG3BV 0x58000007
3463 #define MASK_TH_VLSSEG3BV 0xfc00707f
3464 #define MATCH_TH_VLSSEG3HV 0x58005007
3465 #define MASK_TH_VLSSEG3HV 0xfc00707f
3466 #define MATCH_TH_VLSSEG3WV 0x58006007
3467 #define MASK_TH_VLSSEG3WV 0xfc00707f
3468 #define MATCH_TH_VLSSEG4BV 0x78000007
3469 #define MASK_TH_VLSSEG4BV 0xfc00707f
3470 #define MATCH_TH_VLSSEG4HV 0x78005007
3471 #define MASK_TH_VLSSEG4HV 0xfc00707f
3472 #define MATCH_TH_VLSSEG4WV 0x78006007
3473 #define MASK_TH_VLSSEG4WV 0xfc00707f
3474 #define MATCH_TH_VLSSEG5BV 0x98000007
3475 #define MASK_TH_VLSSEG5BV 0xfc00707f
3476 #define MATCH_TH_VLSSEG5HV 0x98005007
3477 #define MASK_TH_VLSSEG5HV 0xfc00707f
3478 #define MATCH_TH_VLSSEG5WV 0x98006007
3479 #define MASK_TH_VLSSEG5WV 0xfc00707f
3480 #define MATCH_TH_VLSSEG6BV 0xb8000007
3481 #define MASK_TH_VLSSEG6BV 0xfc00707f
3482 #define MATCH_TH_VLSSEG6HV 0xb8005007
3483 #define MASK_TH_VLSSEG6HV 0xfc00707f
3484 #define MATCH_TH_VLSSEG6WV 0xb8006007
3485 #define MASK_TH_VLSSEG6WV 0xfc00707f
3486 #define MATCH_TH_VLSSEG7BV 0xd8000007
3487 #define MASK_TH_VLSSEG7BV 0xfc00707f
3488 #define MATCH_TH_VLSSEG7HV 0xd8005007
3489 #define MASK_TH_VLSSEG7HV 0xfc00707f
3490 #define MATCH_TH_VLSSEG7WV 0xd8006007
3491 #define MASK_TH_VLSSEG7WV 0xfc00707f
3492 #define MATCH_TH_VLSSEG8BV 0xf8000007
3493 #define MASK_TH_VLSSEG8BV 0xfc00707f
3494 #define MATCH_TH_VLSSEG8HV 0xf8005007
3495 #define MASK_TH_VLSSEG8HV 0xfc00707f
3496 #define MATCH_TH_VLSSEG8WV 0xf8006007
3497 #define MASK_TH_VLSSEG8WV 0xfc00707f
3498 #define MATCH_TH_VLXSEG2BV 0x3c000007
3499 #define MASK_TH_VLXSEG2BV 0xfc00707f
3500 #define MATCH_TH_VLXSEG2HV 0x3c005007
3501 #define MASK_TH_VLXSEG2HV 0xfc00707f
3502 #define MATCH_TH_VLXSEG2WV 0x3c006007
3503 #define MASK_TH_VLXSEG2WV 0xfc00707f
3504 #define MATCH_TH_VLXSEG3BV 0x5c000007
3505 #define MASK_TH_VLXSEG3BV 0xfc00707f
3506 #define MATCH_TH_VLXSEG3HV 0x5c005007
3507 #define MASK_TH_VLXSEG3HV 0xfc00707f
3508 #define MATCH_TH_VLXSEG3WV 0x5c006007
3509 #define MASK_TH_VLXSEG3WV 0xfc00707f
3510 #define MATCH_TH_VLXSEG4BV 0x7c000007
3511 #define MASK_TH_VLXSEG4BV 0xfc00707f
3512 #define MATCH_TH_VLXSEG4HV 0x7c005007
3513 #define MASK_TH_VLXSEG4HV 0xfc00707f
3514 #define MATCH_TH_VLXSEG4WV 0x7c006007
3515 #define MASK_TH_VLXSEG4WV 0xfc00707f
3516 #define MATCH_TH_VLXSEG5BV 0x9c000007
3517 #define MASK_TH_VLXSEG5BV 0xfc00707f
3518 #define MATCH_TH_VLXSEG5HV 0x9c005007
3519 #define MASK_TH_VLXSEG5HV 0xfc00707f
3520 #define MATCH_TH_VLXSEG5WV 0x9c006007
3521 #define MASK_TH_VLXSEG5WV 0xfc00707f
3522 #define MATCH_TH_VLXSEG6BV 0xbc000007
3523 #define MASK_TH_VLXSEG6BV 0xfc00707f
3524 #define MATCH_TH_VLXSEG6HV 0xbc005007
3525 #define MASK_TH_VLXSEG6HV 0xfc00707f
3526 #define MATCH_TH_VLXSEG6WV 0xbc006007
3527 #define MASK_TH_VLXSEG6WV 0xfc00707f
3528 #define MATCH_TH_VLXSEG7BV 0xdc000007
3529 #define MASK_TH_VLXSEG7BV 0xfc00707f
3530 #define MATCH_TH_VLXSEG7HV 0xdc005007
3531 #define MASK_TH_VLXSEG7HV 0xfc00707f
3532 #define MATCH_TH_VLXSEG7WV 0xdc006007
3533 #define MASK_TH_VLXSEG7WV 0xfc00707f
3534 #define MATCH_TH_VLXSEG8BV 0xfc000007
3535 #define MASK_TH_VLXSEG8BV 0xfc00707f
3536 #define MATCH_TH_VLXSEG8HV 0xfc005007
3537 #define MASK_TH_VLXSEG8HV 0xfc00707f
3538 #define MATCH_TH_VLXSEG8WV 0xfc006007
3539 #define MASK_TH_VLXSEG8WV 0xfc00707f
3540 #define MATCH_TH_VLSEG2BFFV 0x31000007
3541 #define MASK_TH_VLSEG2BFFV 0xfdf0707f
3542 #define MATCH_TH_VLSEG2HFFV 0x31005007
3543 #define MASK_TH_VLSEG2HFFV 0xfdf0707f
3544 #define MATCH_TH_VLSEG2WFFV 0x31006007
3545 #define MASK_TH_VLSEG2WFFV 0xfdf0707f
3546 #define MATCH_TH_VLSEG3BFFV 0x51000007
3547 #define MASK_TH_VLSEG3BFFV 0xfdf0707f
3548 #define MATCH_TH_VLSEG3HFFV 0x51005007
3549 #define MASK_TH_VLSEG3HFFV 0xfdf0707f
3550 #define MATCH_TH_VLSEG3WFFV 0x51006007
3551 #define MASK_TH_VLSEG3WFFV 0xfdf0707f
3552 #define MATCH_TH_VLSEG4BFFV 0x71000007
3553 #define MASK_TH_VLSEG4BFFV 0xfdf0707f
3554 #define MATCH_TH_VLSEG4HFFV 0x71005007
3555 #define MASK_TH_VLSEG4HFFV 0xfdf0707f
3556 #define MATCH_TH_VLSEG4WFFV 0x71006007
3557 #define MASK_TH_VLSEG4WFFV 0xfdf0707f
3558 #define MATCH_TH_VLSEG5BFFV 0x91000007
3559 #define MASK_TH_VLSEG5BFFV 0xfdf0707f
3560 #define MATCH_TH_VLSEG5HFFV 0x91005007
3561 #define MASK_TH_VLSEG5HFFV 0xfdf0707f
3562 #define MATCH_TH_VLSEG5WFFV 0x91006007
3563 #define MASK_TH_VLSEG5WFFV 0xfdf0707f
3564 #define MATCH_TH_VLSEG6BFFV 0xb1000007
3565 #define MASK_TH_VLSEG6BFFV 0xfdf0707f
3566 #define MATCH_TH_VLSEG6HFFV 0xb1005007
3567 #define MASK_TH_VLSEG6HFFV 0xfdf0707f
3568 #define MATCH_TH_VLSEG6WFFV 0xb1006007
3569 #define MASK_TH_VLSEG6WFFV 0xfdf0707f
3570 #define MATCH_TH_VLSEG7BFFV 0xd1000007
3571 #define MASK_TH_VLSEG7BFFV 0xfdf0707f
3572 #define MATCH_TH_VLSEG7HFFV 0xd1005007
3573 #define MASK_TH_VLSEG7HFFV 0xfdf0707f
3574 #define MATCH_TH_VLSEG7WFFV 0xd1006007
3575 #define MASK_TH_VLSEG7WFFV 0xfdf0707f
3576 #define MATCH_TH_VLSEG8BFFV 0xf1000007
3577 #define MASK_TH_VLSEG8BFFV 0xfdf0707f
3578 #define MATCH_TH_VLSEG8HFFV 0xf1005007
3579 #define MASK_TH_VLSEG8HFFV 0xfdf0707f
3580 #define MATCH_TH_VLSEG8WFFV 0xf1006007
3581 #define MASK_TH_VLSEG8WFFV 0xfdf0707f
3582 #define MATCH_TH_VAMOADDWV 0x0000602f
3583 #define MASK_TH_VAMOADDWV 0xf800707f
3584 #define MATCH_TH_VAMOADDDV 0x0000702f
3585 #define MASK_TH_VAMOADDDV 0xf800707f
3586 #define MATCH_TH_VAMOSWAPWV 0x0800602f
3587 #define MASK_TH_VAMOSWAPWV 0xf800707f
3588 #define MATCH_TH_VAMOSWAPDV 0x0800702f
3589 #define MASK_TH_VAMOSWAPDV 0xf800707f
3590 #define MATCH_TH_VAMOXORWV 0x2000602f
3591 #define MASK_TH_VAMOXORWV 0xf800707f
3592 #define MATCH_TH_VAMOXORDV 0x2000702f
3593 #define MASK_TH_VAMOXORDV 0xf800707f
3594 #define MATCH_TH_VAMOANDWV 0x6000602f
3595 #define MASK_TH_VAMOANDWV 0xf800707f
3596 #define MATCH_TH_VAMOANDDV 0x6000702f
3597 #define MASK_TH_VAMOANDDV 0xf800707f
3598 #define MATCH_TH_VAMOORWV 0x4000602f
3599 #define MASK_TH_VAMOORWV 0xf800707f
3600 #define MATCH_TH_VAMOORDV 0x4000702f
3601 #define MASK_TH_VAMOORDV 0xf800707f
3602 #define MATCH_TH_VAMOMINWV 0x8000602f
3603 #define MASK_TH_VAMOMINWV 0xf800707f
3604 #define MATCH_TH_VAMOMINDV 0x8000702f
3605 #define MASK_TH_VAMOMINDV 0xf800707f
3606 #define MATCH_TH_VAMOMAXWV 0xa000602f
3607 #define MASK_TH_VAMOMAXWV 0xf800707f
3608 #define MATCH_TH_VAMOMAXDV 0xa000702f
3609 #define MASK_TH_VAMOMAXDV 0xf800707f
3610 #define MATCH_TH_VAMOMINUWV 0xc000602f
3611 #define MASK_TH_VAMOMINUWV 0xf800707f
3612 #define MATCH_TH_VAMOMINUDV 0xc000702f
3613 #define MASK_TH_VAMOMINUDV 0xf800707f
3614 #define MATCH_TH_VAMOMAXUWV 0xe000602f
3615 #define MASK_TH_VAMOMAXUWV 0xf800707f
3616 #define MATCH_TH_VAMOMAXUDV 0xe000702f
3617 #define MASK_TH_VAMOMAXUDV 0xf800707f
3618 #define MATCH_TH_VADCVVM 0x42000057
3619 #define MASK_TH_VADCVVM 0xfe00707f
3620 #define MATCH_TH_VADCVXM 0x42004057
3621 #define MASK_TH_VADCVXM 0xfe00707f
3622 #define MATCH_TH_VADCVIM 0x42003057
3623 #define MASK_TH_VADCVIM 0xfe00707f
3624 #define MATCH_TH_VSBCVVM 0x4a000057
3625 #define MASK_TH_VSBCVVM 0xfe00707f
3626 #define MATCH_TH_VSBCVXM 0x4a004057
3627 #define MASK_TH_VSBCVXM 0xfe00707f
3628 #define MATCH_TH_VWMACCSUVV 0xf8002057
3629 #define MASK_TH_VWMACCSUVV 0xfc00707f
3630 #define MATCH_TH_VAADDVV 0x90000057
3631 #define MASK_TH_VAADDVV 0xfc00707f
3632 #define MATCH_TH_VAADDVX 0x90004057
3633 #define MASK_TH_VAADDVX 0xfc00707f
3634 #define MATCH_TH_VAADDVI 0x90003057
3635 #define MASK_TH_VAADDVI 0xfc00707f
3636 #define MATCH_TH_VASUBVV 0x98000057
3637 #define MASK_TH_VASUBVV 0xfc00707f
3638 #define MATCH_TH_VASUBVX 0x98004057
3639 #define MASK_TH_VASUBVX 0xfc00707f
3640 #define MATCH_TH_VWSMACCSUVV 0xf8000057
3641 #define MASK_TH_VWSMACCSUVV 0xfc00707f
3642 #define MATCH_TH_VFSQRTV 0x8c001057
3643 #define MASK_TH_VFSQRTV 0xfc0ff07f
3644 #define MATCH_TH_VMFORDVV 0x68001057
3645 #define MASK_TH_VMFORDVV 0xfc00707f
3646 #define MATCH_TH_VMFORDVF 0x68005057
3647 #define MASK_TH_VMFORDVF 0xfc00707f
3648 #define MATCH_TH_VFCLASSV 0x8c081057
3649 #define MASK_TH_VFCLASSV 0xfc0ff07f
3650 #define MATCH_TH_VFCVTXUFV 0x88001057
3651 #define MASK_TH_VFCVTXUFV 0xfc0ff07f
3652 #define MATCH_TH_VFCVTXFV 0x88009057
3653 #define MASK_TH_VFCVTXFV 0xfc0ff07f
3654 #define MATCH_TH_VFCVTFXUV 0x88011057
3655 #define MASK_TH_VFCVTFXUV 0xfc0ff07f
3656 #define MATCH_TH_VFCVTFXV 0x88019057
3657 #define MASK_TH_VFCVTFXV 0xfc0ff07f
3658 #define MATCH_TH_VFWCVTXUFV 0x88041057
3659 #define MASK_TH_VFWCVTXUFV 0xfc0ff07f
3660 #define MATCH_TH_VFWCVTXFV 0x88049057
3661 #define MASK_TH_VFWCVTXFV 0xfc0ff07f
3662 #define MATCH_TH_VFWCVTFXUV 0x88051057
3663 #define MASK_TH_VFWCVTFXUV 0xfc0ff07f
3664 #define MATCH_TH_VFWCVTFXV 0x88059057
3665 #define MASK_TH_VFWCVTFXV 0xfc0ff07f
3666 #define MATCH_TH_VFWCVTFFV 0x88061057
3667 #define MASK_TH_VFWCVTFFV 0xfc0ff07f
3668 #define MATCH_TH_VFNCVTXUFV 0x88081057
3669 #define MASK_TH_VFNCVTXUFV 0xfc0ff07f
3670 #define MATCH_TH_VFNCVTXFV 0x88089057
3671 #define MASK_TH_VFNCVTXFV 0xfc0ff07f
3672 #define MATCH_TH_VFNCVTFXUV 0x88091057
3673 #define MASK_TH_VFNCVTFXUV 0xfc0ff07f
3674 #define MATCH_TH_VFNCVTFXV 0x88099057
3675 #define MASK_TH_VFNCVTFXV 0xfc0ff07f
3676 #define MATCH_TH_VFNCVTFFV 0x880a1057
3677 #define MASK_TH_VFNCVTFFV 0xfc0ff07f
3678 #define MATCH_TH_VMPOPCM 0x50002057
3679 #define MASK_TH_VMPOPCM 0xfc0ff07f
3680 #define MATCH_TH_VMFIRSTM 0x54002057
3681 #define MASK_TH_VMFIRSTM 0xfc0ff07f
3682 #define MATCH_TH_VMSBFM 0x5800a057
3683 #define MASK_TH_VMSBFM 0xfc0ff07f
3684 #define MATCH_TH_VMSIFM 0x5801a057
3685 #define MASK_TH_VMSIFM 0xfc0ff07f
3686 #define MATCH_TH_VMSOFM 0x58012057
3687 #define MASK_TH_VMSOFM 0xfc0ff07f
3688 #define MATCH_TH_VIOTAM 0x58082057
3689 #define MASK_TH_VIOTAM 0xfc0ff07f
3690 #define MATCH_TH_VIDV 0x5808a057
3691 #define MASK_TH_VIDV 0xfdfff07f
3692 #define MATCH_TH_VMVXS 0x32002057
3693 #define MASK_TH_VMVXS 0xfe0ff07f
3694 #define MATCH_TH_VEXTXV 0x32002057
3695 #define MASK_TH_VEXTXV 0xfe00707f
3696 #define MATCH_TH_VMVSX 0x36006057
3697 #define MASK_TH_VMVSX 0xfff0707f
3698 #define MATCH_TH_VFMVFS 0x32001057
3699 #define MASK_TH_VFMVFS 0xfe0ff07f
3700 #define MATCH_TH_VFMVSF 0x36005057
3701 #define MASK_TH_VFMVSF 0xfff0707f
3702 /* Vendor-specific (Ventana Microsystems) XVentanaCondOps instructions */
3703 #define MATCH_VT_MASKC 0x607b
3704 #define MASK_VT_MASKC 0xfe00707f
3705 #define MATCH_VT_MASKCN 0x707b
3706 #define MASK_VT_MASKCN 0xfe00707f
3707 /* Vendor-specific (SiFive) vector coprocessor interface instructions. */
3708 #define MATCH_SF_VC_X 0x0200405b
3709 #define MASK_SF_VC_X 0xf200707f
3710 #define MATCH_SF_VC_V_X 0x0000405b
3711 #define MASK_SF_VC_V_X 0xf200707f
3712 #define MATCH_SF_VC_I 0x0200305b
3713 #define MASK_SF_VC_I 0xf200707f
3714 #define MATCH_SF_VC_V_I 0x0000305b
3715 #define MASK_SF_VC_V_I 0xf200707f
3716 #define MATCH_SF_VC_VV 0x2200005b
3717 #define MASK_SF_VC_VV 0xf200707f
3718 #define MATCH_SF_VC_V_VV 0x2000005b
3719 #define MASK_SF_VC_V_VV 0xf200707f
3720 #define MATCH_SF_VC_XV 0x2200405b
3721 #define MASK_SF_VC_XV 0xf200707f
3722 #define MATCH_SF_VC_V_XV 0x2000405b
3723 #define MASK_SF_VC_V_XV 0xf200707f
3724 #define MATCH_SF_VC_IV 0x2200305b
3725 #define MASK_SF_VC_IV 0xf200707f
3726 #define MATCH_SF_VC_V_IV 0x2000305b
3727 #define MASK_SF_VC_V_IV 0xf200707f
3728 #define MATCH_SF_VC_FV 0x2a00505b
3729 #define MASK_SF_VC_FV 0xfa00707f
3730 #define MATCH_SF_VC_V_FV 0x2800505b
3731 #define MASK_SF_VC_V_FV 0xfa00707f
3732 #define MATCH_SF_VC_VVV 0xa200005b
3733 #define MASK_SF_VC_VVV 0xf200707f
3734 #define MATCH_SF_VC_V_VVV 0xa000005b
3735 #define MASK_SF_VC_V_VVV 0xf200707f
3736 #define MATCH_SF_VC_XVV 0xa200405b
3737 #define MASK_SF_VC_XVV 0xf200707f
3738 #define MATCH_SF_VC_V_XVV 0xa000405b
3739 #define MASK_SF_VC_V_XVV 0xf200707f
3740 #define MATCH_SF_VC_IVV 0xa200305b
3741 #define MASK_SF_VC_IVV 0xf200707f
3742 #define MATCH_SF_VC_V_IVV 0xa000305b
3743 #define MASK_SF_VC_V_IVV 0xf200707f
3744 #define MATCH_SF_VC_FVV 0xaa00505b
3745 #define MASK_SF_VC_FVV 0xfa00707f
3746 #define MATCH_SF_VC_V_FVV 0xa800505b
3747 #define MASK_SF_VC_V_FVV 0xfa00707f
3748 #define MATCH_SF_VC_VVW 0xf200005b
3749 #define MASK_SF_VC_VVW 0xf200707f
3750 #define MATCH_SF_VC_V_VVW 0xf000005b
3751 #define MASK_SF_VC_V_VVW 0xf200707f
3752 #define MATCH_SF_VC_XVW 0xf200405b
3753 #define MASK_SF_VC_XVW 0xf200707f
3754 #define MATCH_SF_VC_V_XVW 0xf000405b
3755 #define MASK_SF_VC_V_XVW 0xf200707f
3756 #define MATCH_SF_VC_IVW 0xf200305b
3757 #define MASK_SF_VC_IVW 0xf200707f
3758 #define MATCH_SF_VC_V_IVW 0xf000305b
3759 #define MASK_SF_VC_V_IVW 0xf200707f
3760 #define MATCH_SF_VC_FVW 0xfa00505b
3761 #define MASK_SF_VC_FVW 0xfa00707f
3762 #define MATCH_SF_VC_V_FVW 0xf800505b
3763 #define MASK_SF_VC_V_FVW 0xfa00707f
3764 /* Vendor-specific (SiFive) cease instruction. */
3765 #define MATCH_SF_CEASE 0x30500073
3766 #define MASK_SF_CEASE 0xffffffff
3767 /* SiFive custom int8 matrix-multiply instruction. */
3768 #define MATCH_SFVQMACCU4X8X4 0xf200205b
3769 #define MASK_SFVQMACCU4X8X4 0xfe00707f
3770 #define MATCH_SFVQMACC4X8X4 0xf600205b
3771 #define MASK_SFVQMACC4X8X4 0xfe00707f
3772 #define MATCH_SFVQMACCUS4X8X4 0xfa00205b
3773 #define MASK_SFVQMACCUS4X8X4 0xfe00707f
3774 #define MATCH_SFVQMACCSU4X8X4 0xfe00205b
3775 #define MASK_SFVQMACCSU4X8X4 0xfe00707f
3776 #define MATCH_SFVQMACCU2X8X2 0xb200205b
3777 #define MASK_SFVQMACCU2X8X2 0xfe00707f
3778 #define MATCH_SFVQMACC2X8X2 0xb600205b
3779 #define MASK_SFVQMACC2X8X2 0xfe00707f
3780 #define MATCH_SFVQMACCUS2X8X2 0xba00205b
3781 #define MASK_SFVQMACCUS2X8X2 0xfe00707f
3782 #define MATCH_SFVQMACCSU2X8X2 0xbe00205b
3783 #define MASK_SFVQMACCSU2X8X2 0xfe00707f
3784 /* FP32-to-int8 Ranged Clip Instructions (Xsfvfnrclipxfqf). */
3785 #define MATCH_SFVFNRCLIPXUFQF 0x8a00505b
3786 #define MASK_SFVFNRCLIPXUFQF 0xfe00707f
3787 #define MATCH_SFVFNRCLIPXFQF 0x8e00505b
3788 #define MASK_SFVFNRCLIPXFQF 0xfe00707f
3789 /* Unprivileged Counter/Timers CSR addresses. */
3790 #define CSR_CYCLE 0xc00
3791 #define CSR_TIME 0xc01
3792 #define CSR_INSTRET 0xc02
3793 #define CSR_HPMCOUNTER3 0xc03
3794 #define CSR_HPMCOUNTER4 0xc04
3795 #define CSR_HPMCOUNTER5 0xc05
3796 #define CSR_HPMCOUNTER6 0xc06
3797 #define CSR_HPMCOUNTER7 0xc07
3798 #define CSR_HPMCOUNTER8 0xc08
3799 #define CSR_HPMCOUNTER9 0xc09
3800 #define CSR_HPMCOUNTER10 0xc0a
3801 #define CSR_HPMCOUNTER11 0xc0b
3802 #define CSR_HPMCOUNTER12 0xc0c
3803 #define CSR_HPMCOUNTER13 0xc0d
3804 #define CSR_HPMCOUNTER14 0xc0e
3805 #define CSR_HPMCOUNTER15 0xc0f
3806 #define CSR_HPMCOUNTER16 0xc10
3807 #define CSR_HPMCOUNTER17 0xc11
3808 #define CSR_HPMCOUNTER18 0xc12
3809 #define CSR_HPMCOUNTER19 0xc13
3810 #define CSR_HPMCOUNTER20 0xc14
3811 #define CSR_HPMCOUNTER21 0xc15
3812 #define CSR_HPMCOUNTER22 0xc16
3813 #define CSR_HPMCOUNTER23 0xc17
3814 #define CSR_HPMCOUNTER24 0xc18
3815 #define CSR_HPMCOUNTER25 0xc19
3816 #define CSR_HPMCOUNTER26 0xc1a
3817 #define CSR_HPMCOUNTER27 0xc1b
3818 #define CSR_HPMCOUNTER28 0xc1c
3819 #define CSR_HPMCOUNTER29 0xc1d
3820 #define CSR_HPMCOUNTER30 0xc1e
3821 #define CSR_HPMCOUNTER31 0xc1f
3822 #define CSR_CYCLEH 0xc80
3823 #define CSR_TIMEH 0xc81
3824 #define CSR_INSTRETH 0xc82
3825 #define CSR_HPMCOUNTER3H 0xc83
3826 #define CSR_HPMCOUNTER4H 0xc84
3827 #define CSR_HPMCOUNTER5H 0xc85
3828 #define CSR_HPMCOUNTER6H 0xc86
3829 #define CSR_HPMCOUNTER7H 0xc87
3830 #define CSR_HPMCOUNTER8H 0xc88
3831 #define CSR_HPMCOUNTER9H 0xc89
3832 #define CSR_HPMCOUNTER10H 0xc8a
3833 #define CSR_HPMCOUNTER11H 0xc8b
3834 #define CSR_HPMCOUNTER12H 0xc8c
3835 #define CSR_HPMCOUNTER13H 0xc8d
3836 #define CSR_HPMCOUNTER14H 0xc8e
3837 #define CSR_HPMCOUNTER15H 0xc8f
3838 #define CSR_HPMCOUNTER16H 0xc90
3839 #define CSR_HPMCOUNTER17H 0xc91
3840 #define CSR_HPMCOUNTER18H 0xc92
3841 #define CSR_HPMCOUNTER19H 0xc93
3842 #define CSR_HPMCOUNTER20H 0xc94
3843 #define CSR_HPMCOUNTER21H 0xc95
3844 #define CSR_HPMCOUNTER22H 0xc96
3845 #define CSR_HPMCOUNTER23H 0xc97
3846 #define CSR_HPMCOUNTER24H 0xc98
3847 #define CSR_HPMCOUNTER25H 0xc99
3848 #define CSR_HPMCOUNTER26H 0xc9a
3849 #define CSR_HPMCOUNTER27H 0xc9b
3850 #define CSR_HPMCOUNTER28H 0xc9c
3851 #define CSR_HPMCOUNTER29H 0xc9d
3852 #define CSR_HPMCOUNTER30H 0xc9e
3853 #define CSR_HPMCOUNTER31H 0xc9f
3854 /* Privileged Supervisor CSR addresses. */
3855 #define CSR_SSTATUS 0x100
3856 #define CSR_SIE 0x104
3857 #define CSR_STVEC 0x105
3858 #define CSR_SCOUNTEREN 0x106
3859 #define CSR_SENVCFG 0x10a
3860 #define CSR_SSCRATCH 0x140
3861 #define CSR_SEPC 0x141
3862 #define CSR_SCAUSE 0x142
3863 #define CSR_STVAL 0x143
3864 #define CSR_SIP 0x144
3865 #define CSR_SATP 0x180
3866 /* Privileged Machine CSR addresses. */
3867 #define CSR_MVENDORID 0xf11
3868 #define CSR_MARCHID 0xf12
3869 #define CSR_MIMPID 0xf13
3870 #define CSR_MHARTID 0xf14
3871 #define CSR_MCONFIGPTR 0xf15
3872 #define CSR_MSTATUS 0x300
3873 #define CSR_MISA 0x301
3874 #define CSR_MEDELEG 0x302
3875 #define CSR_MIDELEG 0x303
3876 #define CSR_MIE 0x304
3877 #define CSR_MTVEC 0x305
3878 #define CSR_MCOUNTEREN 0x306
3879 #define CSR_MSTATUSH 0x310
3880 #define CSR_MSCRATCH 0x340
3881 #define CSR_MEPC 0x341
3882 #define CSR_MCAUSE 0x342
3883 #define CSR_MTVAL 0x343
3884 #define CSR_MIP 0x344
3885 #define CSR_MTINST 0x34a
3886 #define CSR_MTVAL2 0x34b
3887 #define CSR_MENVCFG 0x30a
3888 #define CSR_MENVCFGH 0x31a
3889 #define CSR_MSECCFG 0x747
3890 #define CSR_MSECCFGH 0x757
3891 #define CSR_PMPCFG0 0x3a0
3892 #define CSR_PMPCFG1 0x3a1
3893 #define CSR_PMPCFG2 0x3a2
3894 #define CSR_PMPCFG3 0x3a3
3895 #define CSR_PMPCFG4 0x3a4
3896 #define CSR_PMPCFG5 0x3a5
3897 #define CSR_PMPCFG6 0x3a6
3898 #define CSR_PMPCFG7 0x3a7
3899 #define CSR_PMPCFG8 0x3a8
3900 #define CSR_PMPCFG9 0x3a9
3901 #define CSR_PMPCFG10 0x3aa
3902 #define CSR_PMPCFG11 0x3ab
3903 #define CSR_PMPCFG12 0x3ac
3904 #define CSR_PMPCFG13 0x3ad
3905 #define CSR_PMPCFG14 0x3ae
3906 #define CSR_PMPCFG15 0x3af
3907 #define CSR_PMPADDR0 0x3b0
3908 #define CSR_PMPADDR1 0x3b1
3909 #define CSR_PMPADDR2 0x3b2
3910 #define CSR_PMPADDR3 0x3b3
3911 #define CSR_PMPADDR4 0x3b4
3912 #define CSR_PMPADDR5 0x3b5
3913 #define CSR_PMPADDR6 0x3b6
3914 #define CSR_PMPADDR7 0x3b7
3915 #define CSR_PMPADDR8 0x3b8
3916 #define CSR_PMPADDR9 0x3b9
3917 #define CSR_PMPADDR10 0x3ba
3918 #define CSR_PMPADDR11 0x3bb
3919 #define CSR_PMPADDR12 0x3bc
3920 #define CSR_PMPADDR13 0x3bd
3921 #define CSR_PMPADDR14 0x3be
3922 #define CSR_PMPADDR15 0x3bf
3923 #define CSR_PMPADDR16 0x3c0
3924 #define CSR_PMPADDR17 0x3c1
3925 #define CSR_PMPADDR18 0x3c2
3926 #define CSR_PMPADDR19 0x3c3
3927 #define CSR_PMPADDR20 0x3c4
3928 #define CSR_PMPADDR21 0x3c5
3929 #define CSR_PMPADDR22 0x3c6
3930 #define CSR_PMPADDR23 0x3c7
3931 #define CSR_PMPADDR24 0x3c8
3932 #define CSR_PMPADDR25 0x3c9
3933 #define CSR_PMPADDR26 0x3ca
3934 #define CSR_PMPADDR27 0x3cb
3935 #define CSR_PMPADDR28 0x3cc
3936 #define CSR_PMPADDR29 0x3cd
3937 #define CSR_PMPADDR30 0x3ce
3938 #define CSR_PMPADDR31 0x3cf
3939 #define CSR_PMPADDR32 0x3d0
3940 #define CSR_PMPADDR33 0x3d1
3941 #define CSR_PMPADDR34 0x3d2
3942 #define CSR_PMPADDR35 0x3d3
3943 #define CSR_PMPADDR36 0x3d4
3944 #define CSR_PMPADDR37 0x3d5
3945 #define CSR_PMPADDR38 0x3d6
3946 #define CSR_PMPADDR39 0x3d7
3947 #define CSR_PMPADDR40 0x3d8
3948 #define CSR_PMPADDR41 0x3d9
3949 #define CSR_PMPADDR42 0x3da
3950 #define CSR_PMPADDR43 0x3db
3951 #define CSR_PMPADDR44 0x3dc
3952 #define CSR_PMPADDR45 0x3dd
3953 #define CSR_PMPADDR46 0x3de
3954 #define CSR_PMPADDR47 0x3df
3955 #define CSR_PMPADDR48 0x3e0
3956 #define CSR_PMPADDR49 0x3e1
3957 #define CSR_PMPADDR50 0x3e2
3958 #define CSR_PMPADDR51 0x3e3
3959 #define CSR_PMPADDR52 0x3e4
3960 #define CSR_PMPADDR53 0x3e5
3961 #define CSR_PMPADDR54 0x3e6
3962 #define CSR_PMPADDR55 0x3e7
3963 #define CSR_PMPADDR56 0x3e8
3964 #define CSR_PMPADDR57 0x3e9
3965 #define CSR_PMPADDR58 0x3ea
3966 #define CSR_PMPADDR59 0x3eb
3967 #define CSR_PMPADDR60 0x3ec
3968 #define CSR_PMPADDR61 0x3ed
3969 #define CSR_PMPADDR62 0x3ee
3970 #define CSR_PMPADDR63 0x3ef
3971 #define CSR_MCYCLE 0xb00
3972 #define CSR_MINSTRET 0xb02
3973 #define CSR_MHPMCOUNTER3 0xb03
3974 #define CSR_MHPMCOUNTER4 0xb04
3975 #define CSR_MHPMCOUNTER5 0xb05
3976 #define CSR_MHPMCOUNTER6 0xb06
3977 #define CSR_MHPMCOUNTER7 0xb07
3978 #define CSR_MHPMCOUNTER8 0xb08
3979 #define CSR_MHPMCOUNTER9 0xb09
3980 #define CSR_MHPMCOUNTER10 0xb0a
3981 #define CSR_MHPMCOUNTER11 0xb0b
3982 #define CSR_MHPMCOUNTER12 0xb0c
3983 #define CSR_MHPMCOUNTER13 0xb0d
3984 #define CSR_MHPMCOUNTER14 0xb0e
3985 #define CSR_MHPMCOUNTER15 0xb0f
3986 #define CSR_MHPMCOUNTER16 0xb10
3987 #define CSR_MHPMCOUNTER17 0xb11
3988 #define CSR_MHPMCOUNTER18 0xb12
3989 #define CSR_MHPMCOUNTER19 0xb13
3990 #define CSR_MHPMCOUNTER20 0xb14
3991 #define CSR_MHPMCOUNTER21 0xb15
3992 #define CSR_MHPMCOUNTER22 0xb16
3993 #define CSR_MHPMCOUNTER23 0xb17
3994 #define CSR_MHPMCOUNTER24 0xb18
3995 #define CSR_MHPMCOUNTER25 0xb19
3996 #define CSR_MHPMCOUNTER26 0xb1a
3997 #define CSR_MHPMCOUNTER27 0xb1b
3998 #define CSR_MHPMCOUNTER28 0xb1c
3999 #define CSR_MHPMCOUNTER29 0xb1d
4000 #define CSR_MHPMCOUNTER30 0xb1e
4001 #define CSR_MHPMCOUNTER31 0xb1f
4002 #define CSR_MCYCLEH 0xb80
4003 #define CSR_MINSTRETH 0xb82
4004 #define CSR_MHPMCOUNTER3H 0xb83
4005 #define CSR_MHPMCOUNTER4H 0xb84
4006 #define CSR_MHPMCOUNTER5H 0xb85
4007 #define CSR_MHPMCOUNTER6H 0xb86
4008 #define CSR_MHPMCOUNTER7H 0xb87
4009 #define CSR_MHPMCOUNTER8H 0xb88
4010 #define CSR_MHPMCOUNTER9H 0xb89
4011 #define CSR_MHPMCOUNTER10H 0xb8a
4012 #define CSR_MHPMCOUNTER11H 0xb8b
4013 #define CSR_MHPMCOUNTER12H 0xb8c
4014 #define CSR_MHPMCOUNTER13H 0xb8d
4015 #define CSR_MHPMCOUNTER14H 0xb8e
4016 #define CSR_MHPMCOUNTER15H 0xb8f
4017 #define CSR_MHPMCOUNTER16H 0xb90
4018 #define CSR_MHPMCOUNTER17H 0xb91
4019 #define CSR_MHPMCOUNTER18H 0xb92
4020 #define CSR_MHPMCOUNTER19H 0xb93
4021 #define CSR_MHPMCOUNTER20H 0xb94
4022 #define CSR_MHPMCOUNTER21H 0xb95
4023 #define CSR_MHPMCOUNTER22H 0xb96
4024 #define CSR_MHPMCOUNTER23H 0xb97
4025 #define CSR_MHPMCOUNTER24H 0xb98
4026 #define CSR_MHPMCOUNTER25H 0xb99
4027 #define CSR_MHPMCOUNTER26H 0xb9a
4028 #define CSR_MHPMCOUNTER27H 0xb9b
4029 #define CSR_MHPMCOUNTER28H 0xb9c
4030 #define CSR_MHPMCOUNTER29H 0xb9d
4031 #define CSR_MHPMCOUNTER30H 0xb9e
4032 #define CSR_MHPMCOUNTER31H 0xb9f
4033 #define CSR_MCOUNTINHIBIT 0x320
4034 #define CSR_MHPMEVENT3 0x323
4035 #define CSR_MHPMEVENT4 0x324
4036 #define CSR_MHPMEVENT5 0x325
4037 #define CSR_MHPMEVENT6 0x326
4038 #define CSR_MHPMEVENT7 0x327
4039 #define CSR_MHPMEVENT8 0x328
4040 #define CSR_MHPMEVENT9 0x329
4041 #define CSR_MHPMEVENT10 0x32a
4042 #define CSR_MHPMEVENT11 0x32b
4043 #define CSR_MHPMEVENT12 0x32c
4044 #define CSR_MHPMEVENT13 0x32d
4045 #define CSR_MHPMEVENT14 0x32e
4046 #define CSR_MHPMEVENT15 0x32f
4047 #define CSR_MHPMEVENT16 0x330
4048 #define CSR_MHPMEVENT17 0x331
4049 #define CSR_MHPMEVENT18 0x332
4050 #define CSR_MHPMEVENT19 0x333
4051 #define CSR_MHPMEVENT20 0x334
4052 #define CSR_MHPMEVENT21 0x335
4053 #define CSR_MHPMEVENT22 0x336
4054 #define CSR_MHPMEVENT23 0x337
4055 #define CSR_MHPMEVENT24 0x338
4056 #define CSR_MHPMEVENT25 0x339
4057 #define CSR_MHPMEVENT26 0x33a
4058 #define CSR_MHPMEVENT27 0x33b
4059 #define CSR_MHPMEVENT28 0x33c
4060 #define CSR_MHPMEVENT29 0x33d
4061 #define CSR_MHPMEVENT30 0x33e
4062 #define CSR_MHPMEVENT31 0x33f
4063 /* Privileged Hypervisor CSR addresses. */
4064 #define CSR_HSTATUS 0x600
4065 #define CSR_HEDELEG 0x602
4066 #define CSR_HIDELEG 0x603
4067 #define CSR_HIE 0x604
4068 #define CSR_HCOUNTEREN 0x606
4069 #define CSR_HGEIE 0x607
4070 #define CSR_HTVAL 0x643
4071 #define CSR_HIP 0x644
4072 #define CSR_HVIP 0x645
4073 #define CSR_HTINST 0x64a
4074 #define CSR_HGEIP 0xe12
4075 #define CSR_HENVCFG 0x60a
4076 #define CSR_HENVCFGH 0x61a
4077 #define CSR_HGATP 0x680
4078 #define CSR_HTIMEDELTA 0x605
4079 #define CSR_HTIMEDELTAH 0x615
4080 #define CSR_VSSTATUS 0x200
4081 #define CSR_VSIE 0x204
4082 #define CSR_VSTVEC 0x205
4083 #define CSR_VSSCRATCH 0x240
4084 #define CSR_VSEPC 0x241
4085 #define CSR_VSCAUSE 0x242
4086 #define CSR_VSTVAL 0x243
4087 #define CSR_VSIP 0x244
4088 #define CSR_VSATP 0x280
4089 /* Droppped CSR addresses. */
4090 #define CSR_USTATUS 0x0
4092 #define CSR_UTVEC 0x5
4093 #define CSR_USCRATCH 0x40
4094 #define CSR_UEPC 0x41
4095 #define CSR_UCAUSE 0x42
4096 #define CSR_UTVAL 0x43
4097 #define CSR_UIP 0x44
4098 #define CSR_SEDELEG 0x102
4099 #define CSR_SIDELEG 0x103
4100 /* Smaia extension */
4101 #define CSR_MISELECT 0x350
4102 #define CSR_MIREG 0x351
4103 #define CSR_MTOPEI 0x35c
4104 #define CSR_MTOPI 0xfb0
4105 #define CSR_MVIEN 0x308
4106 #define CSR_MVIP 0x309
4107 #define CSR_MIDELEGH 0x313
4108 #define CSR_MIEH 0x314
4109 #define CSR_MVIENH 0x318
4110 #define CSR_MVIPH 0x319
4111 #define CSR_MIPH 0x354
4112 /*Smcsrind extension */
4113 #define CSR_MIREG2 0x352
4114 #define CSR_MIREG3 0x353
4115 #define CSR_MIREG4 0x355
4116 #define CSR_MIREG5 0x356
4117 #define CSR_MIREG6 0x357
4118 /* Smcntrpmf extension. */
4119 #define CSR_MCYCLECFG 0x321
4120 #define CSR_MINSTRETCFG 0x322
4121 #define CSR_MCYCLECFGH 0x721
4122 #define CSR_MINSTRETCFGH 0x722
4123 /* Smrnmi extension. */
4124 #define CSR_MNSCRATCH 0x740
4125 #define CSR_MNEPC 0x741
4126 #define CSR_MNCAUSE 0x742
4127 #define CSR_MNSTATUS 0x744
4128 /* Smstateen extension */
4129 #define CSR_MSTATEEN0 0x30c
4130 #define CSR_MSTATEEN1 0x30d
4131 #define CSR_MSTATEEN2 0x30e
4132 #define CSR_MSTATEEN3 0x30f
4133 #define CSR_SSTATEEN0 0x10c
4134 #define CSR_SSTATEEN1 0x10d
4135 #define CSR_SSTATEEN2 0x10e
4136 #define CSR_SSTATEEN3 0x10f
4137 #define CSR_HSTATEEN0 0x60c
4138 #define CSR_HSTATEEN1 0x60d
4139 #define CSR_HSTATEEN2 0x60e
4140 #define CSR_HSTATEEN3 0x60f
4141 #define CSR_MSTATEEN0H 0x31c
4142 #define CSR_MSTATEEN1H 0x31d
4143 #define CSR_MSTATEEN2H 0x31e
4144 #define CSR_MSTATEEN3H 0x31f
4145 #define CSR_HSTATEEN0H 0x61c
4146 #define CSR_HSTATEEN1H 0x61d
4147 #define CSR_HSTATEEN2H 0x61e
4148 #define CSR_HSTATEEN3H 0x61f
4149 /* Ssaia extension */
4150 #define CSR_SISELECT 0x150
4151 #define CSR_SIREG 0x151
4152 #define CSR_STOPEI 0x15c
4153 #define CSR_STOPI 0xdb0
4154 #define CSR_SIEH 0x114
4155 #define CSR_SIPH 0x154
4156 #define CSR_HVIEN 0x608
4157 #define CSR_HVICTL 0x609
4158 #define CSR_HVIPRIO1 0x646
4159 #define CSR_HVIPRIO2 0x647
4160 #define CSR_VSISELECT 0x250
4161 #define CSR_VSIREG 0x251
4162 #define CSR_VSTOPEI 0x25c
4163 #define CSR_VSTOPI 0xeb0
4164 #define CSR_HIDELEGH 0x613
4165 #define CSR_HVIENH 0x618
4166 #define CSR_HVIPH 0x655
4167 #define CSR_HVIPRIO1H 0x656
4168 #define CSR_HVIPRIO2H 0x657
4169 #define CSR_VSIEH 0x214
4170 #define CSR_VSIPH 0x254
4171 /* Sscsrind extension */
4172 #define CSR_SIREG2 0x152
4173 #define CSR_SIREG3 0x153
4174 #define CSR_SIREG4 0x155
4175 #define CSR_SIREG5 0x156
4176 #define CSR_SIREG6 0x157
4177 #define CSR_VSIREG2 0x252
4178 #define CSR_VSIREG3 0x253
4179 #define CSR_VSIREG4 0x255
4180 #define CSR_VSIREG5 0x256
4181 #define CSR_VSIREG6 0x257
4182 /* Sscofpmf extension */
4183 #define CSR_SCOUNTOVF 0xda0
4184 #define CSR_MHPMEVENT3H 0x723
4185 #define CSR_MHPMEVENT4H 0x724
4186 #define CSR_MHPMEVENT5H 0x725
4187 #define CSR_MHPMEVENT6H 0x726
4188 #define CSR_MHPMEVENT7H 0x727
4189 #define CSR_MHPMEVENT8H 0x728
4190 #define CSR_MHPMEVENT9H 0x729
4191 #define CSR_MHPMEVENT10H 0x72a
4192 #define CSR_MHPMEVENT11H 0x72b
4193 #define CSR_MHPMEVENT12H 0x72c
4194 #define CSR_MHPMEVENT13H 0x72d
4195 #define CSR_MHPMEVENT14H 0x72e
4196 #define CSR_MHPMEVENT15H 0x72f
4197 #define CSR_MHPMEVENT16H 0x730
4198 #define CSR_MHPMEVENT17H 0x731
4199 #define CSR_MHPMEVENT18H 0x732
4200 #define CSR_MHPMEVENT19H 0x733
4201 #define CSR_MHPMEVENT20H 0x734
4202 #define CSR_MHPMEVENT21H 0x735
4203 #define CSR_MHPMEVENT22H 0x736
4204 #define CSR_MHPMEVENT23H 0x737
4205 #define CSR_MHPMEVENT24H 0x738
4206 #define CSR_MHPMEVENT25H 0x739
4207 #define CSR_MHPMEVENT26H 0x73a
4208 #define CSR_MHPMEVENT27H 0x73b
4209 #define CSR_MHPMEVENT28H 0x73c
4210 #define CSR_MHPMEVENT29H 0x73d
4211 #define CSR_MHPMEVENT30H 0x73e
4212 #define CSR_MHPMEVENT31H 0x73f
4213 /* Sstc extension */
4214 #define CSR_STIMECMP 0x14d
4215 #define CSR_STIMECMPH 0x15d
4216 #define CSR_VSTIMECMP 0x24d
4217 #define CSR_VSTIMECMPH 0x25d
4218 /* Smctr/Ssctr CSR addresses. */
4219 #define CSR_SCTRCTL 0x14e
4220 #define CSR_SCTRSTATUS 0x14f
4221 #define CSR_SCTRDEPTH 0x15f
4222 #define CSR_VSCTRCTL 0x24e
4223 #define CSR_MCTRCTL 0x34e
4224 /* Zicfissp CSR addresses. */
4225 #define CSR_SSP 0x11
4226 /* Unprivileged Floating-Point CSR addresses. */
4227 #define CSR_FFLAGS 0x1
4229 #define CSR_FCSR 0x3
4230 /* Unprivileged Debug CSR addresses. */
4231 #define CSR_DCSR 0x7b0
4232 #define CSR_DPC 0x7b1
4233 #define CSR_DSCRATCH0 0x7b2
4234 #define CSR_DSCRATCH1 0x7b3
4235 #define CSR_TSELECT 0x7a0
4236 #define CSR_TDATA1 0x7a1
4237 #define CSR_TDATA2 0x7a2
4238 #define CSR_TDATA3 0x7a3
4239 #define CSR_TINFO 0x7a4
4240 #define CSR_TCONTROL 0x7a5
4241 #define CSR_HCONTEXT 0x6a8
4242 #define CSR_SCONTEXT 0x5a8
4243 #define CSR_MCONTEXT 0x7a8
4244 #define CSR_MSCONTEXT 0x7aa
4245 /* Unprivileged Scalar Crypto CSR addresses. */
4246 #define CSR_SEED 0x015
4247 /* Unprivileged Zcmt CSR addresses. */
4248 #define CSR_JVT 0x017
4249 /* Unprivileged Vector CSR addresses. */
4250 #define CSR_VSTART 0x008
4251 #define CSR_VXSAT 0x009
4252 #define CSR_VXRM 0x00a
4253 #define CSR_VCSR 0x00f
4254 #define CSR_VL 0xc20
4255 #define CSR_VTYPE 0xc21
4256 #define CSR_VLENB 0xc22
4257 #endif /* RISCV_ENCODING_H */
4259 DECLARE_INSN(slli_rv32
, MATCH_SLLI_RV32
, MASK_SLLI_RV32
)
4260 DECLARE_INSN(srli_rv32
, MATCH_SRLI_RV32
, MASK_SRLI_RV32
)
4261 DECLARE_INSN(srai_rv32
, MATCH_SRAI_RV32
, MASK_SRAI_RV32
)
4262 DECLARE_INSN(frflags
, MATCH_FRFLAGS
, MASK_FRFLAGS
)
4263 DECLARE_INSN(fsflags
, MATCH_FSFLAGS
, MASK_FSFLAGS
)
4264 DECLARE_INSN(fsflagsi
, MATCH_FSFLAGSI
, MASK_FSFLAGSI
)
4265 DECLARE_INSN(frrm
, MATCH_FRRM
, MASK_FRRM
)
4266 DECLARE_INSN(fsrm
, MATCH_FSRM
, MASK_FSRM
)
4267 DECLARE_INSN(fsrmi
, MATCH_FSRMI
, MASK_FSRMI
)
4268 DECLARE_INSN(fscsr
, MATCH_FSCSR
, MASK_FSCSR
)
4269 DECLARE_INSN(frcsr
, MATCH_FRCSR
, MASK_FRCSR
)
4270 DECLARE_INSN(rdcycle
, MATCH_RDCYCLE
, MASK_RDCYCLE
)
4271 DECLARE_INSN(rdtime
, MATCH_RDTIME
, MASK_RDTIME
)
4272 DECLARE_INSN(rdinstret
, MATCH_RDINSTRET
, MASK_RDINSTRET
)
4273 DECLARE_INSN(rdcycleh
, MATCH_RDCYCLEH
, MASK_RDCYCLEH
)
4274 DECLARE_INSN(rdtimeh
, MATCH_RDTIMEH
, MASK_RDTIMEH
)
4275 DECLARE_INSN(rdinstreth
, MATCH_RDINSTRETH
, MASK_RDINSTRETH
)
4276 DECLARE_INSN(scall
, MATCH_SCALL
, MASK_SCALL
)
4277 DECLARE_INSN(sbreak
, MATCH_SBREAK
, MASK_SBREAK
)
4278 DECLARE_INSN(beq
, MATCH_BEQ
, MASK_BEQ
)
4279 DECLARE_INSN(bne
, MATCH_BNE
, MASK_BNE
)
4280 DECLARE_INSN(blt
, MATCH_BLT
, MASK_BLT
)
4281 DECLARE_INSN(bge
, MATCH_BGE
, MASK_BGE
)
4282 DECLARE_INSN(bltu
, MATCH_BLTU
, MASK_BLTU
)
4283 DECLARE_INSN(bgeu
, MATCH_BGEU
, MASK_BGEU
)
4284 DECLARE_INSN(jalr
, MATCH_JALR
, MASK_JALR
)
4285 DECLARE_INSN(jal
, MATCH_JAL
, MASK_JAL
)
4286 DECLARE_INSN(lui
, MATCH_LUI
, MASK_LUI
)
4287 DECLARE_INSN(auipc
, MATCH_AUIPC
, MASK_AUIPC
)
4288 DECLARE_INSN(addi
, MATCH_ADDI
, MASK_ADDI
)
4289 DECLARE_INSN(slli
, MATCH_SLLI
, MASK_SLLI
)
4290 DECLARE_INSN(slti
, MATCH_SLTI
, MASK_SLTI
)
4291 DECLARE_INSN(sltiu
, MATCH_SLTIU
, MASK_SLTIU
)
4292 DECLARE_INSN(xori
, MATCH_XORI
, MASK_XORI
)
4293 DECLARE_INSN(srli
, MATCH_SRLI
, MASK_SRLI
)
4294 DECLARE_INSN(srai
, MATCH_SRAI
, MASK_SRAI
)
4295 DECLARE_INSN(ori
, MATCH_ORI
, MASK_ORI
)
4296 DECLARE_INSN(andi
, MATCH_ANDI
, MASK_ANDI
)
4297 DECLARE_INSN(add
, MATCH_ADD
, MASK_ADD
)
4298 DECLARE_INSN(sub
, MATCH_SUB
, MASK_SUB
)
4299 DECLARE_INSN(sll
, MATCH_SLL
, MASK_SLL
)
4300 DECLARE_INSN(slt
, MATCH_SLT
, MASK_SLT
)
4301 DECLARE_INSN(sltu
, MATCH_SLTU
, MASK_SLTU
)
4302 DECLARE_INSN(xor, MATCH_XOR
, MASK_XOR
)
4303 DECLARE_INSN(srl
, MATCH_SRL
, MASK_SRL
)
4304 DECLARE_INSN(sra
, MATCH_SRA
, MASK_SRA
)
4305 DECLARE_INSN(or, MATCH_OR
, MASK_OR
)
4306 DECLARE_INSN(and, MATCH_AND
, MASK_AND
)
4307 DECLARE_INSN(addiw
, MATCH_ADDIW
, MASK_ADDIW
)
4308 DECLARE_INSN(slliw
, MATCH_SLLIW
, MASK_SLLIW
)
4309 DECLARE_INSN(srliw
, MATCH_SRLIW
, MASK_SRLIW
)
4310 DECLARE_INSN(sraiw
, MATCH_SRAIW
, MASK_SRAIW
)
4311 DECLARE_INSN(addw
, MATCH_ADDW
, MASK_ADDW
)
4312 DECLARE_INSN(subw
, MATCH_SUBW
, MASK_SUBW
)
4313 DECLARE_INSN(sllw
, MATCH_SLLW
, MASK_SLLW
)
4314 DECLARE_INSN(srlw
, MATCH_SRLW
, MASK_SRLW
)
4315 DECLARE_INSN(sraw
, MATCH_SRAW
, MASK_SRAW
)
4316 DECLARE_INSN(lb
, MATCH_LB
, MASK_LB
)
4317 DECLARE_INSN(lh
, MATCH_LH
, MASK_LH
)
4318 DECLARE_INSN(lw
, MATCH_LW
, MASK_LW
)
4319 DECLARE_INSN(ld
, MATCH_LD
, MASK_LD
)
4320 DECLARE_INSN(lbu
, MATCH_LBU
, MASK_LBU
)
4321 DECLARE_INSN(lhu
, MATCH_LHU
, MASK_LHU
)
4322 DECLARE_INSN(lwu
, MATCH_LWU
, MASK_LWU
)
4323 DECLARE_INSN(sb
, MATCH_SB
, MASK_SB
)
4324 DECLARE_INSN(sh
, MATCH_SH
, MASK_SH
)
4325 DECLARE_INSN(sw
, MATCH_SW
, MASK_SW
)
4326 DECLARE_INSN(sd
, MATCH_SD
, MASK_SD
)
4327 DECLARE_INSN(pause
, MATCH_PAUSE
, MASK_PAUSE
)
4328 DECLARE_INSN(fence
, MATCH_FENCE
, MASK_FENCE
)
4329 DECLARE_INSN(fence_i
, MATCH_FENCE_I
, MASK_FENCE_I
)
4330 DECLARE_INSN(mul
, MATCH_MUL
, MASK_MUL
)
4331 DECLARE_INSN(mulh
, MATCH_MULH
, MASK_MULH
)
4332 DECLARE_INSN(mulhsu
, MATCH_MULHSU
, MASK_MULHSU
)
4333 DECLARE_INSN(mulhu
, MATCH_MULHU
, MASK_MULHU
)
4334 DECLARE_INSN(div
, MATCH_DIV
, MASK_DIV
)
4335 DECLARE_INSN(divu
, MATCH_DIVU
, MASK_DIVU
)
4336 DECLARE_INSN(rem
, MATCH_REM
, MASK_REM
)
4337 DECLARE_INSN(remu
, MATCH_REMU
, MASK_REMU
)
4338 DECLARE_INSN(mulw
, MATCH_MULW
, MASK_MULW
)
4339 DECLARE_INSN(divw
, MATCH_DIVW
, MASK_DIVW
)
4340 DECLARE_INSN(divuw
, MATCH_DIVUW
, MASK_DIVUW
)
4341 DECLARE_INSN(remw
, MATCH_REMW
, MASK_REMW
)
4342 DECLARE_INSN(remuw
, MATCH_REMUW
, MASK_REMUW
)
4343 DECLARE_INSN(amoadd_w
, MATCH_AMOADD_W
, MASK_AMOADD_W
)
4344 DECLARE_INSN(amoxor_w
, MATCH_AMOXOR_W
, MASK_AMOXOR_W
)
4345 DECLARE_INSN(amoor_w
, MATCH_AMOOR_W
, MASK_AMOOR_W
)
4346 DECLARE_INSN(amoand_w
, MATCH_AMOAND_W
, MASK_AMOAND_W
)
4347 DECLARE_INSN(amomin_w
, MATCH_AMOMIN_W
, MASK_AMOMIN_W
)
4348 DECLARE_INSN(amomax_w
, MATCH_AMOMAX_W
, MASK_AMOMAX_W
)
4349 DECLARE_INSN(amominu_w
, MATCH_AMOMINU_W
, MASK_AMOMINU_W
)
4350 DECLARE_INSN(amomaxu_w
, MATCH_AMOMAXU_W
, MASK_AMOMAXU_W
)
4351 DECLARE_INSN(amoswap_w
, MATCH_AMOSWAP_W
, MASK_AMOSWAP_W
)
4352 DECLARE_INSN(lr_w
, MATCH_LR_W
, MASK_LR_W
)
4353 DECLARE_INSN(sc_w
, MATCH_SC_W
, MASK_SC_W
)
4354 DECLARE_INSN(amoadd_d
, MATCH_AMOADD_D
, MASK_AMOADD_D
)
4355 DECLARE_INSN(amoxor_d
, MATCH_AMOXOR_D
, MASK_AMOXOR_D
)
4356 DECLARE_INSN(amoor_d
, MATCH_AMOOR_D
, MASK_AMOOR_D
)
4357 DECLARE_INSN(amoand_d
, MATCH_AMOAND_D
, MASK_AMOAND_D
)
4358 DECLARE_INSN(amomin_d
, MATCH_AMOMIN_D
, MASK_AMOMIN_D
)
4359 DECLARE_INSN(amomax_d
, MATCH_AMOMAX_D
, MASK_AMOMAX_D
)
4360 DECLARE_INSN(amominu_d
, MATCH_AMOMINU_D
, MASK_AMOMINU_D
)
4361 DECLARE_INSN(amomaxu_d
, MATCH_AMOMAXU_D
, MASK_AMOMAXU_D
)
4362 DECLARE_INSN(amoswap_d
, MATCH_AMOSWAP_D
, MASK_AMOSWAP_D
)
4363 DECLARE_INSN(lr_d
, MATCH_LR_D
, MASK_LR_D
)
4364 DECLARE_INSN(sc_d
, MATCH_SC_D
, MASK_SC_D
)
4365 DECLARE_INSN(amoadd_b
, MATCH_AMOADD_B
, MASK_AMOADD_B
)
4366 DECLARE_INSN(amoxor_b
, MATCH_AMOXOR_B
, MASK_AMOXOR_B
)
4367 DECLARE_INSN(amoor_b
, MATCH_AMOOR_B
, MASK_AMOOR_B
)
4368 DECLARE_INSN(amoand_b
, MATCH_AMOAND_B
, MASK_AMOAND_B
)
4369 DECLARE_INSN(amomin_b
, MATCH_AMOMIN_B
, MASK_AMOMIN_B
)
4370 DECLARE_INSN(amomax_b
, MATCH_AMOMAX_B
, MASK_AMOMAX_B
)
4371 DECLARE_INSN(amominu_b
, MATCH_AMOMINU_B
, MASK_AMOMINU_B
)
4372 DECLARE_INSN(amomaxu_b
, MATCH_AMOMAXU_B
, MASK_AMOMAXU_B
)
4373 DECLARE_INSN(amoswap_b
, MATCH_AMOSWAP_B
, MASK_AMOSWAP_B
)
4374 DECLARE_INSN(amocas_b
, MATCH_AMOCAS_B
, MASK_AMOCAS_B
)
4375 DECLARE_INSN(amoadd_h
, MATCH_AMOADD_H
, MASK_AMOADD_H
)
4376 DECLARE_INSN(amoxor_h
, MATCH_AMOXOR_H
, MASK_AMOXOR_H
)
4377 DECLARE_INSN(amoor_h
, MATCH_AMOOR_H
, MASK_AMOOR_H
)
4378 DECLARE_INSN(amoand_h
, MATCH_AMOAND_H
, MASK_AMOAND_H
)
4379 DECLARE_INSN(amomin_h
, MATCH_AMOMIN_H
, MASK_AMOMIN_H
)
4380 DECLARE_INSN(amomax_h
, MATCH_AMOMAX_H
, MASK_AMOMAX_H
)
4381 DECLARE_INSN(amominu_h
, MATCH_AMOMINU_H
, MASK_AMOMINU_H
)
4382 DECLARE_INSN(amomaxu_h
, MATCH_AMOMAXU_H
, MASK_AMOMAXU_H
)
4383 DECLARE_INSN(amoswap_h
, MATCH_AMOSWAP_H
, MASK_AMOSWAP_H
)
4384 DECLARE_INSN(amocas_h
, MATCH_AMOCAS_H
, MASK_AMOCAS_H
)
4385 DECLARE_INSN(ecall
, MATCH_ECALL
, MASK_ECALL
)
4386 DECLARE_INSN(ebreak
, MATCH_EBREAK
, MASK_EBREAK
)
4387 DECLARE_INSN(uret
, MATCH_URET
, MASK_URET
)
4388 DECLARE_INSN(sret
, MATCH_SRET
, MASK_SRET
)
4389 DECLARE_INSN(hret
, MATCH_HRET
, MASK_HRET
)
4390 DECLARE_INSN(mret
, MATCH_MRET
, MASK_MRET
)
4391 DECLARE_INSN(dret
, MATCH_DRET
, MASK_DRET
)
4392 DECLARE_INSN(sfence_vma
, MATCH_SFENCE_VMA
, MASK_SFENCE_VMA
)
4393 DECLARE_INSN(wfi
, MATCH_WFI
, MASK_WFI
)
4394 DECLARE_INSN(csrrw
, MATCH_CSRRW
, MASK_CSRRW
)
4395 DECLARE_INSN(csrrs
, MATCH_CSRRS
, MASK_CSRRS
)
4396 DECLARE_INSN(csrrc
, MATCH_CSRRC
, MASK_CSRRC
)
4397 DECLARE_INSN(csrrwi
, MATCH_CSRRWI
, MASK_CSRRWI
)
4398 DECLARE_INSN(csrrsi
, MATCH_CSRRSI
, MASK_CSRRSI
)
4399 DECLARE_INSN(csrrci
, MATCH_CSRRCI
, MASK_CSRRCI
)
4400 DECLARE_INSN(fadd_s
, MATCH_FADD_S
, MASK_FADD_S
)
4401 DECLARE_INSN(fsub_s
, MATCH_FSUB_S
, MASK_FSUB_S
)
4402 DECLARE_INSN(fmul_s
, MATCH_FMUL_S
, MASK_FMUL_S
)
4403 DECLARE_INSN(fdiv_s
, MATCH_FDIV_S
, MASK_FDIV_S
)
4404 DECLARE_INSN(fsgnj_s
, MATCH_FSGNJ_S
, MASK_FSGNJ_S
)
4405 DECLARE_INSN(fsgnjn_s
, MATCH_FSGNJN_S
, MASK_FSGNJN_S
)
4406 DECLARE_INSN(fsgnjx_s
, MATCH_FSGNJX_S
, MASK_FSGNJX_S
)
4407 DECLARE_INSN(fmin_s
, MATCH_FMIN_S
, MASK_FMIN_S
)
4408 DECLARE_INSN(fmax_s
, MATCH_FMAX_S
, MASK_FMAX_S
)
4409 DECLARE_INSN(fsqrt_s
, MATCH_FSQRT_S
, MASK_FSQRT_S
)
4410 DECLARE_INSN(fadd_d
, MATCH_FADD_D
, MASK_FADD_D
)
4411 DECLARE_INSN(fsub_d
, MATCH_FSUB_D
, MASK_FSUB_D
)
4412 DECLARE_INSN(fmul_d
, MATCH_FMUL_D
, MASK_FMUL_D
)
4413 DECLARE_INSN(fdiv_d
, MATCH_FDIV_D
, MASK_FDIV_D
)
4414 DECLARE_INSN(fsgnj_d
, MATCH_FSGNJ_D
, MASK_FSGNJ_D
)
4415 DECLARE_INSN(fsgnjn_d
, MATCH_FSGNJN_D
, MASK_FSGNJN_D
)
4416 DECLARE_INSN(fsgnjx_d
, MATCH_FSGNJX_D
, MASK_FSGNJX_D
)
4417 DECLARE_INSN(fmin_d
, MATCH_FMIN_D
, MASK_FMIN_D
)
4418 DECLARE_INSN(fmax_d
, MATCH_FMAX_D
, MASK_FMAX_D
)
4419 DECLARE_INSN(fcvt_s_d
, MATCH_FCVT_S_D
, MASK_FCVT_S_D
)
4420 DECLARE_INSN(fcvt_d_s
, MATCH_FCVT_D_S
, MASK_FCVT_D_S
)
4421 DECLARE_INSN(fsqrt_d
, MATCH_FSQRT_D
, MASK_FSQRT_D
)
4422 DECLARE_INSN(fadd_q
, MATCH_FADD_Q
, MASK_FADD_Q
)
4423 DECLARE_INSN(fsub_q
, MATCH_FSUB_Q
, MASK_FSUB_Q
)
4424 DECLARE_INSN(fmul_q
, MATCH_FMUL_Q
, MASK_FMUL_Q
)
4425 DECLARE_INSN(fdiv_q
, MATCH_FDIV_Q
, MASK_FDIV_Q
)
4426 DECLARE_INSN(fsgnj_q
, MATCH_FSGNJ_Q
, MASK_FSGNJ_Q
)
4427 DECLARE_INSN(fsgnjn_q
, MATCH_FSGNJN_Q
, MASK_FSGNJN_Q
)
4428 DECLARE_INSN(fsgnjx_q
, MATCH_FSGNJX_Q
, MASK_FSGNJX_Q
)
4429 DECLARE_INSN(fmin_q
, MATCH_FMIN_Q
, MASK_FMIN_Q
)
4430 DECLARE_INSN(fmax_q
, MATCH_FMAX_Q
, MASK_FMAX_Q
)
4431 DECLARE_INSN(fcvt_s_q
, MATCH_FCVT_S_Q
, MASK_FCVT_S_Q
)
4432 DECLARE_INSN(fcvt_q_s
, MATCH_FCVT_Q_S
, MASK_FCVT_Q_S
)
4433 DECLARE_INSN(fcvt_d_q
, MATCH_FCVT_D_Q
, MASK_FCVT_D_Q
)
4434 DECLARE_INSN(fcvt_q_d
, MATCH_FCVT_Q_D
, MASK_FCVT_Q_D
)
4435 DECLARE_INSN(fsqrt_q
, MATCH_FSQRT_Q
, MASK_FSQRT_Q
)
4436 DECLARE_INSN(fle_s
, MATCH_FLE_S
, MASK_FLE_S
)
4437 DECLARE_INSN(flt_s
, MATCH_FLT_S
, MASK_FLT_S
)
4438 DECLARE_INSN(feq_s
, MATCH_FEQ_S
, MASK_FEQ_S
)
4439 DECLARE_INSN(fle_d
, MATCH_FLE_D
, MASK_FLE_D
)
4440 DECLARE_INSN(flt_d
, MATCH_FLT_D
, MASK_FLT_D
)
4441 DECLARE_INSN(feq_d
, MATCH_FEQ_D
, MASK_FEQ_D
)
4442 DECLARE_INSN(fle_q
, MATCH_FLE_Q
, MASK_FLE_Q
)
4443 DECLARE_INSN(flt_q
, MATCH_FLT_Q
, MASK_FLT_Q
)
4444 DECLARE_INSN(feq_q
, MATCH_FEQ_Q
, MASK_FEQ_Q
)
4445 DECLARE_INSN(fcvt_w_s
, MATCH_FCVT_W_S
, MASK_FCVT_W_S
)
4446 DECLARE_INSN(fcvt_wu_s
, MATCH_FCVT_WU_S
, MASK_FCVT_WU_S
)
4447 DECLARE_INSN(fcvt_l_s
, MATCH_FCVT_L_S
, MASK_FCVT_L_S
)
4448 DECLARE_INSN(fcvt_lu_s
, MATCH_FCVT_LU_S
, MASK_FCVT_LU_S
)
4449 DECLARE_INSN(fmv_x_s
, MATCH_FMV_X_S
, MASK_FMV_X_S
)
4450 DECLARE_INSN(fclass_s
, MATCH_FCLASS_S
, MASK_FCLASS_S
)
4451 DECLARE_INSN(fcvt_w_d
, MATCH_FCVT_W_D
, MASK_FCVT_W_D
)
4452 DECLARE_INSN(fcvt_wu_d
, MATCH_FCVT_WU_D
, MASK_FCVT_WU_D
)
4453 DECLARE_INSN(fcvt_l_d
, MATCH_FCVT_L_D
, MASK_FCVT_L_D
)
4454 DECLARE_INSN(fcvt_lu_d
, MATCH_FCVT_LU_D
, MASK_FCVT_LU_D
)
4455 DECLARE_INSN(fmv_x_d
, MATCH_FMV_X_D
, MASK_FMV_X_D
)
4456 DECLARE_INSN(fclass_d
, MATCH_FCLASS_D
, MASK_FCLASS_D
)
4457 DECLARE_INSN(fcvt_w_q
, MATCH_FCVT_W_Q
, MASK_FCVT_W_Q
)
4458 DECLARE_INSN(fcvt_wu_q
, MATCH_FCVT_WU_Q
, MASK_FCVT_WU_Q
)
4459 DECLARE_INSN(fcvt_l_q
, MATCH_FCVT_L_Q
, MASK_FCVT_L_Q
)
4460 DECLARE_INSN(fcvt_lu_q
, MATCH_FCVT_LU_Q
, MASK_FCVT_LU_Q
)
4461 DECLARE_INSN(fclass_q
, MATCH_FCLASS_Q
, MASK_FCLASS_Q
)
4462 DECLARE_INSN(fcvt_s_w
, MATCH_FCVT_S_W
, MASK_FCVT_S_W
)
4463 DECLARE_INSN(fcvt_s_wu
, MATCH_FCVT_S_WU
, MASK_FCVT_S_WU
)
4464 DECLARE_INSN(fcvt_s_l
, MATCH_FCVT_S_L
, MASK_FCVT_S_L
)
4465 DECLARE_INSN(fcvt_s_lu
, MATCH_FCVT_S_LU
, MASK_FCVT_S_LU
)
4466 DECLARE_INSN(fmv_s_x
, MATCH_FMV_S_X
, MASK_FMV_S_X
)
4467 DECLARE_INSN(fcvt_d_w
, MATCH_FCVT_D_W
, MASK_FCVT_D_W
)
4468 DECLARE_INSN(fcvt_d_wu
, MATCH_FCVT_D_WU
, MASK_FCVT_D_WU
)
4469 DECLARE_INSN(fcvt_d_l
, MATCH_FCVT_D_L
, MASK_FCVT_D_L
)
4470 DECLARE_INSN(fcvt_d_lu
, MATCH_FCVT_D_LU
, MASK_FCVT_D_LU
)
4471 DECLARE_INSN(fmv_d_x
, MATCH_FMV_D_X
, MASK_FMV_D_X
)
4472 DECLARE_INSN(fcvt_q_w
, MATCH_FCVT_Q_W
, MASK_FCVT_Q_W
)
4473 DECLARE_INSN(fcvt_q_wu
, MATCH_FCVT_Q_WU
, MASK_FCVT_Q_WU
)
4474 DECLARE_INSN(fcvt_q_l
, MATCH_FCVT_Q_L
, MASK_FCVT_Q_L
)
4475 DECLARE_INSN(fcvt_q_lu
, MATCH_FCVT_Q_LU
, MASK_FCVT_Q_LU
)
4476 DECLARE_INSN(fli_h
, MATCH_FLI_H
, MASK_FLI_H
)
4477 DECLARE_INSN(fminm_h
, MATCH_FMINM_H
, MASK_FMINM_H
)
4478 DECLARE_INSN(fmaxm_h
, MATCH_FMAXM_H
, MASK_FMAXM_H
)
4479 DECLARE_INSN(fround_h
, MATCH_FROUND_H
, MASK_FROUND_H
)
4480 DECLARE_INSN(fround_nx_h
, MATCH_FROUNDNX_H
, MASK_FROUNDNX_H
)
4481 DECLARE_INSN(fltq_h
, MATCH_FLTQ_H
, MASK_FLTQ_H
)
4482 DECLARE_INSN(fleq_h
, MATCH_FLEQ_H
, MASK_FLEQ_H
)
4483 DECLARE_INSN(fli_s
, MATCH_FLI_S
, MASK_FLI_S
)
4484 DECLARE_INSN(fminm_s
, MATCH_FMINM_S
, MASK_FMINM_S
)
4485 DECLARE_INSN(fmaxm_s
, MATCH_FMAXM_S
, MASK_FMAXM_S
)
4486 DECLARE_INSN(fround_s
, MATCH_FROUND_S
, MASK_FROUND_S
)
4487 DECLARE_INSN(fround_nx_s
, MATCH_FROUNDNX_S
, MASK_FROUNDNX_S
)
4488 DECLARE_INSN(fltq_s
, MATCH_FLTQ_S
, MASK_FLTQ_S
)
4489 DECLARE_INSN(fleq_s
, MATCH_FLEQ_S
, MASK_FLEQ_S
)
4490 DECLARE_INSN(fli_d
, MATCH_FLI_D
, MASK_FLI_D
)
4491 DECLARE_INSN(fminm_d
, MATCH_FMINM_D
, MASK_FMINM_D
)
4492 DECLARE_INSN(fmaxm_d
, MATCH_FMAXM_D
, MASK_FMAXM_D
)
4493 DECLARE_INSN(fround_d
, MATCH_FROUND_D
, MASK_FROUND_D
)
4494 DECLARE_INSN(fround_nx_d
, MATCH_FROUNDNX_D
, MASK_FROUNDNX_D
)
4495 DECLARE_INSN(fltq_d
, MATCH_FLTQ_D
, MASK_FLTQ_D
)
4496 DECLARE_INSN(fleq_d
, MATCH_FLEQ_D
, MASK_FLEQ_D
)
4497 DECLARE_INSN(fli_q
, MATCH_FLI_Q
, MASK_FLI_Q
)
4498 DECLARE_INSN(fminm_q
, MATCH_FMINM_Q
, MASK_FMINM_Q
)
4499 DECLARE_INSN(fmaxm_q
, MATCH_FMAXM_Q
, MASK_FMAXM_Q
)
4500 DECLARE_INSN(fround_q
, MATCH_FROUND_Q
, MASK_FROUND_Q
)
4501 DECLARE_INSN(fround_nx_q
, MATCH_FROUNDNX_Q
, MASK_FROUNDNX_Q
)
4502 DECLARE_INSN(fltq_q
, MATCH_FLTQ_Q
, MASK_FLTQ_Q
)
4503 DECLARE_INSN(fleq_q
, MATCH_FLEQ_Q
, MASK_FLEQ_Q
)
4504 DECLARE_INSN(fcvtmod_w_d
, MATCH_FCVTMOD_W_D
, MASK_FCVTMOD_W_D
)
4505 DECLARE_INSN(fmvh_x_d
, MATCH_FMVH_X_D
, MASK_FMVH_X_D
)
4506 DECLARE_INSN(fmvh_x_q
, MATCH_FMVH_X_Q
, MASK_FMVH_X_Q
)
4507 DECLARE_INSN(fmvp_d_x
, MATCH_FMVP_D_X
, MASK_FMVP_D_X
)
4508 DECLARE_INSN(fmvp_q_x
, MATCH_FMVP_Q_X
, MASK_FMVP_Q_X
)
4509 DECLARE_INSN(clz
, MATCH_CLZ
, MASK_CLZ
)
4510 DECLARE_INSN(ctz
, MATCH_CTZ
, MASK_CTZ
)
4511 DECLARE_INSN(cpop
, MATCH_CPOP
, MASK_CPOP
)
4512 DECLARE_INSN(min
, MATCH_MIN
, MASK_MIN
)
4513 DECLARE_INSN(minu
, MATCH_MINU
, MASK_MINU
)
4514 DECLARE_INSN(max
, MATCH_MAX
, MASK_MAX
)
4515 DECLARE_INSN(maxu
, MATCH_MAXU
, MASK_MAXU
)
4516 DECLARE_INSN(sext_b
, MATCH_SEXT_B
, MASK_SEXT_B
)
4517 DECLARE_INSN(sext_h
, MATCH_SEXT_H
, MASK_SEXT_H
)
4518 DECLARE_INSN(andn
, MATCH_ANDN
, MASK_ANDN
)
4519 DECLARE_INSN(orn
, MATCH_ORN
, MASK_ORN
)
4520 DECLARE_INSN(xnor
, MATCH_XNOR
, MASK_XNOR
)
4521 DECLARE_INSN(rol
, MATCH_ROL
, MASK_ROL
)
4522 DECLARE_INSN(ror
, MATCH_ROR
, MASK_ROR
)
4523 DECLARE_INSN(rori
, MATCH_RORI
, MASK_RORI
)
4524 DECLARE_INSN(clzw
, MATCH_CLZW
, MASK_CLZW
)
4525 DECLARE_INSN(ctzw
, MATCH_CTZW
, MASK_CTZW
)
4526 DECLARE_INSN(cpopw
, MATCH_CPOPW
, MASK_CPOPW
)
4527 DECLARE_INSN(rolw
, MATCH_ROLW
, MASK_ROLW
)
4528 DECLARE_INSN(rorw
, MATCH_RORW
, MASK_RORW
)
4529 DECLARE_INSN(roriw
, MATCH_RORIW
, MASK_RORIW
)
4530 DECLARE_INSN(sh1add
, MATCH_SH1ADD
, MASK_SH1ADD
)
4531 DECLARE_INSN(sh2add
, MATCH_SH2ADD
, MASK_SH2ADD
)
4532 DECLARE_INSN(sh3add
, MATCH_SH3ADD
, MASK_SH3ADD
)
4533 DECLARE_INSN(sh1add_uw
, MATCH_SH1ADD_UW
, MASK_SH1ADD_UW
)
4534 DECLARE_INSN(sh2add_uw
, MATCH_SH2ADD_UW
, MASK_SH2ADD_UW
)
4535 DECLARE_INSN(sh3add_uw
, MATCH_SH3ADD_UW
, MASK_SH3ADD_UW
)
4536 DECLARE_INSN(add_uw
, MATCH_ADD_UW
, MASK_ADD_UW
)
4537 DECLARE_INSN(slli_uw
, MATCH_SLLI_UW
, MASK_SLLI_UW
)
4538 DECLARE_INSN(clmul
, MATCH_CLMUL
, MASK_CLMUL
)
4539 DECLARE_INSN(clmulh
, MATCH_CLMULH
, MASK_CLMULH
)
4540 DECLARE_INSN(clmulr
, MATCH_CLMULR
, MASK_CLMULR
)
4541 DECLARE_INSN(pack
, MATCH_PACK
, MASK_PACK
)
4542 DECLARE_INSN(packh
, MATCH_PACKH
, MASK_PACKH
)
4543 DECLARE_INSN(packw
, MATCH_PACKW
, MASK_PACKW
)
4544 DECLARE_INSN(xperm4
, MATCH_XPERM4
, MASK_XPERM4
)
4545 DECLARE_INSN(xperm8
, MATCH_XPERM8
, MASK_XPERM8
)
4546 DECLARE_INSN(bclri
, MATCH_BCLRI
, MASK_BCLRI
)
4547 DECLARE_INSN(bseti
, MATCH_BSETI
, MASK_BSETI
)
4548 DECLARE_INSN(binvi
, MATCH_BINVI
, MASK_BINVI
)
4549 DECLARE_INSN(bexti
, MATCH_BEXTI
, MASK_BEXTI
)
4550 DECLARE_INSN(bclr
, MATCH_BCLR
, MASK_BCLR
)
4551 DECLARE_INSN(bset
, MATCH_BSET
, MASK_BSET
)
4552 DECLARE_INSN(binv
, MATCH_BINV
, MASK_BINV
)
4553 DECLARE_INSN(bext
, MATCH_BEXT
, MASK_BEXT
)
4554 DECLARE_INSN(flw
, MATCH_FLW
, MASK_FLW
)
4555 DECLARE_INSN(fld
, MATCH_FLD
, MASK_FLD
)
4556 DECLARE_INSN(flq
, MATCH_FLQ
, MASK_FLQ
)
4557 DECLARE_INSN(fsw
, MATCH_FSW
, MASK_FSW
)
4558 DECLARE_INSN(fsd
, MATCH_FSD
, MASK_FSD
)
4559 DECLARE_INSN(fsq
, MATCH_FSQ
, MASK_FSQ
)
4560 DECLARE_INSN(fmadd_s
, MATCH_FMADD_S
, MASK_FMADD_S
)
4561 DECLARE_INSN(fmsub_s
, MATCH_FMSUB_S
, MASK_FMSUB_S
)
4562 DECLARE_INSN(fnmsub_s
, MATCH_FNMSUB_S
, MASK_FNMSUB_S
)
4563 DECLARE_INSN(fnmadd_s
, MATCH_FNMADD_S
, MASK_FNMADD_S
)
4564 DECLARE_INSN(fmadd_d
, MATCH_FMADD_D
, MASK_FMADD_D
)
4565 DECLARE_INSN(fmsub_d
, MATCH_FMSUB_D
, MASK_FMSUB_D
)
4566 DECLARE_INSN(fnmsub_d
, MATCH_FNMSUB_D
, MASK_FNMSUB_D
)
4567 DECLARE_INSN(fnmadd_d
, MATCH_FNMADD_D
, MASK_FNMADD_D
)
4568 DECLARE_INSN(fmadd_q
, MATCH_FMADD_Q
, MASK_FMADD_Q
)
4569 DECLARE_INSN(fmsub_q
, MATCH_FMSUB_Q
, MASK_FMSUB_Q
)
4570 DECLARE_INSN(fnmsub_q
, MATCH_FNMSUB_Q
, MASK_FNMSUB_Q
)
4571 DECLARE_INSN(fnmadd_q
, MATCH_FNMADD_Q
, MASK_FNMADD_Q
)
4572 DECLARE_INSN(c_addi4spn
, MATCH_C_ADDI4SPN
, MASK_C_ADDI4SPN
)
4573 DECLARE_INSN(c_fld
, MATCH_C_FLD
, MASK_C_FLD
)
4574 DECLARE_INSN(c_lw
, MATCH_C_LW
, MASK_C_LW
)
4575 DECLARE_INSN(c_flw
, MATCH_C_FLW
, MASK_C_FLW
)
4576 DECLARE_INSN(c_fsd
, MATCH_C_FSD
, MASK_C_FSD
)
4577 DECLARE_INSN(c_sw
, MATCH_C_SW
, MASK_C_SW
)
4578 DECLARE_INSN(c_fsw
, MATCH_C_FSW
, MASK_C_FSW
)
4579 DECLARE_INSN(c_addi
, MATCH_C_ADDI
, MASK_C_ADDI
)
4580 DECLARE_INSN(c_jal
, MATCH_C_JAL
, MASK_C_JAL
)
4581 DECLARE_INSN(c_li
, MATCH_C_LI
, MASK_C_LI
)
4582 DECLARE_INSN(c_lui
, MATCH_C_LUI
, MASK_C_LUI
)
4583 DECLARE_INSN(c_srli
, MATCH_C_SRLI
, MASK_C_SRLI
)
4584 DECLARE_INSN(c_srai
, MATCH_C_SRAI
, MASK_C_SRAI
)
4585 DECLARE_INSN(c_andi
, MATCH_C_ANDI
, MASK_C_ANDI
)
4586 DECLARE_INSN(c_sub
, MATCH_C_SUB
, MASK_C_SUB
)
4587 DECLARE_INSN(c_xor
, MATCH_C_XOR
, MASK_C_XOR
)
4588 DECLARE_INSN(c_or
, MATCH_C_OR
, MASK_C_OR
)
4589 DECLARE_INSN(c_and
, MATCH_C_AND
, MASK_C_AND
)
4590 DECLARE_INSN(c_subw
, MATCH_C_SUBW
, MASK_C_SUBW
)
4591 DECLARE_INSN(c_addw
, MATCH_C_ADDW
, MASK_C_ADDW
)
4592 DECLARE_INSN(c_j
, MATCH_C_J
, MASK_C_J
)
4593 DECLARE_INSN(c_beqz
, MATCH_C_BEQZ
, MASK_C_BEQZ
)
4594 DECLARE_INSN(c_bnez
, MATCH_C_BNEZ
, MASK_C_BNEZ
)
4595 DECLARE_INSN(c_slli
, MATCH_C_SLLI
, MASK_C_SLLI
)
4596 DECLARE_INSN(c_fldsp
, MATCH_C_FLDSP
, MASK_C_FLDSP
)
4597 DECLARE_INSN(c_lwsp
, MATCH_C_LWSP
, MASK_C_LWSP
)
4598 DECLARE_INSN(c_flwsp
, MATCH_C_FLWSP
, MASK_C_FLWSP
)
4599 DECLARE_INSN(c_mv
, MATCH_C_MV
, MASK_C_MV
)
4600 DECLARE_INSN(c_add
, MATCH_C_ADD
, MASK_C_ADD
)
4601 DECLARE_INSN(c_fsdsp
, MATCH_C_FSDSP
, MASK_C_FSDSP
)
4602 DECLARE_INSN(c_swsp
, MATCH_C_SWSP
, MASK_C_SWSP
)
4603 DECLARE_INSN(c_fswsp
, MATCH_C_FSWSP
, MASK_C_FSWSP
)
4604 DECLARE_INSN(c_nop
, MATCH_C_NOP
, MASK_C_NOP
)
4605 DECLARE_INSN(c_addi16sp
, MATCH_C_ADDI16SP
, MASK_C_ADDI16SP
)
4606 DECLARE_INSN(c_jr
, MATCH_C_JR
, MASK_C_JR
)
4607 DECLARE_INSN(c_jalr
, MATCH_C_JALR
, MASK_C_JALR
)
4608 DECLARE_INSN(c_ebreak
, MATCH_C_EBREAK
, MASK_C_EBREAK
)
4609 DECLARE_INSN(c_ld
, MATCH_C_LD
, MASK_C_LD
)
4610 DECLARE_INSN(c_sd
, MATCH_C_SD
, MASK_C_SD
)
4611 DECLARE_INSN(c_addiw
, MATCH_C_ADDIW
, MASK_C_ADDIW
)
4612 DECLARE_INSN(c_ldsp
, MATCH_C_LDSP
, MASK_C_LDSP
)
4613 DECLARE_INSN(c_sdsp
, MATCH_C_SDSP
, MASK_C_SDSP
)
4614 DECLARE_INSN(sinval_vma
, MATCH_SINVAL_VMA
, MASK_SINVAL_VMA
)
4615 DECLARE_INSN(sfence_w_inval
, MATCH_SFENCE_W_INVAL
, MASK_SFENCE_W_INVAL
)
4616 DECLARE_INSN(sfence_inval_ir
, MATCH_SFENCE_INVAL_IR
, MASK_SFENCE_INVAL_IR
)
4617 DECLARE_INSN(hinval_vvma
, MATCH_HINVAL_VVMA
, MASK_HINVAL_VVMA
)
4618 DECLARE_INSN(hinval_gvma
, MATCH_HINVAL_GVMA
, MASK_HINVAL_GVMA
)
4619 DECLARE_INSN(hfence_vvma
, MATCH_HFENCE_VVMA
, MASK_HFENCE_VVMA
)
4620 DECLARE_INSN(hfence_gvma
, MATCH_HFENCE_GVMA
, MASK_HFENCE_GVMA
)
4621 DECLARE_INSN(hlv_b
, MATCH_HLV_B
, MASK_HLV_B
)
4622 DECLARE_INSN(hlv_h
, MATCH_HLV_H
, MASK_HLV_H
)
4623 DECLARE_INSN(hlv_w
, MATCH_HLV_W
, MASK_HLV_W
)
4624 DECLARE_INSN(hlv_d
, MATCH_HLV_D
, MASK_HLV_D
)
4625 DECLARE_INSN(hlv_bu
, MATCH_HLV_BU
, MASK_HLV_BU
)
4626 DECLARE_INSN(hlv_hu
, MATCH_HLV_HU
, MASK_HLV_HU
)
4627 DECLARE_INSN(hlv_wu
, MATCH_HLV_WU
, MASK_HLV_WU
)
4628 DECLARE_INSN(hlvx_hu
, MATCH_HLVX_HU
, MASK_HLVX_HU
)
4629 DECLARE_INSN(hlvx_wu
, MATCH_HLVX_WU
, MASK_HLVX_WU
)
4630 DECLARE_INSN(hsv_b
, MATCH_HSV_B
, MASK_HSV_B
)
4631 DECLARE_INSN(hsv_h
, MATCH_HSV_H
, MASK_HSV_H
)
4632 DECLARE_INSN(hsv_w
, MATCH_HSV_W
, MASK_HSV_W
)
4633 DECLARE_INSN(hsv_d
, MATCH_HSV_D
, MASK_HSV_D
)
4634 /* Zicbop instructions. */
4635 DECLARE_INSN(prefetch_r
, MATCH_PREFETCH_R
, MASK_PREFETCH_R
)
4636 DECLARE_INSN(prefetch_w
, MATCH_PREFETCH_W
, MASK_PREFETCH_W
)
4637 DECLARE_INSN(prefetch_i
, MATCH_PREFETCH_I
, MASK_PREFETCH_I
)
4638 /* Zicbom/Zicboz instructions. */
4639 DECLARE_INSN(cbo_clean
, MATCH_CBO_CLEAN
, MASK_CBO_CLEAN
)
4640 DECLARE_INSN(cbo_flush
, MATCH_CBO_FLUSH
, MASK_CBO_FLUSH
)
4641 DECLARE_INSN(cbo_inval
, MATCH_CBO_INVAL
, MASK_CBO_INVAL
)
4642 DECLARE_INSN(cbo_zero
, MATCH_CBO_ZERO
, MASK_CBO_ZERO
)
4643 /* Zicond instructions. */
4644 DECLARE_INSN(czero_eqz
, MATCH_CZERO_EQZ
, MASK_CZERO_EQZ
)
4645 DECLARE_INSN(czero_nez
, MATCH_CZERO_NEZ
, MASK_CZERO_NEZ
)
4646 /* Zihintntl hint instructions. */
4647 DECLARE_INSN(ntl_p1
, MATCH_NTL_P1
, MASK_NTL_P1
)
4648 DECLARE_INSN(ntl_pall
, MATCH_NTL_PALL
, MASK_NTL_PALL
)
4649 DECLARE_INSN(ntl_s1
, MATCH_NTL_S1
, MASK_NTL_S1
)
4650 DECLARE_INSN(ntl_all
, MATCH_NTL_ALL
, MASK_NTL_ALL
)
4651 DECLARE_INSN(c_ntl_p1
, MATCH_C_NTL_P1
, MASK_C_NTL_P1
)
4652 DECLARE_INSN(c_ntl_pall
, MATCH_C_NTL_PALL
, MASK_C_NTL_PALL
)
4653 DECLARE_INSN(c_ntl_s1
, MATCH_C_NTL_S1
, MASK_C_NTL_S1
)
4654 DECLARE_INSN(c_ntl_all
, MATCH_C_NTL_ALL
, MASK_C_NTL_ALL
)
4655 /* Zimop instructions. */
4656 DECLARE_INSN(MOP_R_0
, MATCH_MOP_R_0
, MASK_MOP_R_0
)
4657 DECLARE_INSN(MOP_R_1
, MATCH_MOP_R_1
, MASK_MOP_R_1
)
4658 DECLARE_INSN(MOP_R_2
, MATCH_MOP_R_2
, MASK_MOP_R_2
)
4659 DECLARE_INSN(MOP_R_3
, MATCH_MOP_R_3
, MASK_MOP_R_3
)
4660 DECLARE_INSN(MOP_R_4
, MATCH_MOP_R_4
, MASK_MOP_R_4
)
4661 DECLARE_INSN(MOP_R_5
, MATCH_MOP_R_5
, MASK_MOP_R_5
)
4662 DECLARE_INSN(MOP_R_6
, MATCH_MOP_R_6
, MASK_MOP_R_6
)
4663 DECLARE_INSN(MOP_R_7
, MATCH_MOP_R_7
, MASK_MOP_R_7
)
4664 DECLARE_INSN(MOP_R_8
, MATCH_MOP_R_8
, MASK_MOP_R_8
)
4665 DECLARE_INSN(MOP_R_9
, MATCH_MOP_R_9
, MASK_MOP_R_9
)
4666 DECLARE_INSN(MOP_R_10
, MATCH_MOP_R_10
, MASK_MOP_R_10
)
4667 DECLARE_INSN(MOP_R_11
, MATCH_MOP_R_11
, MASK_MOP_R_11
)
4668 DECLARE_INSN(MOP_R_12
, MATCH_MOP_R_12
, MASK_MOP_R_12
)
4669 DECLARE_INSN(MOP_R_13
, MATCH_MOP_R_13
, MASK_MOP_R_13
)
4670 DECLARE_INSN(MOP_R_14
, MATCH_MOP_R_14
, MASK_MOP_R_14
)
4671 DECLARE_INSN(MOP_R_15
, MATCH_MOP_R_15
, MASK_MOP_R_15
)
4672 DECLARE_INSN(MOP_R_16
, MATCH_MOP_R_16
, MASK_MOP_R_16
)
4673 DECLARE_INSN(MOP_R_17
, MATCH_MOP_R_17
, MASK_MOP_R_17
)
4674 DECLARE_INSN(MOP_R_18
, MATCH_MOP_R_18
, MASK_MOP_R_18
)
4675 DECLARE_INSN(MOP_R_19
, MATCH_MOP_R_19
, MASK_MOP_R_19
)
4676 DECLARE_INSN(MOP_R_20
, MATCH_MOP_R_20
, MASK_MOP_R_20
)
4677 DECLARE_INSN(MOP_R_21
, MATCH_MOP_R_21
, MASK_MOP_R_21
)
4678 DECLARE_INSN(MOP_R_22
, MATCH_MOP_R_22
, MASK_MOP_R_22
)
4679 DECLARE_INSN(MOP_R_23
, MATCH_MOP_R_23
, MASK_MOP_R_23
)
4680 DECLARE_INSN(MOP_R_24
, MATCH_MOP_R_24
, MASK_MOP_R_24
)
4681 DECLARE_INSN(MOP_R_25
, MATCH_MOP_R_25
, MASK_MOP_R_25
)
4682 DECLARE_INSN(MOP_R_26
, MATCH_MOP_R_26
, MASK_MOP_R_26
)
4683 DECLARE_INSN(MOP_R_27
, MATCH_MOP_R_27
, MASK_MOP_R_27
)
4684 DECLARE_INSN(MOP_R_28
, MATCH_MOP_R_28
, MASK_MOP_R_28
)
4685 DECLARE_INSN(MOP_R_29
, MATCH_MOP_R_29
, MASK_MOP_R_29
)
4686 DECLARE_INSN(MOP_R_30
, MATCH_MOP_R_30
, MASK_MOP_R_30
)
4687 DECLARE_INSN(MOP_R_31
, MATCH_MOP_R_31
, MASK_MOP_R_31
)
4688 DECLARE_INSN(MOP_RR_0
, MATCH_MOP_RR_0
, MASK_MOP_RR_0
)
4689 DECLARE_INSN(MOP_RR_1
, MATCH_MOP_RR_1
, MASK_MOP_RR_1
)
4690 DECLARE_INSN(MOP_RR_2
, MATCH_MOP_RR_2
, MASK_MOP_RR_2
)
4691 DECLARE_INSN(MOP_RR_3
, MATCH_MOP_RR_3
, MASK_MOP_RR_3
)
4692 DECLARE_INSN(MOP_RR_4
, MATCH_MOP_RR_4
, MASK_MOP_RR_4
)
4693 DECLARE_INSN(MOP_RR_5
, MATCH_MOP_RR_5
, MASK_MOP_RR_5
)
4694 DECLARE_INSN(MOP_RR_6
, MATCH_MOP_RR_6
, MASK_MOP_RR_6
)
4695 DECLARE_INSN(MOP_RR_7
, MATCH_MOP_RR_7
, MASK_MOP_RR_7
)
4696 /* Zacas instructions. */
4697 DECLARE_INSN(amocas_w
, MATCH_AMOCAS_W
, MASK_AMOCAS_W
)
4698 DECLARE_INSN(amocas_d
, MATCH_AMOCAS_D
, MASK_AMOCAS_D
)
4699 DECLARE_INSN(amocas_q
, MATCH_AMOCAS_Q
, MASK_AMOCAS_Q
)
4700 /* Zawrs instructions. */
4701 DECLARE_INSN(wrs_nto
, MATCH_WRS_NTO
, MASK_WRS_NTO
)
4702 DECLARE_INSN(wrs_sto
, MATCH_WRS_STO
, MASK_WRS_STO
)
4703 /* Zfbfmin instructions. */
4704 DECLARE_INSN(FCVT_BF16_S
, MATCH_FCVT_BF16_S
, MASK_FCVT_BF16_S
)
4705 DECLARE_INSN(FCVT_S_BF16
, MATCH_FCVT_S_BF16
, MASK_FCVT_S_BF16
)
4706 /* Zvfbfmin instructions. */
4707 DECLARE_INSN(VFNCVTBF16_F_F_W
, MATCH_VFNCVTBF16_F_F_W
, MASK_VFNCVTBF16_F_F_W
)
4708 DECLARE_INSN(VFWCVTBF16_F_F_V
, MATCH_VFWCVTBF16_F_F_V
, MASK_VFWCVTBF16_F_F_V
)
4709 /* Zvfbfwma instructions. */
4710 DECLARE_INSN(VFWMACCBF16_VF
, MATCH_VFWMACCBF16_VF
, MASK_VFWMACCBF16_VF
)
4711 DECLARE_INSN(VFWMACCBF16_VV
, MATCH_VFWMACCBF16_VV
, MASK_VFWMACCBF16_VV
)
4712 /* Zvbb/Zvkb instructions. */
4713 DECLARE_INSN(vandn_vv
, MATCH_VANDN_VV
, MASK_VANDN_VV
)
4714 DECLARE_INSN(vandn_vx
, MATCH_VANDN_VX
, MASK_VANDN_VX
)
4715 DECLARE_INSN(vbrev8_v
, MATCH_VBREV8_V
, MASK_VBREV8_V
)
4716 DECLARE_INSN(vbrev_v
, MATCH_VBREV_V
, MASK_VBREV_V
)
4717 DECLARE_INSN(vclz_v
, MATCH_VCLZ_V
, MASK_VCLZ_V
)
4718 DECLARE_INSN(vcpop_v
, MATCH_VCPOP_V
, MASK_VCPOP_V
)
4719 DECLARE_INSN(vctz_v
, MATCH_VCTZ_V
, MASK_VCTZ_V
)
4720 DECLARE_INSN(vrev8_v
, MATCH_VREV8_V
, MASK_VREV8_V
)
4721 DECLARE_INSN(vrol_vv
, MATCH_VROL_VV
, MASK_VROL_VV
)
4722 DECLARE_INSN(vrol_vx
, MATCH_VROL_VX
, MASK_VROL_VX
)
4723 DECLARE_INSN(vror_vi
, MATCH_VROR_VI
, MASK_VROR_VI
)
4724 DECLARE_INSN(vror_vv
, MATCH_VROR_VV
, MASK_VROR_VV
)
4725 DECLARE_INSN(vror_vx
, MATCH_VROR_VX
, MASK_VROR_VX
)
4726 DECLARE_INSN(vwsll_vi
, MATCH_VWSLL_VI
, MASK_VWSLL_VI
)
4727 DECLARE_INSN(vwsll_vv
, MATCH_VWSLL_VV
, MASK_VWSLL_VV
)
4728 DECLARE_INSN(vwsll_vx
, MATCH_VWSLL_VX
, MASK_VWSLL_VX
)
4729 /* Zvbc instructions. */
4730 DECLARE_INSN(vclmul_vv
, MATCH_VCLMUL_VV
, MASK_VCLMUL_VV
)
4731 DECLARE_INSN(vclmul_vx
, MATCH_VCLMUL_VX
, MASK_VCLMUL_VX
)
4732 DECLARE_INSN(vclmulh_vv
, MATCH_VCLMULH_VV
, MASK_VCLMULH_VV
)
4733 DECLARE_INSN(vclmulh_vx
, MATCH_VCLMULH_VX
, MASK_VCLMULH_VX
)
4734 /* Zvkg instructions. */
4735 DECLARE_INSN(vghsh_vv
, MATCH_VGHSH_VV
, MASK_VGHSH_VV
)
4736 DECLARE_INSN(vgmul_vv
, MATCH_VGMUL_VV
, MASK_VGMUL_VV
)
4737 /* Zvkned instructions. */
4738 DECLARE_INSN(vaesdf_vs
, MATCH_VAESDF_VS
, MASK_VAESDF_VS
)
4739 DECLARE_INSN(vaesdf_vv
, MATCH_VAESDF_VV
, MASK_VAESDF_VV
)
4740 DECLARE_INSN(vaesdm_vs
, MATCH_VAESDM_VS
, MASK_VAESDM_VS
)
4741 DECLARE_INSN(vaesdm_vv
, MATCH_VAESDM_VV
, MASK_VAESDM_VV
)
4742 DECLARE_INSN(vaesef_vs
, MATCH_VAESEF_VS
, MASK_VAESEF_VS
)
4743 DECLARE_INSN(vaesef_vv
, MATCH_VAESEF_VV
, MASK_VAESEF_VV
)
4744 DECLARE_INSN(vaesem_vs
, MATCH_VAESEM_VS
, MASK_VAESEM_VS
)
4745 DECLARE_INSN(vaesem_vv
, MATCH_VAESEM_VV
, MASK_VAESEM_VV
)
4746 DECLARE_INSN(vaeskf1_vi
, MATCH_VAESKF1_VI
, MASK_VAESKF1_VI
)
4747 DECLARE_INSN(vaeskf2_vi
, MATCH_VAESKF2_VI
, MASK_VAESKF2_VI
)
4748 DECLARE_INSN(vaesz_vs
, MATCH_VAESZ_VS
, MASK_VAESZ_VS
)
4749 /* Zvknh[a,b] instructions. */
4750 DECLARE_INSN(vsha2ch_vv
, MATCH_VSHA2CH_VV
, MASK_VSHA2CH_VV
)
4751 DECLARE_INSN(vsha2cl_vv
, MATCH_VSHA2CL_VV
, MASK_VSHA2CL_VV
)
4752 DECLARE_INSN(vsha2ms_vv
, MATCH_VSHA2MS_VV
, MASK_VSHA2MS_VV
)
4753 /* Zvksed instructions. */
4754 DECLARE_INSN(vsm4k_vi
, MATCH_VSM4K_VI
, MASK_VSM4K_VI
)
4755 DECLARE_INSN(vsm4r_vs
, MATCH_VSM4R_VS
, MASK_VSM4R_VS
)
4756 DECLARE_INSN(vsm4r_vv
, MATCH_VSM4R_VV
, MASK_VSM4R_VV
)
4757 /* Zvksh instructions. */
4758 DECLARE_INSN(vsm3c_vi
, MATCH_VSM3C_VI
, MASK_VSM3C_VI
)
4759 DECLARE_INSN(vsm3me_vv
, MATCH_VSM3ME_VV
, MASK_VSM3ME_VV
)
4760 /* Zcb instructions. */
4761 DECLARE_INSN(c_sext_b
, MATCH_C_SEXT_B
, MASK_C_SEXT_B
)
4762 DECLARE_INSN(c_sext_h
, MATCH_C_SEXT_H
, MASK_C_SEXT_H
)
4763 DECLARE_INSN(c_zext_b
, MATCH_C_ZEXT_B
, MASK_C_ZEXT_B
)
4764 DECLARE_INSN(c_zext_h
, MATCH_C_ZEXT_H
, MASK_C_ZEXT_H
)
4765 DECLARE_INSN(c_zext_w
, MATCH_C_ZEXT_W
, MASK_C_ZEXT_W
)
4766 DECLARE_INSN(c_mul
, MATCH_C_MUL
, MASK_C_MUL
)
4767 DECLARE_INSN(c_not
, MATCH_C_NOT
, MASK_C_NOT
)
4768 DECLARE_INSN(c_lbu
, MATCH_C_LBU
, MASK_C_LBU
)
4769 DECLARE_INSN(c_lhu
, MATCH_C_LHU
, MASK_C_LHU
)
4770 DECLARE_INSN(c_lh
, MATCH_C_LH
, MASK_C_LH
)
4771 DECLARE_INSN(c_sb
, MATCH_C_SB
, MASK_C_SB
)
4772 DECLARE_INSN(c_sh
, MATCH_C_SH
, MASK_C_SH
)
4773 /* Zcmop instructions. */
4774 DECLARE_INSN(c_mop_1
, MATCH_C_MOP_1
, MASK_C_MOP_1
)
4775 DECLARE_INSN(c_mop_3
, MATCH_C_MOP_3
, MASK_C_MOP_3
)
4776 DECLARE_INSN(c_mop_5
, MATCH_C_MOP_5
, MASK_C_MOP_5
)
4777 DECLARE_INSN(c_mop_7
, MATCH_C_MOP_7
, MASK_C_MOP_7
)
4778 DECLARE_INSN(c_mop_9
, MATCH_C_MOP_9
, MASK_C_MOP_9
)
4779 DECLARE_INSN(c_mop_11
, MATCH_C_MOP_11
, MASK_C_MOP_11
)
4780 DECLARE_INSN(c_mop_13
, MATCH_C_MOP_13
, MASK_C_MOP_13
)
4781 DECLARE_INSN(c_mop_15
, MATCH_C_MOP_15
, MASK_C_MOP_15
)
4782 /* Zcmp instructions. */
4783 DECLARE_INSN(cm_push
, MATCH_CM_PUSH
, MASK_CM_PUSH
)
4784 DECLARE_INSN(cm_pop
, MATCH_CM_POP
, MASK_CM_POP
)
4785 DECLARE_INSN(cm_popret
, MATCH_CM_POPRET
, MASK_CM_POPRET
)
4786 DECLARE_INSN(cm_popretz
, MATCH_CM_POPRETZ
, MASK_CM_POPRETZ
)
4787 DECLARE_INSN(cm_mvsa01
, MATCH_CM_MVSA01
, MASK_CM_MVSA01
)
4788 DECLARE_INSN(cm_mva01s
, MATCH_CM_MVA01S
, MASK_CM_MVA01S
)
4789 /* Zcmt instructions. */
4790 DECLARE_INSN(cm_jt
, MATCH_CM_JT
, MASK_CM_JT
)
4791 DECLARE_INSN(cm_jalt
, MATCH_CM_JALT
, MASK_CM_JALT
)
4792 /* Smctr/Ssctr instruction. */
4793 DECLARE_INSN(sctrclr
, MATCH_SCTRCLR
, MASK_SCTRCLR
)
4794 /* Vendor-specific (T-Head) XTheadBa instructions. */
4795 DECLARE_INSN(th_addsl
, MATCH_TH_ADDSL
, MASK_TH_ADDSL
)
4796 /* Vendor-specific (T-Head) XTheadBb instructions. */
4797 DECLARE_INSN(th_srri
, MATCH_TH_SRRI
, MASK_TH_SRRI
)
4798 DECLARE_INSN(th_srriw
, MATCH_TH_SRRIW
, MASK_TH_SRRIW
)
4799 DECLARE_INSN(th_ext
, MATCH_TH_EXT
, MASK_TH_EXT
)
4800 DECLARE_INSN(th_extu
, MATCH_TH_EXTU
, MASK_TH_EXTU
)
4801 DECLARE_INSN(th_ff0
, MATCH_TH_FF0
, MASK_TH_FF0
)
4802 DECLARE_INSN(th_ff1
, MATCH_TH_FF1
, MASK_TH_FF1
)
4803 DECLARE_INSN(th_rev
, MATCH_TH_REV
, MASK_TH_REV
)
4804 DECLARE_INSN(th_revw
, MATCH_TH_REVW
, MASK_TH_REVW
)
4805 DECLARE_INSN(th_tstbnz
, MATCH_TH_TSTNBZ
, MASK_TH_TSTNBZ
)
4806 /* Vendor-specific (T-Head) XTheadBs instructions. */
4807 DECLARE_INSN(th_tst
, MATCH_TH_TST
, MASK_TH_TST
)
4808 /* Vendor-specific (T-Head) XTheadCmo instructions. */
4809 DECLARE_INSN(th_dcache_call
, MATCH_TH_DCACHE_CALL
, MASK_TH_DCACHE_CALL
)
4810 DECLARE_INSN(th_dcache_ciall
, MATCH_TH_DCACHE_CIALL
, MASK_TH_DCACHE_CIALL
)
4811 DECLARE_INSN(th_dcache_iall
, MATCH_TH_DCACHE_IALL
, MASK_TH_DCACHE_IALL
)
4812 DECLARE_INSN(th_dcache_cpa
, MATCH_TH_DCACHE_CPA
, MASK_TH_DCACHE_CPA
)
4813 DECLARE_INSN(th_dcache_cipa
, MATCH_TH_DCACHE_CIPA
, MASK_TH_DCACHE_CIPA
)
4814 DECLARE_INSN(th_dcache_ipa
, MATCH_TH_DCACHE_IPA
, MASK_TH_DCACHE_IPA
)
4815 DECLARE_INSN(th_dcache_cva
, MATCH_TH_DCACHE_CVA
, MASK_TH_DCACHE_CVA
)
4816 DECLARE_INSN(th_dcache_civa
, MATCH_TH_DCACHE_CIVA
, MASK_TH_DCACHE_CIVA
)
4817 DECLARE_INSN(th_dcache_iva
, MATCH_TH_DCACHE_IVA
, MASK_TH_DCACHE_IVA
)
4818 DECLARE_INSN(th_dcache_csw
, MATCH_TH_DCACHE_CSW
, MASK_TH_DCACHE_CSW
)
4819 DECLARE_INSN(th_dcache_cisw
, MATCH_TH_DCACHE_CISW
, MASK_TH_DCACHE_CISW
)
4820 DECLARE_INSN(th_dcache_isw
, MATCH_TH_DCACHE_ISW
, MASK_TH_DCACHE_ISW
)
4821 DECLARE_INSN(th_dcache_cpal1
, MATCH_TH_DCACHE_CPAL1
, MASK_TH_DCACHE_CPAL1
)
4822 DECLARE_INSN(th_dcache_cval1
, MATCH_TH_DCACHE_CVAL1
, MASK_TH_DCACHE_CVAL1
)
4823 DECLARE_INSN(th_icache_iall
, MATCH_TH_ICACHE_IALL
, MASK_TH_ICACHE_IALL
)
4824 DECLARE_INSN(th_icache_ialls
, MATCH_TH_ICACHE_IALLS
, MASK_TH_ICACHE_IALLS
)
4825 DECLARE_INSN(th_icache_ipa
, MATCH_TH_ICACHE_IPA
, MASK_TH_ICACHE_IPA
)
4826 DECLARE_INSN(th_icache_iva
, MATCH_TH_ICACHE_IVA
, MASK_TH_ICACHE_IVA
)
4827 DECLARE_INSN(th_l2cache_call
, MATCH_TH_L2CACHE_CALL
, MASK_TH_L2CACHE_CALL
)
4828 DECLARE_INSN(th_l2cache_ciall
, MATCH_TH_L2CACHE_CIALL
, MASK_TH_L2CACHE_CIALL
)
4829 DECLARE_INSN(th_l2cache_iall
, MATCH_TH_L2CACHE_IALL
, MASK_TH_L2CACHE_IALL
)
4830 /* Vendor-specific (T-Head) XTheadCondMov instructions. */
4831 DECLARE_INSN(th_mveqz
, MATCH_TH_MVEQZ
, MASK_TH_MVEQZ
)
4832 DECLARE_INSN(th_mvnez
, MATCH_TH_MVNEZ
, MASK_TH_MVNEZ
)
4833 /* Vendor-specific (T-Head) XTheadFMemIdx instructions. */
4834 DECLARE_INSN(th_flrd
, MATCH_TH_FLRD
, MASK_TH_FLRD
)
4835 DECLARE_INSN(th_flrw
, MATCH_TH_FLRW
, MASK_TH_FLRW
)
4836 DECLARE_INSN(th_flurd
, MATCH_TH_FLURD
, MASK_TH_FLURD
)
4837 DECLARE_INSN(th_flurw
, MATCH_TH_FLURW
, MASK_TH_FLURW
)
4838 DECLARE_INSN(th_fsrd
, MATCH_TH_FSRD
, MASK_TH_FSRD
)
4839 DECLARE_INSN(th_fsrw
, MATCH_TH_FSRW
, MASK_TH_FSRW
)
4840 DECLARE_INSN(th_fsurd
, MATCH_TH_FSURD
, MASK_TH_FSURD
)
4841 DECLARE_INSN(th_fsurw
, MATCH_TH_FSURW
, MASK_TH_FSURW
)
4842 /* Vendor-specific (T-Head) XTheadFmv instructions. */
4843 DECLARE_INSN(th_fmv_hw_x
, MATCH_TH_FMV_HW_X
, MASK_TH_FMV_HW_X
)
4844 DECLARE_INSN(th_fmv_x_hw
, MATCH_TH_FMV_X_HW
, MASK_TH_FMV_X_HW
)
4845 /* Vendor-specific (T-Head) XTheadInt instructions. */
4846 DECLARE_INSN(th_ipop
, MATCH_TH_IPOP
, MASK_TH_IPOP
)
4847 DECLARE_INSN(th_ipush
, MATCH_TH_IPUSH
, MASK_TH_IPUSH
)
4848 /* Vendor-specific (T-Head) XTheadMac instructions. */
4849 DECLARE_INSN(th_mula
, MATCH_TH_MULA
, MASK_TH_MULA
)
4850 DECLARE_INSN(th_mulah
, MATCH_TH_MULAH
, MASK_TH_MULAH
)
4851 DECLARE_INSN(th_mulaw
, MATCH_TH_MULAW
, MASK_TH_MULAW
)
4852 DECLARE_INSN(th_muls
, MATCH_TH_MULS
, MASK_TH_MULS
)
4853 DECLARE_INSN(th_mulsh
, MATCH_TH_MULSH
, MASK_TH_MULSH
)
4854 DECLARE_INSN(th_mulsw
, MATCH_TH_MULSW
, MASK_TH_MULSW
)
4855 /* Vendor-specific (T-Head) XTheadMemIdx instructions. */
4856 DECLARE_INSN(th_ldia
, MATCH_TH_LDIA
, MASK_TH_LDIA
)
4857 DECLARE_INSN(th_ldib
, MATCH_TH_LDIB
, MASK_TH_LDIB
)
4858 DECLARE_INSN(th_lwia
, MATCH_TH_LWIA
, MASK_TH_LWIA
)
4859 DECLARE_INSN(th_lwib
, MATCH_TH_LWIB
, MASK_TH_LWIB
)
4860 DECLARE_INSN(th_lwuia
, MATCH_TH_LWUIA
, MASK_TH_LWUIA
)
4861 DECLARE_INSN(th_lwuib
, MATCH_TH_LWUIB
, MASK_TH_LWUIB
)
4862 DECLARE_INSN(th_lhia
, MATCH_TH_LHIA
, MASK_TH_LHIA
)
4863 DECLARE_INSN(th_lhib
, MATCH_TH_LHIB
, MASK_TH_LHIB
)
4864 DECLARE_INSN(th_lhuia
, MATCH_TH_LHUIA
, MASK_TH_LHUIA
)
4865 DECLARE_INSN(th_lhuib
, MATCH_TH_LHUIB
, MASK_TH_LHUIB
)
4866 DECLARE_INSN(th_lbia
, MATCH_TH_LBIA
, MASK_TH_LBIA
)
4867 DECLARE_INSN(th_lbib
, MATCH_TH_LBIB
, MASK_TH_LBIB
)
4868 DECLARE_INSN(th_lbuia
, MATCH_TH_LBUIA
, MASK_TH_LBUIA
)
4869 DECLARE_INSN(th_lbuib
, MATCH_TH_LBUIB
, MASK_TH_LBUIB
)
4870 DECLARE_INSN(th_sdia
, MATCH_TH_SDIA
, MASK_TH_SDIA
)
4871 DECLARE_INSN(th_sdib
, MATCH_TH_SDIB
, MASK_TH_SDIB
)
4872 DECLARE_INSN(th_swia
, MATCH_TH_SWIA
, MASK_TH_SWIA
)
4873 DECLARE_INSN(th_swib
, MATCH_TH_SWIB
, MASK_TH_SWIB
)
4874 DECLARE_INSN(th_shia
, MATCH_TH_SHIA
, MASK_TH_SHIA
)
4875 DECLARE_INSN(th_shib
, MATCH_TH_SHIB
, MASK_TH_SHIB
)
4876 DECLARE_INSN(th_sbia
, MATCH_TH_SBIA
, MASK_TH_SBIA
)
4877 DECLARE_INSN(th_sbib
, MATCH_TH_SBIB
, MASK_TH_SBIB
)
4878 DECLARE_INSN(th_lrd
, MATCH_TH_LRD
, MASK_TH_LRD
)
4879 DECLARE_INSN(th_lrw
, MATCH_TH_LRW
, MASK_TH_LRW
)
4880 DECLARE_INSN(th_lrwu
, MATCH_TH_LRWU
, MASK_TH_LRWU
)
4881 DECLARE_INSN(th_lrh
, MATCH_TH_LRH
, MASK_TH_LRH
)
4882 DECLARE_INSN(th_lrhu
, MATCH_TH_LRHU
, MASK_TH_LRHU
)
4883 DECLARE_INSN(th_lrb
, MATCH_TH_LRB
, MASK_TH_LRB
)
4884 DECLARE_INSN(th_lrbu
, MATCH_TH_LRBU
, MASK_TH_LRBU
)
4885 DECLARE_INSN(th_srd
, MATCH_TH_SRD
, MASK_TH_SRD
)
4886 DECLARE_INSN(th_srw
, MATCH_TH_SRW
, MASK_TH_SRW
)
4887 DECLARE_INSN(th_srh
, MATCH_TH_SRH
, MASK_TH_SRH
)
4888 DECLARE_INSN(th_srb
, MATCH_TH_SRB
, MASK_TH_SRB
)
4889 DECLARE_INSN(th_lurd
, MATCH_TH_LURD
, MASK_TH_LURD
)
4890 DECLARE_INSN(th_lurw
, MATCH_TH_LURW
, MASK_TH_LURW
)
4891 DECLARE_INSN(th_lurwu
, MATCH_TH_LURWU
, MASK_TH_LURWU
)
4892 DECLARE_INSN(th_lurh
, MATCH_TH_LURH
, MASK_TH_LURH
)
4893 DECLARE_INSN(th_lurhu
, MATCH_TH_LURHU
, MASK_TH_LURHU
)
4894 DECLARE_INSN(th_lurb
, MATCH_TH_LURB
, MASK_TH_LURB
)
4895 DECLARE_INSN(th_lurbu
, MATCH_TH_LURBU
, MASK_TH_LURBU
)
4896 DECLARE_INSN(th_surd
, MATCH_TH_SURD
, MASK_TH_SURD
)
4897 DECLARE_INSN(th_surw
, MATCH_TH_SURW
, MASK_TH_SURW
)
4898 DECLARE_INSN(th_surh
, MATCH_TH_SURH
, MASK_TH_SURH
)
4899 DECLARE_INSN(th_surb
, MATCH_TH_SURB
, MASK_TH_SURB
)
4900 /* Vendor-specific (T-Head) XTheadMemPair instructions. */
4901 DECLARE_INSN(th_ldd
, MATCH_TH_LDD
, MASK_TH_LDD
)
4902 DECLARE_INSN(th_lwd
, MATCH_TH_LWD
, MASK_TH_LWD
)
4903 DECLARE_INSN(th_lwud
, MATCH_TH_LWUD
, MASK_TH_LWUD
)
4904 DECLARE_INSN(th_sdd
, MATCH_TH_SDD
, MASK_TH_SDD
)
4905 DECLARE_INSN(th_swd
, MATCH_TH_SWD
, MASK_TH_SWD
)
4906 /* Vendor-specific (T-Head) XTheadSync instructions. */
4907 DECLARE_INSN(th_sfence_vmas
, MATCH_TH_SFENCE_VMAS
, MASK_TH_SFENCE_VMAS
)
4908 DECLARE_INSN(th_sync
, MATCH_TH_SYNC
, MASK_TH_SYNC
)
4909 DECLARE_INSN(th_sync_i
, MATCH_TH_SYNC_I
, MASK_TH_SYNC_I
)
4910 DECLARE_INSN(th_sync_is
, MATCH_TH_SYNC_IS
, MASK_TH_SYNC_IS
)
4911 DECLARE_INSN(th_sync_s
, MATCH_TH_SYNC_S
, MASK_TH_SYNC_S
)
4912 /* XVentanaCondOps instructions. */
4913 DECLARE_INSN(vt_maskc
, MATCH_VT_MASKC
, MASK_VT_MASKC
)
4914 DECLARE_INSN(vt_maskcn
, MATCH_VT_MASKCN
, MASK_VT_MASKCN
)
4916 /* Zicfiss instructions. */
4917 DECLARE_INSN(sspush
, MATCH_SSPUSH
, MASK_SSPUSH
)
4918 DECLARE_INSN(sspopchk
, MATCH_SSPOPCHK
, MASK_SSPOPCHK
)
4919 DECLARE_INSN(c_sspush
, MATCH_C_SSPUSH
, MASK_C_SSPUSH
)
4920 DECLARE_INSN(c_sspopchk
, MATCH_C_SSPOPCHK
, MASK_C_SSPOPCHK
)
4921 DECLARE_INSN(ssrdp
, MATCH_SSRDP
, MASK_SSRDP
)
4922 DECLARE_INSN(ssamoswap_w
, MATCH_SSAMOSWAP_W
, MASK_SSAMOSWAP_W
)
4923 DECLARE_INSN(ssamoswap_d
, MATCH_SSAMOSWAP_D
, MASK_SSAMOSWAP_D
)
4924 /* Zicfilp instructions. */
4925 DECLARE_INSN(lpad
, MATCH_LPAD
, MASK_LPAD
)
4926 #endif /* DECLARE_INSN */
4928 /* Unprivileged Counter/Timers CSRs. */
4929 DECLARE_CSR(cycle
, CSR_CYCLE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4930 DECLARE_CSR(time
, CSR_TIME
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4931 DECLARE_CSR(instret
, CSR_INSTRET
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4932 DECLARE_CSR(hpmcounter3
, CSR_HPMCOUNTER3
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4933 DECLARE_CSR(hpmcounter4
, CSR_HPMCOUNTER4
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4934 DECLARE_CSR(hpmcounter5
, CSR_HPMCOUNTER5
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4935 DECLARE_CSR(hpmcounter6
, CSR_HPMCOUNTER6
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4936 DECLARE_CSR(hpmcounter7
, CSR_HPMCOUNTER7
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4937 DECLARE_CSR(hpmcounter8
, CSR_HPMCOUNTER8
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4938 DECLARE_CSR(hpmcounter9
, CSR_HPMCOUNTER9
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4939 DECLARE_CSR(hpmcounter10
, CSR_HPMCOUNTER10
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4940 DECLARE_CSR(hpmcounter11
, CSR_HPMCOUNTER11
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4941 DECLARE_CSR(hpmcounter12
, CSR_HPMCOUNTER12
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4942 DECLARE_CSR(hpmcounter13
, CSR_HPMCOUNTER13
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4943 DECLARE_CSR(hpmcounter14
, CSR_HPMCOUNTER14
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4944 DECLARE_CSR(hpmcounter15
, CSR_HPMCOUNTER15
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4945 DECLARE_CSR(hpmcounter16
, CSR_HPMCOUNTER16
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4946 DECLARE_CSR(hpmcounter17
, CSR_HPMCOUNTER17
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4947 DECLARE_CSR(hpmcounter18
, CSR_HPMCOUNTER18
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4948 DECLARE_CSR(hpmcounter19
, CSR_HPMCOUNTER19
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4949 DECLARE_CSR(hpmcounter20
, CSR_HPMCOUNTER20
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4950 DECLARE_CSR(hpmcounter21
, CSR_HPMCOUNTER21
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4951 DECLARE_CSR(hpmcounter22
, CSR_HPMCOUNTER22
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4952 DECLARE_CSR(hpmcounter23
, CSR_HPMCOUNTER23
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4953 DECLARE_CSR(hpmcounter24
, CSR_HPMCOUNTER24
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4954 DECLARE_CSR(hpmcounter25
, CSR_HPMCOUNTER25
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4955 DECLARE_CSR(hpmcounter26
, CSR_HPMCOUNTER26
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4956 DECLARE_CSR(hpmcounter27
, CSR_HPMCOUNTER27
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4957 DECLARE_CSR(hpmcounter28
, CSR_HPMCOUNTER28
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4958 DECLARE_CSR(hpmcounter29
, CSR_HPMCOUNTER29
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4959 DECLARE_CSR(hpmcounter30
, CSR_HPMCOUNTER30
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4960 DECLARE_CSR(hpmcounter31
, CSR_HPMCOUNTER31
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4961 DECLARE_CSR(cycleh
, CSR_CYCLEH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4962 DECLARE_CSR(timeh
, CSR_TIMEH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4963 DECLARE_CSR(instreth
, CSR_INSTRETH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4964 DECLARE_CSR(hpmcounter3h
, CSR_HPMCOUNTER3H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4965 DECLARE_CSR(hpmcounter4h
, CSR_HPMCOUNTER4H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4966 DECLARE_CSR(hpmcounter5h
, CSR_HPMCOUNTER5H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4967 DECLARE_CSR(hpmcounter6h
, CSR_HPMCOUNTER6H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4968 DECLARE_CSR(hpmcounter7h
, CSR_HPMCOUNTER7H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4969 DECLARE_CSR(hpmcounter8h
, CSR_HPMCOUNTER8H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4970 DECLARE_CSR(hpmcounter9h
, CSR_HPMCOUNTER9H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4971 DECLARE_CSR(hpmcounter10h
, CSR_HPMCOUNTER10H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4972 DECLARE_CSR(hpmcounter11h
, CSR_HPMCOUNTER11H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4973 DECLARE_CSR(hpmcounter12h
, CSR_HPMCOUNTER12H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4974 DECLARE_CSR(hpmcounter13h
, CSR_HPMCOUNTER13H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4975 DECLARE_CSR(hpmcounter14h
, CSR_HPMCOUNTER14H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4976 DECLARE_CSR(hpmcounter15h
, CSR_HPMCOUNTER15H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4977 DECLARE_CSR(hpmcounter16h
, CSR_HPMCOUNTER16H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4978 DECLARE_CSR(hpmcounter17h
, CSR_HPMCOUNTER17H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4979 DECLARE_CSR(hpmcounter18h
, CSR_HPMCOUNTER18H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4980 DECLARE_CSR(hpmcounter19h
, CSR_HPMCOUNTER19H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4981 DECLARE_CSR(hpmcounter20h
, CSR_HPMCOUNTER20H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4982 DECLARE_CSR(hpmcounter21h
, CSR_HPMCOUNTER21H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4983 DECLARE_CSR(hpmcounter22h
, CSR_HPMCOUNTER22H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4984 DECLARE_CSR(hpmcounter23h
, CSR_HPMCOUNTER23H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4985 DECLARE_CSR(hpmcounter24h
, CSR_HPMCOUNTER24H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4986 DECLARE_CSR(hpmcounter25h
, CSR_HPMCOUNTER25H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4987 DECLARE_CSR(hpmcounter26h
, CSR_HPMCOUNTER26H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4988 DECLARE_CSR(hpmcounter27h
, CSR_HPMCOUNTER27H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4989 DECLARE_CSR(hpmcounter28h
, CSR_HPMCOUNTER28H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4990 DECLARE_CSR(hpmcounter29h
, CSR_HPMCOUNTER29H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4991 DECLARE_CSR(hpmcounter30h
, CSR_HPMCOUNTER30H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4992 DECLARE_CSR(hpmcounter31h
, CSR_HPMCOUNTER31H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4993 /* Privileged Supervisor CSRs. */
4994 DECLARE_CSR(sstatus
, CSR_SSTATUS
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4995 DECLARE_CSR(sie
, CSR_SIE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4996 DECLARE_CSR(stvec
, CSR_STVEC
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4997 DECLARE_CSR(scounteren
, CSR_SCOUNTEREN
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
4998 DECLARE_CSR(senvcfg
, CSR_SENVCFG
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
4999 DECLARE_CSR(sscratch
, CSR_SSCRATCH
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5000 DECLARE_CSR(sepc
, CSR_SEPC
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5001 DECLARE_CSR(scause
, CSR_SCAUSE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5002 DECLARE_CSR(stval
, CSR_STVAL
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5003 DECLARE_CSR(sip
, CSR_SIP
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5004 DECLARE_CSR(satp
, CSR_SATP
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5005 /* Privileged Machine CSRs. */
5006 DECLARE_CSR(mvendorid
, CSR_MVENDORID
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5007 DECLARE_CSR(marchid
, CSR_MARCHID
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5008 DECLARE_CSR(mimpid
, CSR_MIMPID
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5009 DECLARE_CSR(mhartid
, CSR_MHARTID
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5010 DECLARE_CSR(mconfigptr
, CSR_MCONFIGPTR
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5011 DECLARE_CSR(mstatus
, CSR_MSTATUS
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5012 DECLARE_CSR(misa
, CSR_MISA
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5013 DECLARE_CSR(medeleg
, CSR_MEDELEG
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5014 DECLARE_CSR(mideleg
, CSR_MIDELEG
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5015 DECLARE_CSR(mie
, CSR_MIE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5016 DECLARE_CSR(mtvec
, CSR_MTVEC
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5017 DECLARE_CSR(mcounteren
, CSR_MCOUNTEREN
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5018 DECLARE_CSR(mstatush
, CSR_MSTATUSH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5019 DECLARE_CSR(mscratch
, CSR_MSCRATCH
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5020 DECLARE_CSR(mepc
, CSR_MEPC
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5021 DECLARE_CSR(mcause
, CSR_MCAUSE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5022 DECLARE_CSR(mtval
, CSR_MTVAL
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5023 DECLARE_CSR(mip
, CSR_MIP
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5024 DECLARE_CSR(mtinst
, CSR_MTINST
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5025 DECLARE_CSR(mtval2
, CSR_MTVAL2
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5026 DECLARE_CSR(menvcfg
, CSR_MENVCFG
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5027 DECLARE_CSR(menvcfgh
, CSR_MENVCFGH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5028 DECLARE_CSR(mseccfg
, CSR_MSECCFG
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5029 DECLARE_CSR(mseccfgh
, CSR_MSECCFGH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5030 DECLARE_CSR(pmpcfg0
, CSR_PMPCFG0
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5031 DECLARE_CSR(pmpcfg1
, CSR_PMPCFG1
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5032 DECLARE_CSR(pmpcfg2
, CSR_PMPCFG2
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5033 DECLARE_CSR(pmpcfg3
, CSR_PMPCFG3
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5034 DECLARE_CSR(pmpcfg4
, CSR_PMPCFG4
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5035 DECLARE_CSR(pmpcfg5
, CSR_PMPCFG5
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5036 DECLARE_CSR(pmpcfg6
, CSR_PMPCFG6
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5037 DECLARE_CSR(pmpcfg7
, CSR_PMPCFG7
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5038 DECLARE_CSR(pmpcfg8
, CSR_PMPCFG8
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5039 DECLARE_CSR(pmpcfg9
, CSR_PMPCFG9
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5040 DECLARE_CSR(pmpcfg10
, CSR_PMPCFG10
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5041 DECLARE_CSR(pmpcfg11
, CSR_PMPCFG11
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5042 DECLARE_CSR(pmpcfg12
, CSR_PMPCFG12
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5043 DECLARE_CSR(pmpcfg13
, CSR_PMPCFG13
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5044 DECLARE_CSR(pmpcfg14
, CSR_PMPCFG14
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5045 DECLARE_CSR(pmpcfg15
, CSR_PMPCFG15
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5046 DECLARE_CSR(pmpaddr0
, CSR_PMPADDR0
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5047 DECLARE_CSR(pmpaddr1
, CSR_PMPADDR1
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5048 DECLARE_CSR(pmpaddr2
, CSR_PMPADDR2
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5049 DECLARE_CSR(pmpaddr3
, CSR_PMPADDR3
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5050 DECLARE_CSR(pmpaddr4
, CSR_PMPADDR4
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5051 DECLARE_CSR(pmpaddr5
, CSR_PMPADDR5
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5052 DECLARE_CSR(pmpaddr6
, CSR_PMPADDR6
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5053 DECLARE_CSR(pmpaddr7
, CSR_PMPADDR7
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5054 DECLARE_CSR(pmpaddr8
, CSR_PMPADDR8
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5055 DECLARE_CSR(pmpaddr9
, CSR_PMPADDR9
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5056 DECLARE_CSR(pmpaddr10
, CSR_PMPADDR10
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5057 DECLARE_CSR(pmpaddr11
, CSR_PMPADDR11
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5058 DECLARE_CSR(pmpaddr12
, CSR_PMPADDR12
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5059 DECLARE_CSR(pmpaddr13
, CSR_PMPADDR13
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5060 DECLARE_CSR(pmpaddr14
, CSR_PMPADDR14
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5061 DECLARE_CSR(pmpaddr15
, CSR_PMPADDR15
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5062 DECLARE_CSR(pmpaddr16
, CSR_PMPADDR16
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5063 DECLARE_CSR(pmpaddr17
, CSR_PMPADDR17
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5064 DECLARE_CSR(pmpaddr18
, CSR_PMPADDR18
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5065 DECLARE_CSR(pmpaddr19
, CSR_PMPADDR19
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5066 DECLARE_CSR(pmpaddr20
, CSR_PMPADDR20
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5067 DECLARE_CSR(pmpaddr21
, CSR_PMPADDR21
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5068 DECLARE_CSR(pmpaddr22
, CSR_PMPADDR22
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5069 DECLARE_CSR(pmpaddr23
, CSR_PMPADDR23
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5070 DECLARE_CSR(pmpaddr24
, CSR_PMPADDR24
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5071 DECLARE_CSR(pmpaddr25
, CSR_PMPADDR25
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5072 DECLARE_CSR(pmpaddr26
, CSR_PMPADDR26
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5073 DECLARE_CSR(pmpaddr27
, CSR_PMPADDR27
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5074 DECLARE_CSR(pmpaddr28
, CSR_PMPADDR28
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5075 DECLARE_CSR(pmpaddr29
, CSR_PMPADDR29
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5076 DECLARE_CSR(pmpaddr30
, CSR_PMPADDR30
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5077 DECLARE_CSR(pmpaddr31
, CSR_PMPADDR31
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5078 DECLARE_CSR(pmpaddr32
, CSR_PMPADDR32
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5079 DECLARE_CSR(pmpaddr33
, CSR_PMPADDR33
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5080 DECLARE_CSR(pmpaddr34
, CSR_PMPADDR34
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5081 DECLARE_CSR(pmpaddr35
, CSR_PMPADDR35
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5082 DECLARE_CSR(pmpaddr36
, CSR_PMPADDR36
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5083 DECLARE_CSR(pmpaddr37
, CSR_PMPADDR37
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5084 DECLARE_CSR(pmpaddr38
, CSR_PMPADDR38
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5085 DECLARE_CSR(pmpaddr39
, CSR_PMPADDR39
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5086 DECLARE_CSR(pmpaddr40
, CSR_PMPADDR40
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5087 DECLARE_CSR(pmpaddr41
, CSR_PMPADDR41
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5088 DECLARE_CSR(pmpaddr42
, CSR_PMPADDR42
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5089 DECLARE_CSR(pmpaddr43
, CSR_PMPADDR43
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5090 DECLARE_CSR(pmpaddr44
, CSR_PMPADDR44
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5091 DECLARE_CSR(pmpaddr45
, CSR_PMPADDR45
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5092 DECLARE_CSR(pmpaddr46
, CSR_PMPADDR46
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5093 DECLARE_CSR(pmpaddr47
, CSR_PMPADDR47
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5094 DECLARE_CSR(pmpaddr48
, CSR_PMPADDR48
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5095 DECLARE_CSR(pmpaddr49
, CSR_PMPADDR49
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5096 DECLARE_CSR(pmpaddr50
, CSR_PMPADDR50
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5097 DECLARE_CSR(pmpaddr51
, CSR_PMPADDR51
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5098 DECLARE_CSR(pmpaddr52
, CSR_PMPADDR52
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5099 DECLARE_CSR(pmpaddr53
, CSR_PMPADDR53
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5100 DECLARE_CSR(pmpaddr54
, CSR_PMPADDR54
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5101 DECLARE_CSR(pmpaddr55
, CSR_PMPADDR55
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5102 DECLARE_CSR(pmpaddr56
, CSR_PMPADDR56
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5103 DECLARE_CSR(pmpaddr57
, CSR_PMPADDR57
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5104 DECLARE_CSR(pmpaddr58
, CSR_PMPADDR58
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5105 DECLARE_CSR(pmpaddr59
, CSR_PMPADDR59
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5106 DECLARE_CSR(pmpaddr60
, CSR_PMPADDR60
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5107 DECLARE_CSR(pmpaddr61
, CSR_PMPADDR61
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5108 DECLARE_CSR(pmpaddr62
, CSR_PMPADDR62
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5109 DECLARE_CSR(pmpaddr63
, CSR_PMPADDR63
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P12
, PRIV_SPEC_CLASS_DRAFT
)
5110 DECLARE_CSR(mcycle
, CSR_MCYCLE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5111 DECLARE_CSR(minstret
, CSR_MINSTRET
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5112 DECLARE_CSR(mhpmcounter3
, CSR_MHPMCOUNTER3
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5113 DECLARE_CSR(mhpmcounter4
, CSR_MHPMCOUNTER4
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5114 DECLARE_CSR(mhpmcounter5
, CSR_MHPMCOUNTER5
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5115 DECLARE_CSR(mhpmcounter6
, CSR_MHPMCOUNTER6
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5116 DECLARE_CSR(mhpmcounter7
, CSR_MHPMCOUNTER7
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5117 DECLARE_CSR(mhpmcounter8
, CSR_MHPMCOUNTER8
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5118 DECLARE_CSR(mhpmcounter9
, CSR_MHPMCOUNTER9
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5119 DECLARE_CSR(mhpmcounter10
, CSR_MHPMCOUNTER10
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5120 DECLARE_CSR(mhpmcounter11
, CSR_MHPMCOUNTER11
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5121 DECLARE_CSR(mhpmcounter12
, CSR_MHPMCOUNTER12
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5122 DECLARE_CSR(mhpmcounter13
, CSR_MHPMCOUNTER13
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5123 DECLARE_CSR(mhpmcounter14
, CSR_MHPMCOUNTER14
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5124 DECLARE_CSR(mhpmcounter15
, CSR_MHPMCOUNTER15
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5125 DECLARE_CSR(mhpmcounter16
, CSR_MHPMCOUNTER16
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5126 DECLARE_CSR(mhpmcounter17
, CSR_MHPMCOUNTER17
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5127 DECLARE_CSR(mhpmcounter18
, CSR_MHPMCOUNTER18
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5128 DECLARE_CSR(mhpmcounter19
, CSR_MHPMCOUNTER19
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5129 DECLARE_CSR(mhpmcounter20
, CSR_MHPMCOUNTER20
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5130 DECLARE_CSR(mhpmcounter21
, CSR_MHPMCOUNTER21
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5131 DECLARE_CSR(mhpmcounter22
, CSR_MHPMCOUNTER22
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5132 DECLARE_CSR(mhpmcounter23
, CSR_MHPMCOUNTER23
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5133 DECLARE_CSR(mhpmcounter24
, CSR_MHPMCOUNTER24
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5134 DECLARE_CSR(mhpmcounter25
, CSR_MHPMCOUNTER25
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5135 DECLARE_CSR(mhpmcounter26
, CSR_MHPMCOUNTER26
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5136 DECLARE_CSR(mhpmcounter27
, CSR_MHPMCOUNTER27
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5137 DECLARE_CSR(mhpmcounter28
, CSR_MHPMCOUNTER28
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5138 DECLARE_CSR(mhpmcounter29
, CSR_MHPMCOUNTER29
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5139 DECLARE_CSR(mhpmcounter30
, CSR_MHPMCOUNTER30
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5140 DECLARE_CSR(mhpmcounter31
, CSR_MHPMCOUNTER31
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5141 DECLARE_CSR(mcycleh
, CSR_MCYCLEH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5142 DECLARE_CSR(minstreth
, CSR_MINSTRETH
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5143 DECLARE_CSR(mhpmcounter3h
, CSR_MHPMCOUNTER3H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5144 DECLARE_CSR(mhpmcounter4h
, CSR_MHPMCOUNTER4H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5145 DECLARE_CSR(mhpmcounter5h
, CSR_MHPMCOUNTER5H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5146 DECLARE_CSR(mhpmcounter6h
, CSR_MHPMCOUNTER6H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5147 DECLARE_CSR(mhpmcounter7h
, CSR_MHPMCOUNTER7H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5148 DECLARE_CSR(mhpmcounter8h
, CSR_MHPMCOUNTER8H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5149 DECLARE_CSR(mhpmcounter9h
, CSR_MHPMCOUNTER9H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5150 DECLARE_CSR(mhpmcounter10h
, CSR_MHPMCOUNTER10H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5151 DECLARE_CSR(mhpmcounter11h
, CSR_MHPMCOUNTER11H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5152 DECLARE_CSR(mhpmcounter12h
, CSR_MHPMCOUNTER12H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5153 DECLARE_CSR(mhpmcounter13h
, CSR_MHPMCOUNTER13H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5154 DECLARE_CSR(mhpmcounter14h
, CSR_MHPMCOUNTER14H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5155 DECLARE_CSR(mhpmcounter15h
, CSR_MHPMCOUNTER15H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5156 DECLARE_CSR(mhpmcounter16h
, CSR_MHPMCOUNTER16H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5157 DECLARE_CSR(mhpmcounter17h
, CSR_MHPMCOUNTER17H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5158 DECLARE_CSR(mhpmcounter18h
, CSR_MHPMCOUNTER18H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5159 DECLARE_CSR(mhpmcounter19h
, CSR_MHPMCOUNTER19H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5160 DECLARE_CSR(mhpmcounter20h
, CSR_MHPMCOUNTER20H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5161 DECLARE_CSR(mhpmcounter21h
, CSR_MHPMCOUNTER21H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5162 DECLARE_CSR(mhpmcounter22h
, CSR_MHPMCOUNTER22H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5163 DECLARE_CSR(mhpmcounter23h
, CSR_MHPMCOUNTER23H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5164 DECLARE_CSR(mhpmcounter24h
, CSR_MHPMCOUNTER24H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5165 DECLARE_CSR(mhpmcounter25h
, CSR_MHPMCOUNTER25H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5166 DECLARE_CSR(mhpmcounter26h
, CSR_MHPMCOUNTER26H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5167 DECLARE_CSR(mhpmcounter27h
, CSR_MHPMCOUNTER27H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5168 DECLARE_CSR(mhpmcounter28h
, CSR_MHPMCOUNTER28H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5169 DECLARE_CSR(mhpmcounter29h
, CSR_MHPMCOUNTER29H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5170 DECLARE_CSR(mhpmcounter30h
, CSR_MHPMCOUNTER30H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5171 DECLARE_CSR(mhpmcounter31h
, CSR_MHPMCOUNTER31H
, CSR_CLASS_I_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5172 DECLARE_CSR(mcountinhibit
, CSR_MCOUNTINHIBIT
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P11
, PRIV_SPEC_CLASS_DRAFT
)
5173 DECLARE_CSR(mhpmevent3
, CSR_MHPMEVENT3
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5174 DECLARE_CSR(mhpmevent4
, CSR_MHPMEVENT4
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5175 DECLARE_CSR(mhpmevent5
, CSR_MHPMEVENT5
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5176 DECLARE_CSR(mhpmevent6
, CSR_MHPMEVENT6
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5177 DECLARE_CSR(mhpmevent7
, CSR_MHPMEVENT7
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5178 DECLARE_CSR(mhpmevent8
, CSR_MHPMEVENT8
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5179 DECLARE_CSR(mhpmevent9
, CSR_MHPMEVENT9
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5180 DECLARE_CSR(mhpmevent10
, CSR_MHPMEVENT10
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5181 DECLARE_CSR(mhpmevent11
, CSR_MHPMEVENT11
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5182 DECLARE_CSR(mhpmevent12
, CSR_MHPMEVENT12
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5183 DECLARE_CSR(mhpmevent13
, CSR_MHPMEVENT13
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5184 DECLARE_CSR(mhpmevent14
, CSR_MHPMEVENT14
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5185 DECLARE_CSR(mhpmevent15
, CSR_MHPMEVENT15
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5186 DECLARE_CSR(mhpmevent16
, CSR_MHPMEVENT16
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5187 DECLARE_CSR(mhpmevent17
, CSR_MHPMEVENT17
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5188 DECLARE_CSR(mhpmevent18
, CSR_MHPMEVENT18
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5189 DECLARE_CSR(mhpmevent19
, CSR_MHPMEVENT19
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5190 DECLARE_CSR(mhpmevent20
, CSR_MHPMEVENT20
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5191 DECLARE_CSR(mhpmevent21
, CSR_MHPMEVENT21
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5192 DECLARE_CSR(mhpmevent22
, CSR_MHPMEVENT22
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5193 DECLARE_CSR(mhpmevent23
, CSR_MHPMEVENT23
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5194 DECLARE_CSR(mhpmevent24
, CSR_MHPMEVENT24
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5195 DECLARE_CSR(mhpmevent25
, CSR_MHPMEVENT25
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5196 DECLARE_CSR(mhpmevent26
, CSR_MHPMEVENT26
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5197 DECLARE_CSR(mhpmevent27
, CSR_MHPMEVENT27
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5198 DECLARE_CSR(mhpmevent28
, CSR_MHPMEVENT28
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5199 DECLARE_CSR(mhpmevent29
, CSR_MHPMEVENT29
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5200 DECLARE_CSR(mhpmevent30
, CSR_MHPMEVENT30
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5201 DECLARE_CSR(mhpmevent31
, CSR_MHPMEVENT31
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5202 /* Privileged Hypervisor CSRs. */
5203 DECLARE_CSR(hstatus
, CSR_HSTATUS
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5204 DECLARE_CSR(hedeleg
, CSR_HEDELEG
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5205 DECLARE_CSR(hideleg
, CSR_HIDELEG
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5206 DECLARE_CSR(hie
, CSR_HIE
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5207 DECLARE_CSR(hcounteren
, CSR_HCOUNTEREN
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5208 DECLARE_CSR(hgeie
, CSR_HGEIE
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5209 DECLARE_CSR(htval
, CSR_HTVAL
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5210 DECLARE_CSR(hip
, CSR_HIP
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5211 DECLARE_CSR(hvip
, CSR_HVIP
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5212 DECLARE_CSR(htinst
, CSR_HTINST
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5213 DECLARE_CSR(hgeip
, CSR_HGEIP
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5214 DECLARE_CSR(henvcfg
, CSR_HENVCFG
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5215 DECLARE_CSR(henvcfgh
, CSR_HENVCFGH
, CSR_CLASS_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5216 DECLARE_CSR(hgatp
, CSR_HGATP
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5217 DECLARE_CSR(htimedelta
, CSR_HTIMEDELTA
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5218 DECLARE_CSR(htimedeltah
, CSR_HTIMEDELTAH
, CSR_CLASS_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5219 DECLARE_CSR(vsstatus
, CSR_VSSTATUS
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5220 DECLARE_CSR(vsie
, CSR_VSIE
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5221 DECLARE_CSR(vstvec
, CSR_VSTVEC
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5222 DECLARE_CSR(vsscratch
, CSR_VSSCRATCH
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5223 DECLARE_CSR(vsepc
, CSR_VSEPC
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5224 DECLARE_CSR(vscause
, CSR_VSCAUSE
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5225 DECLARE_CSR(vstval
, CSR_VSTVAL
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5226 DECLARE_CSR(vsip
, CSR_VSIP
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5227 DECLARE_CSR(vsatp
, CSR_VSATP
, CSR_CLASS_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5228 /* Smaia extension */
5229 DECLARE_CSR(miselect
, CSR_MISELECT
, CSR_CLASS_SMAIA_OR_SMCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5230 DECLARE_CSR(mireg
, CSR_MIREG
, CSR_CLASS_SMAIA_OR_SMCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5231 DECLARE_CSR(mtopei
, CSR_MTOPEI
, CSR_CLASS_SMAIA
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5232 DECLARE_CSR(mtopi
, CSR_MTOPI
, CSR_CLASS_SMAIA
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5233 DECLARE_CSR(mvien
, CSR_MVIEN
, CSR_CLASS_SMAIA
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5234 DECLARE_CSR(mvip
, CSR_MVIP
, CSR_CLASS_SMAIA
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5235 DECLARE_CSR(midelegh
, CSR_MIDELEGH
, CSR_CLASS_SMAIA_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5236 DECLARE_CSR(mieh
, CSR_MIEH
, CSR_CLASS_SMAIA_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5237 DECLARE_CSR(mvienh
, CSR_MVIENH
, CSR_CLASS_SMAIA_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5238 DECLARE_CSR(mviph
, CSR_MVIPH
, CSR_CLASS_SMAIA_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5239 DECLARE_CSR(miph
, CSR_MIPH
, CSR_CLASS_SMAIA_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5240 /* Smcsrind extension */
5241 DECLARE_CSR(mireg2
, CSR_MIREG2
, CSR_CLASS_SMCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5242 DECLARE_CSR(mireg3
, CSR_MIREG3
, CSR_CLASS_SMCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5243 DECLARE_CSR(mireg4
, CSR_MIREG4
, CSR_CLASS_SMCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5244 DECLARE_CSR(mireg5
, CSR_MIREG5
, CSR_CLASS_SMCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5245 DECLARE_CSR(mireg6
, CSR_MIREG6
, CSR_CLASS_SMCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5246 /* Smcntrpmf extension (incompatible with the privileged spec v1.9.1). */
5247 DECLARE_CSR(mcyclecfg
, CSR_MCYCLECFG
, CSR_CLASS_SMCNTRPMF
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5248 DECLARE_CSR(minstretcfg
, CSR_MINSTRETCFG
, CSR_CLASS_SMCNTRPMF
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5249 DECLARE_CSR(mcyclecfgh
, CSR_MCYCLECFGH
, CSR_CLASS_SMCNTRPMF_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5250 DECLARE_CSR(minstretcfgh
, CSR_MINSTRETCFGH
, CSR_CLASS_SMCNTRPMF_32
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_DRAFT
)
5251 /* Smrnmi extensions. */
5252 DECLARE_CSR(mnepc
, CSR_MNEPC
, CSR_CLASS_SMRNMI
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5253 DECLARE_CSR(mncause
, CSR_MNCAUSE
, CSR_CLASS_SMRNMI
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5254 DECLARE_CSR(mnscratch
, CSR_MNSCRATCH
, CSR_CLASS_SMRNMI
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5255 DECLARE_CSR(mnstatus
, CSR_MNSTATUS
, CSR_CLASS_SMRNMI
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5256 /* Smstateen/Ssstateen extensions. */
5257 DECLARE_CSR(mstateen0
, CSR_MSTATEEN0
, CSR_CLASS_SMSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5258 DECLARE_CSR(mstateen1
, CSR_MSTATEEN1
, CSR_CLASS_SMSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5259 DECLARE_CSR(mstateen2
, CSR_MSTATEEN2
, CSR_CLASS_SMSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5260 DECLARE_CSR(mstateen3
, CSR_MSTATEEN3
, CSR_CLASS_SMSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5261 DECLARE_CSR(sstateen0
, CSR_SSTATEEN0
, CSR_CLASS_SSSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5262 DECLARE_CSR(sstateen1
, CSR_SSTATEEN1
, CSR_CLASS_SSSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5263 DECLARE_CSR(sstateen2
, CSR_SSTATEEN2
, CSR_CLASS_SSSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5264 DECLARE_CSR(sstateen3
, CSR_SSTATEEN3
, CSR_CLASS_SSSTATEEN
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5265 DECLARE_CSR(hstateen0
, CSR_HSTATEEN0
, CSR_CLASS_SSSTATEEN_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5266 DECLARE_CSR(hstateen1
, CSR_HSTATEEN1
, CSR_CLASS_SSSTATEEN_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5267 DECLARE_CSR(hstateen2
, CSR_HSTATEEN2
, CSR_CLASS_SSSTATEEN_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5268 DECLARE_CSR(hstateen3
, CSR_HSTATEEN3
, CSR_CLASS_SSSTATEEN_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5269 DECLARE_CSR(mstateen0h
, CSR_MSTATEEN0H
, CSR_CLASS_SMSTATEEN_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5270 DECLARE_CSR(mstateen1h
, CSR_MSTATEEN1H
, CSR_CLASS_SMSTATEEN_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5271 DECLARE_CSR(mstateen2h
, CSR_MSTATEEN2H
, CSR_CLASS_SMSTATEEN_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5272 DECLARE_CSR(mstateen3h
, CSR_MSTATEEN3H
, CSR_CLASS_SMSTATEEN_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5273 DECLARE_CSR(hstateen0h
, CSR_HSTATEEN0H
, CSR_CLASS_SSSTATEEN_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5274 DECLARE_CSR(hstateen1h
, CSR_HSTATEEN1H
, CSR_CLASS_SSSTATEEN_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5275 DECLARE_CSR(hstateen2h
, CSR_HSTATEEN2H
, CSR_CLASS_SSSTATEEN_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5276 DECLARE_CSR(hstateen3h
, CSR_HSTATEEN3H
, CSR_CLASS_SSSTATEEN_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5277 /* Ssaia extension */
5278 DECLARE_CSR(siselect
, CSR_SISELECT
, CSR_CLASS_SSAIA_OR_SSCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5279 DECLARE_CSR(sireg
, CSR_SIREG
, CSR_CLASS_SSAIA_OR_SSCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5280 DECLARE_CSR(stopei
, CSR_STOPEI
, CSR_CLASS_SSAIA
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5281 DECLARE_CSR(stopi
, CSR_STOPI
, CSR_CLASS_SSAIA
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5282 DECLARE_CSR(sieh
, CSR_SIEH
, CSR_CLASS_SSAIA_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5283 DECLARE_CSR(siph
, CSR_SIPH
, CSR_CLASS_SSAIA_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5284 DECLARE_CSR(hvien
, CSR_HVIEN
, CSR_CLASS_SSAIA_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5285 DECLARE_CSR(hvictl
, CSR_HVICTL
, CSR_CLASS_SSAIA_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5286 DECLARE_CSR(hviprio1
, CSR_HVIPRIO1
, CSR_CLASS_SSAIA_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5287 DECLARE_CSR(hviprio2
, CSR_HVIPRIO2
, CSR_CLASS_SSAIA_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5288 DECLARE_CSR(vsiselect
, CSR_VSISELECT
, CSR_CLASS_SSAIA_OR_SSCSRIND_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5289 DECLARE_CSR(vsireg
, CSR_VSIREG
, CSR_CLASS_SSAIA_OR_SSCSRIND_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5290 DECLARE_CSR(vstopei
, CSR_VSTOPEI
, CSR_CLASS_SSAIA_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5291 DECLARE_CSR(vstopi
, CSR_VSTOPI
, CSR_CLASS_SSAIA_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5292 DECLARE_CSR(hidelegh
, CSR_HIDELEGH
, CSR_CLASS_SSAIA_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5293 DECLARE_CSR(hvienh
, CSR_HVIENH
, CSR_CLASS_SSAIA_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5294 DECLARE_CSR(hviph
, CSR_HVIPH
, CSR_CLASS_SSAIA_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5295 DECLARE_CSR(hviprio1h
, CSR_HVIPRIO1H
, CSR_CLASS_SSAIA_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5296 DECLARE_CSR(hviprio2h
, CSR_HVIPRIO2H
, CSR_CLASS_SSAIA_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5297 DECLARE_CSR(vsieh
, CSR_VSIEH
, CSR_CLASS_SSAIA_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5298 DECLARE_CSR(vsiph
, CSR_VSIPH
, CSR_CLASS_SSAIA_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5299 /* Sscsrind extension */
5300 DECLARE_CSR(sireg2
, CSR_SIREG2
, CSR_CLASS_SSCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5301 DECLARE_CSR(sireg3
, CSR_SIREG3
, CSR_CLASS_SSCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5302 DECLARE_CSR(sireg4
, CSR_SIREG4
, CSR_CLASS_SSCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5303 DECLARE_CSR(sireg5
, CSR_SIREG5
, CSR_CLASS_SSCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5304 DECLARE_CSR(sireg6
, CSR_SIREG6
, CSR_CLASS_SSCSRIND
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5305 DECLARE_CSR(vsireg2
, CSR_VSIREG2
, CSR_CLASS_SSCSRIND_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5306 DECLARE_CSR(vsireg3
, CSR_VSIREG3
, CSR_CLASS_SSCSRIND_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5307 DECLARE_CSR(vsireg4
, CSR_VSIREG4
, CSR_CLASS_SSCSRIND_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5308 DECLARE_CSR(vsireg5
, CSR_VSIREG5
, CSR_CLASS_SSCSRIND_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5309 DECLARE_CSR(vsireg6
, CSR_VSIREG6
, CSR_CLASS_SSCSRIND_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5310 /* Sscofpmf extension */
5311 DECLARE_CSR(scountovf
, CSR_SCOUNTOVF
, CSR_CLASS_SSCOFPMF
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5312 DECLARE_CSR(mhpmevent3h
, CSR_MHPMEVENT3H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5313 DECLARE_CSR(mhpmevent4h
, CSR_MHPMEVENT4H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5314 DECLARE_CSR(mhpmevent5h
, CSR_MHPMEVENT5H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5315 DECLARE_CSR(mhpmevent6h
, CSR_MHPMEVENT6H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5316 DECLARE_CSR(mhpmevent7h
, CSR_MHPMEVENT7H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5317 DECLARE_CSR(mhpmevent8h
, CSR_MHPMEVENT8H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5318 DECLARE_CSR(mhpmevent9h
, CSR_MHPMEVENT9H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5319 DECLARE_CSR(mhpmevent10h
, CSR_MHPMEVENT10H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5320 DECLARE_CSR(mhpmevent11h
, CSR_MHPMEVENT11H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5321 DECLARE_CSR(mhpmevent12h
, CSR_MHPMEVENT12H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5322 DECLARE_CSR(mhpmevent13h
, CSR_MHPMEVENT13H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5323 DECLARE_CSR(mhpmevent14h
, CSR_MHPMEVENT14H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5324 DECLARE_CSR(mhpmevent15h
, CSR_MHPMEVENT15H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5325 DECLARE_CSR(mhpmevent16h
, CSR_MHPMEVENT16H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5326 DECLARE_CSR(mhpmevent17h
, CSR_MHPMEVENT17H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5327 DECLARE_CSR(mhpmevent18h
, CSR_MHPMEVENT18H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5328 DECLARE_CSR(mhpmevent19h
, CSR_MHPMEVENT19H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5329 DECLARE_CSR(mhpmevent20h
, CSR_MHPMEVENT20H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5330 DECLARE_CSR(mhpmevent21h
, CSR_MHPMEVENT21H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5331 DECLARE_CSR(mhpmevent22h
, CSR_MHPMEVENT22H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5332 DECLARE_CSR(mhpmevent23h
, CSR_MHPMEVENT23H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5333 DECLARE_CSR(mhpmevent24h
, CSR_MHPMEVENT24H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5334 DECLARE_CSR(mhpmevent25h
, CSR_MHPMEVENT25H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5335 DECLARE_CSR(mhpmevent26h
, CSR_MHPMEVENT26H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5336 DECLARE_CSR(mhpmevent27h
, CSR_MHPMEVENT27H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5337 DECLARE_CSR(mhpmevent28h
, CSR_MHPMEVENT28H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5338 DECLARE_CSR(mhpmevent29h
, CSR_MHPMEVENT29H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5339 DECLARE_CSR(mhpmevent30h
, CSR_MHPMEVENT30H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5340 DECLARE_CSR(mhpmevent31h
, CSR_MHPMEVENT31H
, CSR_CLASS_SSCOFPMF_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5341 /* Sstc extension */
5342 DECLARE_CSR(stimecmp
, CSR_STIMECMP
, CSR_CLASS_SSTC
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5343 DECLARE_CSR(stimecmph
, CSR_STIMECMPH
, CSR_CLASS_SSTC_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5344 DECLARE_CSR(vstimecmp
, CSR_VSTIMECMP
, CSR_CLASS_SSTC_AND_H
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5345 DECLARE_CSR(vstimecmph
, CSR_VSTIMECMPH
, CSR_CLASS_SSTC_AND_H_32
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5346 /* Smctr/Ssctr CSRs. */
5347 DECLARE_CSR(sctrctl
, CSR_SCTRCTL
, CSR_CLASS_SSCTR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5348 DECLARE_CSR(sctrstatus
, CSR_SCTRSTATUS
, CSR_CLASS_SSCTR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5349 DECLARE_CSR(sctrdepth
, CSR_SCTRDEPTH
, CSR_CLASS_SSCTR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5350 DECLARE_CSR(vsctrctl
, CSR_VSCTRCTL
, CSR_CLASS_SSCTR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5351 DECLARE_CSR(mctrctl
, CSR_MCTRCTL
, CSR_CLASS_SMCTR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5353 DECLARE_CSR(ssp
, CSR_SSP
, CSR_CLASS_ZICFISS
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5355 DECLARE_CSR(ustatus
, CSR_USTATUS
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5356 DECLARE_CSR(uie
, CSR_UIE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5357 DECLARE_CSR(utvec
, CSR_UTVEC
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5358 DECLARE_CSR(uscratch
, CSR_USCRATCH
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5359 DECLARE_CSR(uepc
, CSR_UEPC
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5360 DECLARE_CSR(ucause
, CSR_UCAUSE
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5361 DECLARE_CSR(utval
, CSR_UTVAL
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5362 DECLARE_CSR(uip
, CSR_UIP
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5363 DECLARE_CSR(sedeleg
, CSR_SEDELEG
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5364 DECLARE_CSR(sideleg
, CSR_SIDELEG
, CSR_CLASS_I
, PRIV_SPEC_CLASS_1P10
, PRIV_SPEC_CLASS_1P12
)
5365 /* Unprivileged Floating-Point CSRs. */
5366 DECLARE_CSR(fflags
, CSR_FFLAGS
, CSR_CLASS_F
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5367 DECLARE_CSR(frm
, CSR_FRM
, CSR_CLASS_F
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5368 DECLARE_CSR(fcsr
, CSR_FCSR
, CSR_CLASS_F
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5369 /* Unprivileged Debug CSRs. */
5370 DECLARE_CSR(dcsr
, CSR_DCSR
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5371 DECLARE_CSR(dpc
, CSR_DPC
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5372 DECLARE_CSR(dscratch0
, CSR_DSCRATCH0
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5373 DECLARE_CSR(dscratch1
, CSR_DSCRATCH1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5374 DECLARE_CSR(tselect
, CSR_TSELECT
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5375 DECLARE_CSR(tdata1
, CSR_TDATA1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5376 DECLARE_CSR(tdata2
, CSR_TDATA2
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5377 DECLARE_CSR(tdata3
, CSR_TDATA3
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5378 DECLARE_CSR(tinfo
, CSR_TINFO
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5379 DECLARE_CSR(tcontrol
, CSR_TCONTROL
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5380 DECLARE_CSR(hcontext
, CSR_HCONTEXT
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5381 DECLARE_CSR(scontext
, CSR_SCONTEXT
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5382 DECLARE_CSR(mcontext
, CSR_MCONTEXT
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5383 DECLARE_CSR(mscontext
, CSR_MSCONTEXT
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5384 /* Unprivileged Scalar Crypto CSRs. */
5385 DECLARE_CSR(seed
, CSR_SEED
, CSR_CLASS_ZKR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5386 /* Unprivileged Zcmt CSRs. */
5387 DECLARE_CSR(jvt
, CSR_JVT
, CSR_CLASS_ZCMT
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5388 /* Unprivileged Vector CSRs. */
5389 DECLARE_CSR(vstart
, CSR_VSTART
, CSR_CLASS_V
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5390 DECLARE_CSR(vxsat
, CSR_VXSAT
, CSR_CLASS_V
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5391 DECLARE_CSR(vxrm
, CSR_VXRM
, CSR_CLASS_V
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5392 DECLARE_CSR(vcsr
, CSR_VCSR
, CSR_CLASS_V
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5393 DECLARE_CSR(vl
, CSR_VL
, CSR_CLASS_V
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5394 DECLARE_CSR(vtype
, CSR_VTYPE
, CSR_CLASS_V
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5395 DECLARE_CSR(vlenb
, CSR_VLENB
, CSR_CLASS_V
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5396 #endif /* DECLARE_CSR */
5397 #ifdef DECLARE_CSR_ALIAS
5398 DECLARE_CSR_ALIAS(dscratch
, CSR_DSCRATCH0
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5399 DECLARE_CSR_ALIAS(mcontrol
, CSR_TDATA1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5400 DECLARE_CSR_ALIAS(mcontrol6
, CSR_TDATA1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5401 DECLARE_CSR_ALIAS(icount
, CSR_TDATA1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5402 DECLARE_CSR_ALIAS(itrigger
, CSR_TDATA1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5403 DECLARE_CSR_ALIAS(etrigger
, CSR_TDATA1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5404 DECLARE_CSR_ALIAS(tmexttrigger
, CSR_TDATA1
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5405 DECLARE_CSR_ALIAS(textra32
, CSR_TDATA3
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5406 DECLARE_CSR_ALIAS(textra64
, CSR_TDATA3
, CSR_CLASS_DEBUG
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5407 /* Unprivileged T-Head Vector CSRs. */
5408 DECLARE_CSR_ALIAS(th
.vstart
, CSR_VSTART
, CSR_CLASS_XTHEADVECTOR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5409 DECLARE_CSR_ALIAS(th
.vxsat
, CSR_VXSAT
, CSR_CLASS_XTHEADVECTOR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5410 DECLARE_CSR_ALIAS(th
.vxrm
, CSR_VXRM
, CSR_CLASS_XTHEADVECTOR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5411 DECLARE_CSR_ALIAS(th
.vl
, CSR_VL
, CSR_CLASS_XTHEADVECTOR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5412 DECLARE_CSR_ALIAS(th
.vtype
, CSR_VTYPE
, CSR_CLASS_XTHEADVECTOR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5413 DECLARE_CSR_ALIAS(th
.vlenb
, CSR_VLENB
, CSR_CLASS_XTHEADVECTOR
, PRIV_SPEC_CLASS_NONE
, PRIV_SPEC_CLASS_NONE
)
5414 #endif /* DECLARE_CSR_ALIAS */