@samitouri / QOSamiQemu / commits / 7fe2a88a40

disas/riscv: Sort riscv-op.c.inc

To date, opcodes had to be added to the end of the list, resulting in quite the disorder. Sort via 'LANG=C sort'. Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-ID: <20260812223142.349142-53-richard.henderson@linaro.org> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

Richard Henderson committed Aug 12, 2026 at 15:31 UTC 7fe2a88a4049f678b626474933b516eee19bb643
1 file changed +837 -837
disas/riscv-op.c.inc
+837 -837
@@ -1,913 +1,913 @@
1 -OP(illegal, "illegal", rv_codec_none, rv_fmt_none)
2 -OP(lui, "lui", rv_codec_u, rv_fmt_rd_uimm)
3 -OP(auipc, "auipc", rv_codec_u, rv_fmt_rd_uoffset)
4 -OP(jal, "jal", rv_codec_uj, rv_fmt_rd_offset, rvcp_jal)
5 -OP(jalr, "jalr", rv_codec_i, rv_fmt_rd_rs1_offset, rvcp_jalr)
6 -OP(beq, "beq", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_beq)
7 -OP(bne, "bne", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_bne)
8 -OP(blt, "blt", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_blt)
9 -OP(bge, "bge", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_bge)
10 -OP(bltu, "bltu", rv_codec_sb, rv_fmt_rs1_rs2_offset)
11 -OP(bgeu, "bgeu", rv_codec_sb, rv_fmt_rs1_rs2_offset)
12 -OP(lb, "lb", rv_codec_i, rv_fmt_rd_offset_rs1)
13 -OP(lh, "lh", rv_codec_i, rv_fmt_rd_offset_rs1)
14 -OP(lw, "lw", rv_codec_i, rv_fmt_rd_offset_rs1)
15 -OP(lbu, "lbu", rv_codec_i, rv_fmt_rd_offset_rs1)
16 -OP(lhu, "lhu", rv_codec_i, rv_fmt_rd_offset_rs1)
17 -OP(sb, "sb", rv_codec_s, rv_fmt_rs2_offset_rs1)
18 -OP(sh, "sh", rv_codec_s, rv_fmt_rs2_offset_rs1)
19 -OP(sw, "sw", rv_codec_s, rv_fmt_rs2_offset_rs1)
20 -OP(addi, "addi", rv_codec_i, rv_fmt_rd_rs1_imm, rvcp_addi)
21 -OP(slti, "slti", rv_codec_i, rv_fmt_rd_rs1_imm)
22 -OP(sltiu, "sltiu", rv_codec_i, rv_fmt_rd_rs1_imm, rvcp_sltiu)
23 -OP(xori, "xori", rv_codec_i, rv_fmt_rd_rs1_imm, rvcp_xori)
24 -OP(ori, "ori", rv_codec_i, rv_fmt_rd_rs1_imm)
25 -OP(andi, "andi", rv_codec_i, rv_fmt_rd_rs1_imm)
26 -OP(slli, "slli", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
27 -OP(srli, "srli", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
28 -OP(srai, "srai", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
1 OP(add, "add", rv_codec_r, rv_fmt_rd_rs1_rs2)
30 -OP(sub, "sub", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_sub)
31 -OP(sll, "sll", rv_codec_r, rv_fmt_rd_rs1_rs2)
32 -OP(slt, "slt", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_slt)
33 -OP(sltu, "sltu", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_sltu)
34 -OP(xor, "xor", rv_codec_r, rv_fmt_rd_rs1_rs2)
35 -OP(srl, "srl", rv_codec_r, rv_fmt_rd_rs1_rs2)
36 -OP(sra, "sra", rv_codec_r, rv_fmt_rd_rs1_rs2)
37 -OP(or, "or", rv_codec_r, rv_fmt_rd_rs1_rs2)
38 -OP(and, "and", rv_codec_r, rv_fmt_rd_rs1_rs2)
39 -OP(fence, "fence", rv_codec_r_f, rv_fmt_pred_succ)
40 -OP(fence_i, "fence.i", rv_codec_none, rv_fmt_none)
41 -OP(lwu, "lwu", rv_codec_i, rv_fmt_rd_offset_rs1)
42 -OP(ld, "ld", rv_codec_i, rv_fmt_rd_offset_rs1)
43 -OP(sd, "sd", rv_codec_s, rv_fmt_rs2_offset_rs1)
2 +OP(add_uw, "add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
3 +OP(addd, "addd", rv_codec_r, rv_fmt_rd_rs1_rs2)
4 +OP(addi, "addi", rv_codec_i, rv_fmt_rd_rs1_imm, rvcp_addi)
5 +OP(addid, "addid", rv_codec_i, rv_fmt_rd_rs1_imm)
6 OP(addiw, "addiw", rv_codec_i, rv_fmt_rd_rs1_imm, rvcp_addiw)
45 -OP(slliw, "slliw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
46 -OP(srliw, "srliw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
47 -OP(sraiw, "sraiw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
7 OP(addw, "addw", rv_codec_r, rv_fmt_rd_rs1_rs2)
49 -OP(subw, "subw", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_subw)
50 -OP(sllw, "sllw", rv_codec_r, rv_fmt_rd_rs1_rs2)
51 -OP(srlw, "srlw", rv_codec_r, rv_fmt_rd_rs1_rs2)
52 -OP(sraw, "sraw", rv_codec_r, rv_fmt_rd_rs1_rs2)
53 -OP(ldu, "ldu", rv_codec_i, rv_fmt_rd_offset_rs1)
54 -OP(lq, "lq", rv_codec_i, rv_fmt_rd_offset_rs1)
55 -OP(sq, "sq", rv_codec_s, rv_fmt_rs2_offset_rs1)
56 -OP(addid, "addid", rv_codec_i, rv_fmt_rd_rs1_imm)
57 -OP(sllid, "sllid", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
58 -OP(srlid, "srlid", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
59 -OP(sraid, "sraid", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
60 -OP(addd, "addd", rv_codec_r, rv_fmt_rd_rs1_rs2)
61 -OP(subd, "subd", rv_codec_r, rv_fmt_rd_rs1_rs2)
62 -OP(slld, "slld", rv_codec_r, rv_fmt_rd_rs1_rs2)
63 -OP(srld, "srld", rv_codec_r, rv_fmt_rd_rs1_rs2)
64 -OP(srad, "srad", rv_codec_r, rv_fmt_rd_rs1_rs2)
65 -OP(mul, "mul", rv_codec_r, rv_fmt_rd_rs1_rs2)
66 -OP(mulh, "mulh", rv_codec_r, rv_fmt_rd_rs1_rs2)
67 -OP(mulhsu, "mulhsu", rv_codec_r, rv_fmt_rd_rs1_rs2)
68 -OP(mulhu, "mulhu", rv_codec_r, rv_fmt_rd_rs1_rs2)
69 -OP(div, "div", rv_codec_r, rv_fmt_rd_rs1_rs2)
70 -OP(divu, "divu", rv_codec_r, rv_fmt_rd_rs1_rs2)
71 -OP(rem, "rem", rv_codec_r, rv_fmt_rd_rs1_rs2)
72 -OP(remu, "remu", rv_codec_r, rv_fmt_rd_rs1_rs2)
73 -OP(mulw, "mulw", rv_codec_r, rv_fmt_rd_rs1_rs2)
74 -OP(divw, "divw", rv_codec_r, rv_fmt_rd_rs1_rs2)
75 -OP(divuw, "divuw", rv_codec_r, rv_fmt_rd_rs1_rs2)
76 -OP(remw, "remw", rv_codec_r, rv_fmt_rd_rs1_rs2)
77 -OP(remuw, "remuw", rv_codec_r, rv_fmt_rd_rs1_rs2)
78 -OP(muld, "muld", rv_codec_r, rv_fmt_rd_rs1_rs2)
79 -OP(divd, "divd", rv_codec_r, rv_fmt_rd_rs1_rs2)
80 -OP(divud, "divud", rv_codec_r, rv_fmt_rd_rs1_rs2)
81 -OP(remd, "remd", rv_codec_r, rv_fmt_rd_rs1_rs2)
82 -OP(remud, "remud", rv_codec_r, rv_fmt_rd_rs1_rs2)
83 -OP(lr_w, "lr.w", rv_codec_r_l, rv_fmt_aqrl_rd_rs1)
84 -OP(sc_w, "sc.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
85 -OP(amoswap_w, "amoswap.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
8 +OP(aes32dsi, "aes32dsi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
9 +OP(aes32dsmi, "aes32dsmi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
10 +OP(aes32esi, "aes32esi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
11 +OP(aes32esmi, "aes32esmi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
12 +OP(aes64ds, "aes64ds", rv_codec_r, rv_fmt_rd_rs1_rs2)
13 +OP(aes64dsm, "aes64dsm", rv_codec_r, rv_fmt_rd_rs1_rs2)
14 +OP(aes64es, "aes64es", rv_codec_r, rv_fmt_rd_rs1_rs2)
15 +OP(aes64esm, "aes64esm", rv_codec_r, rv_fmt_rd_rs1_rs2)
16 +OP(aes64im, "aes64im", rv_codec_r, rv_fmt_rd_rs1)
17 +OP(aes64ks1i, "aes64ks1i", rv_codec_k_rnum, rv_fmt_rd_rs1_rnum)
18 +OP(aes64ks2, "aes64ks2", rv_codec_r, rv_fmt_rd_rs1_rs2)
19 +OP(amoadd_b, "amoadd.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
20 +OP(amoadd_d, "amoadd.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
21 +OP(amoadd_h, "amoadd.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
22 +OP(amoadd_q, "amoadd.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
23 OP(amoadd_w, "amoadd.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
87 -OP(amoxor_w, "amoxor.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
88 -OP(amoor_w, "amoor.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
24 +OP(amoand_b, "amoand.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
25 +OP(amoand_d, "amoand.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
26 +OP(amoand_h, "amoand.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
27 +OP(amoand_q, "amoand.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
28 OP(amoand_w, "amoand.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
90 -OP(amomin_w, "amomin.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
29 +OP(amocas_b, "amocas.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
30 +OP(amocas_d, "amocas.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
31 +OP(amocas_h, "amocas.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
32 +OP(amocas_q, "amocas.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
33 +OP(amocas_w, "amocas.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
34 +OP(amomax_b, "amomax.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
35 +OP(amomax_d, "amomax.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
36 +OP(amomax_h, "amomax.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
37 +OP(amomax_q, "amomax.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
38 OP(amomax_w, "amomax.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
92 -OP(amominu_w, "amominu.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
39 +OP(amomaxu_b, "amomaxu.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
40 +OP(amomaxu_d, "amomaxu.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
41 +OP(amomaxu_h, "amomaxu.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
42 +OP(amomaxu_q, "amomaxu.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
43 OP(amomaxu_w, "amomaxu.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
94 -OP(lr_d, "lr.d", rv_codec_r_l, rv_fmt_aqrl_rd_rs1)
95 -OP(sc_d, "sc.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
96 -OP(amoswap_d, "amoswap.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
97 -OP(amoadd_d, "amoadd.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
98 -OP(amoxor_d, "amoxor.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
99 -OP(amoor_d, "amoor.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
100 -OP(amoand_d, "amoand.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
44 +OP(amomin_b, "amomin.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
45 OP(amomin_d, "amomin.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
102 -OP(amomax_d, "amomax.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
46 +OP(amomin_h, "amomin.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
47 +OP(amomin_q, "amomin.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
48 +OP(amomin_w, "amomin.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
49 +OP(amominu_b, "amominu.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
50 OP(amominu_d, "amominu.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
104 -OP(amomaxu_d, "amomaxu.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
105 -OP(lr_q, "lr.q", rv_codec_r_l, rv_fmt_aqrl_rd_rs1)
106 -OP(sc_q, "sc.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
51 +OP(amominu_h, "amominu.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
52 +OP(amominu_q, "amominu.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
53 +OP(amominu_w, "amominu.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
54 +OP(amoor_b, "amoor.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
55 +OP(amoor_d, "amoor.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
56 +OP(amoor_h, "amoor.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
57 +OP(amoor_q, "amoor.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
58 +OP(amoor_w, "amoor.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
59 +OP(amoswap_b, "amoswap.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
60 +OP(amoswap_d, "amoswap.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
61 +OP(amoswap_h, "amoswap.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
62 OP(amoswap_q, "amoswap.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
108 -OP(amoadd_q, "amoadd.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
63 +OP(amoswap_w, "amoswap.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
64 +OP(amoxor_b, "amoxor.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
65 +OP(amoxor_d, "amoxor.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
66 +OP(amoxor_h, "amoxor.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
67 OP(amoxor_q, "amoxor.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
110 -OP(amoor_q, "amoor.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
111 -OP(amoand_q, "amoand.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
112 -OP(amomin_q, "amomin.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
113 -OP(amomax_q, "amomax.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
114 -OP(amominu_q, "amominu.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
115 -OP(amomaxu_q, "amomaxu.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
116 -OP(ecall, "ecall", rv_codec_none, rv_fmt_none)
117 -OP(ebreak, "ebreak", rv_codec_none, rv_fmt_none)
118 -OP(uret, "uret", rv_codec_none, rv_fmt_none)
119 -OP(sret, "sret", rv_codec_none, rv_fmt_none)
120 -OP(hret, "hret", rv_codec_none, rv_fmt_none)
121 -OP(mret, "mret", rv_codec_none, rv_fmt_none)
122 -OP(dret, "dret", rv_codec_none, rv_fmt_none)
123 -OP(sfence_vm, "sfence.vm", rv_codec_r, rv_fmt_rs1)
124 -OP(sfence_vma, "sfence.vma", rv_codec_r, rv_fmt_rs1_rs2)
125 -OP(wfi, "wfi", rv_codec_none, rv_fmt_none)
126 -OP(csrrw, "csrrw", rv_codec_i_csr, rv_fmt_rd_csr_rs1)
127 -OP(csrrs, "csrrs", rv_codec_i_csr, rv_fmt_rd_csr_rs1)
128 -OP(csrrc, "csrrc", rv_codec_i_csr, rv_fmt_rd_csr_rs1)
129 -OP(csrrwi, "csrrwi", rv_codec_i_csr, rv_fmt_rd_csr_zimm)
130 -OP(csrrsi, "csrrsi", rv_codec_i_csr, rv_fmt_rd_csr_zimm)
131 -OP(csrrci, "csrrci", rv_codec_i_csr, rv_fmt_rd_csr_zimm)
132 -OP(flw, "flw", rv_codec_i, rv_fmt_frd_offset_rs1)
133 -OP(fsw, "fsw", rv_codec_s, rv_fmt_frs2_offset_rs1)
134 -OP(fmadd_s, "fmadd.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
135 -OP(fmsub_s, "fmsub.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
136 -OP(fnmsub_s, "fnmsub.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
137 -OP(fnmadd_s, "fnmadd.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
138 -OP(fadd_s, "fadd.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
139 -OP(fsub_s, "fsub.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
140 -OP(fmul_s, "fmul.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
141 -OP(fdiv_s, "fdiv.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
142 -OP(fsgnj_s, "fsgnj.s", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnj_s)
143 -OP(fsgnjn_s, "fsgnjn.s", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjn_s)
144 -OP(fsgnjx_s, "fsgnjx.s", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjx_s)
145 -OP(fmin_s, "fmin.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
146 -OP(fmax_s, "fmax.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
147 -OP(fsqrt_s, "fsqrt.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
148 -OP(fle_s, "fle.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
149 -OP(flt_s, "flt.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
150 -OP(feq_s, "feq.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
151 -OP(fcvt_w_s, "fcvt.w.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
152 -OP(fcvt_wu_s, "fcvt.wu.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
153 -OP(fcvt_s_w, "fcvt.s.w", rv_codec_r_m, rv_fmt_rm_frd_rs1)
154 -OP(fcvt_s_wu, "fcvt.s.wu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
155 -OP(fmv_x_s, "fmv.x.s", rv_codec_r, rv_fmt_rd_frs1)
156 -OP(fclass_s, "fclass.s", rv_codec_r, rv_fmt_rd_frs1)
157 -OP(fmv_s_x, "fmv.s.x", rv_codec_r, rv_fmt_frd_rs1)
158 -OP(fcvt_l_s, "fcvt.l.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
159 -OP(fcvt_lu_s, "fcvt.lu.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
160 -OP(fcvt_s_l, "fcvt.s.l", rv_codec_r_m, rv_fmt_rm_frd_rs1)
161 -OP(fcvt_s_lu, "fcvt.s.lu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
162 -OP(fld, "fld", rv_codec_i, rv_fmt_frd_offset_rs1)
163 -OP(fsd, "fsd", rv_codec_s, rv_fmt_frs2_offset_rs1)
164 -OP(fmadd_d, "fmadd.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
165 -OP(fmsub_d, "fmsub.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
166 -OP(fnmsub_d, "fnmsub.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
167 -OP(fnmadd_d, "fnmadd.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
168 -OP(fadd_d, "fadd.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
169 -OP(fsub_d, "fsub.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
170 -OP(fmul_d, "fmul.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
171 -OP(fdiv_d, "fdiv.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
172 -OP(fsgnj_d, "fsgnj.d", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnj_d)
173 -OP(fsgnjn_d, "fsgnjn.d", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjn_d)
174 -OP(fsgnjx_d, "fsgnjx.d", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjx_d)
175 -OP(fmin_d, "fmin.d", rv_codec_r, rv_fmt_frd_frs1_frs2)
176 -OP(fmax_d, "fmax.d", rv_codec_r, rv_fmt_frd_frs1_frs2)
177 -OP(fcvt_s_d, "fcvt.s.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
178 -OP(fcvt_d_s, "fcvt.d.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
179 -OP(fsqrt_d, "fsqrt.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
180 -OP(fle_d, "fle.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
181 -OP(flt_d, "flt.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
182 -OP(feq_d, "feq.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
183 -OP(fcvt_w_d, "fcvt.w.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
184 -OP(fcvt_wu_d, "fcvt.wu.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
185 -OP(fcvt_d_w, "fcvt.d.w", rv_codec_r_m, rv_fmt_rm_frd_rs1)
186 -OP(fcvt_d_wu, "fcvt.d.wu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
187 -OP(fclass_d, "fclass.d", rv_codec_r, rv_fmt_rd_frs1)
188 -OP(fcvt_l_d, "fcvt.l.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
189 -OP(fcvt_lu_d, "fcvt.lu.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
190 -OP(fmv_x_d, "fmv.x.d", rv_codec_r, rv_fmt_rd_frs1)
191 -OP(fcvt_d_l, "fcvt.d.l", rv_codec_r_m, rv_fmt_rm_frd_rs1)
192 -OP(fcvt_d_lu, "fcvt.d.lu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
193 -OP(fmv_d_x, "fmv.d.x", rv_codec_r, rv_fmt_frd_rs1)
194 -OP(flq, "flq", rv_codec_i, rv_fmt_frd_offset_rs1)
195 -OP(fsq, "fsq", rv_codec_s, rv_fmt_frs2_offset_rs1)
196 -OP(fmadd_q, "fmadd.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
197 -OP(fmsub_q, "fmsub.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
198 -OP(fnmsub_q, "fnmsub.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
199 -OP(fnmadd_q, "fnmadd.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
200 -OP(fadd_q, "fadd.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
201 -OP(fsub_q, "fsub.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
202 -OP(fmul_q, "fmul.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
203 -OP(fdiv_q, "fdiv.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
204 -OP(fsgnj_q, "fsgnj.q", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnj_q)
205 -OP(fsgnjn_q, "fsgnjn.q", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjn_q)
206 -OP(fsgnjx_q, "fsgnjx.q", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjx_q)
207 -OP(fmin_q, "fmin.q", rv_codec_r, rv_fmt_frd_frs1_frs2)
208 -OP(fmax_q, "fmax.q", rv_codec_r, rv_fmt_frd_frs1_frs2)
209 -OP(fcvt_s_q, "fcvt.s.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
210 -OP(fcvt_q_s, "fcvt.q.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
211 -OP(fcvt_d_q, "fcvt.d.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
212 -OP(fcvt_q_d, "fcvt.q.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
213 -OP(fsqrt_q, "fsqrt.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
214 -OP(fle_q, "fle.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
215 -OP(flt_q, "flt.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
216 -OP(feq_q, "feq.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
217 -OP(fcvt_w_q, "fcvt.w.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
218 -OP(fcvt_wu_q, "fcvt.wu.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
219 -OP(fcvt_q_w, "fcvt.q.w", rv_codec_r_m, rv_fmt_rm_frd_rs1)
220 -OP(fcvt_q_wu, "fcvt.q.wu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
221 -OP(fclass_q, "fclass.q", rv_codec_r, rv_fmt_rd_frs1)
222 -OP(fcvt_l_q, "fcvt.l.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
223 -OP(fcvt_lu_q, "fcvt.lu.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
224 -OP(fcvt_q_l, "fcvt.q.l", rv_codec_r_m, rv_fmt_rm_frd_rs1)
225 -OP(fcvt_q_lu, "fcvt.q.lu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
226 -OP(fmv_x_q, "fmv.x.q", rv_codec_r, rv_fmt_rd_frs1)
227 -OP(fmv_q_x, "fmv.q.x", rv_codec_r, rv_fmt_frd_rs1)
228 -OP(c_addi4spn, "c.addi4spn", rv_codec_ciw_4spn, NULL, DECOMP(op_addi))
229 -OP(c_fld, "c.fld", rv_codec_cl_ld, NULL, DECOMP(op_fld))
230 -OP(c_lw, "c.lw", rv_codec_cl_lw, NULL, DECOMP(op_lw))
231 -OP(c_flw, "c.flw", rv_codec_cl_lw, NULL, DECOMP(op_flw))
232 -OP(c_fsd, "c.fsd", rv_codec_cs_sd, NULL, DECOMP(op_fsd))
233 -OP(c_sw, "c.sw", rv_codec_cs_sw, NULL, DECOMP(op_sw))
234 -OP(c_fsw, "c.fsw", rv_codec_cs_sw, NULL, DECOMP(op_fsw))
68 +OP(amoxor_w, "amoxor.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
69 +OP(and, "and", rv_codec_r, rv_fmt_rd_rs1_rs2)
70 +OP(andi, "andi", rv_codec_i, rv_fmt_rd_rs1_imm)
71 +OP(andn, "andn", rv_codec_r, rv_fmt_rd_rs1_rs2)
72 +OP(auipc, "auipc", rv_codec_u, rv_fmt_rd_uoffset)
73 +OP(bclr, "bclr", rv_codec_r, rv_fmt_rd_rs1_rs2)
74 +OP(bclri, "bclri", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
75 +OP(beq, "beq", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_beq)
76 +OP(beqz, "beqz", rv_codec_illegal, rv_fmt_rs1_offset)
77 +OP(bext, "bext", rv_codec_r, rv_fmt_rd_rs1_rs2)
78 +OP(bexti, "bexti", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
79 +OP(bge, "bge", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_bge)
80 +OP(bgeu, "bgeu", rv_codec_sb, rv_fmt_rs1_rs2_offset)
81 +OP(bgez, "bgez", rv_codec_illegal, rv_fmt_rs1_offset)
82 +OP(bgtz, "bgtz", rv_codec_illegal, rv_fmt_rs2_offset)
83 +OP(binv, "binv", rv_codec_r, rv_fmt_rd_rs1_rs2)
84 +OP(binvi, "binvi", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
85 +OP(blez, "blez", rv_codec_illegal, rv_fmt_rs2_offset)
86 +OP(blt, "blt", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_blt)
87 +OP(bltu, "bltu", rv_codec_sb, rv_fmt_rs1_rs2_offset)
88 +OP(bltz, "bltz", rv_codec_illegal, rv_fmt_rs1_offset)
89 +OP(bne, "bne", rv_codec_sb, rv_fmt_rs1_rs2_offset, rvcp_bne)
90 +OP(bnez, "bnez", rv_codec_illegal, rv_fmt_rs1_offset)
91 +OP(brev8, "brev8", rv_codec_r, rv_fmt_rd_rs1)
92 +OP(bset, "bset", rv_codec_r, rv_fmt_rd_rs1_rs2)
93 +OP(bseti, "bseti", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
94 +OP(c_add, "c.add", rv_codec_cr, NULL, DECOMP(op_add))
95 OP(c_addi, "c.addi", rv_codec_ci, NULL, DECOMP(op_addi))
236 -OP(c_jal, "c.jal", rv_codec_cj_jal, NULL, DECOMP(op_jal))
237 -OP(c_li, "c.li", rv_codec_ci_li, NULL, DECOMP(op_addi))
96 OP(c_addi16sp, "c.addi16sp", rv_codec_ci_16sp, NULL, DECOMP(op_addi))
239 -OP(c_lui, "c.lui", rv_codec_ci_lui, NULL, DECOMP(op_lui))
240 -OP(c_srli, "c.srli", rv_codec_cb_sh6, NULL, DECOMP(op_srli))
241 -OP(c_srai, "c.srai", rv_codec_cb_sh6, NULL, DECOMP(op_srai))
242 -OP(c_andi, "c.andi", rv_codec_cb_imm, NULL, DECOMP(op_andi))
243 -OP(c_sub, "c.sub", rv_codec_cs, NULL, DECOMP(op_sub))
244 -OP(c_xor, "c.xor", rv_codec_cs, NULL, DECOMP(op_xor))
245 -OP(c_or, "c.or", rv_codec_cs, NULL, DECOMP(op_or))
246 -OP(c_and, "c.and", rv_codec_cs, NULL, DECOMP(op_and))
247 -OP(c_subw, "c.subw", rv_codec_cs, NULL, DECOMP(op_subw))
97 +OP(c_addi4spn, "c.addi4spn", rv_codec_ciw_4spn, NULL, DECOMP(op_addi))
98 +OP(c_addiw, "c.addiw", rv_codec_ci, NULL, DECOMP(op_addiw))
99 OP(c_addw, "c.addw", rv_codec_cs, NULL, DECOMP(op_addw))
249 -OP(c_j, "c.j", rv_codec_cj, NULL, DECOMP(op_j))
100 +OP(c_and, "c.and", rv_codec_cs, NULL, DECOMP(op_and))
101 +OP(c_andi, "c.andi", rv_codec_cb_imm, NULL, DECOMP(op_andi))
102 OP(c_beqz, "c.beqz", rv_codec_cb, NULL, DECOMP(op_beqz))
103 OP(c_bnez, "c.bnez", rv_codec_cb, NULL, DECOMP(op_bnez))
252 -OP(c_slli, "c.slli", rv_codec_ci_sh6, NULL, DECOMP(op_slli))
104 +OP(c_ebreak, "c.ebreak", rv_codec_ci_none, NULL, DECOMP(op_ebreak))
105 +OP(c_fld, "c.fld", rv_codec_cl_ld, NULL, DECOMP(op_fld))
106 OP(c_fldsp, "c.fldsp", rv_codec_ci_ldsp, NULL, DECOMP(op_fld))
254 -OP(c_lwsp, "c.lwsp", rv_codec_ci_lwsp, NULL, DECOMP(op_lw))
107 +OP(c_flw, "c.flw", rv_codec_cl_lw, NULL, DECOMP(op_flw))
108 OP(c_flwsp, "c.flwsp", rv_codec_ci_lwsp, NULL, DECOMP(op_flw))
256 -OP(c_jr, "c.jr", rv_codec_cr_jr, NULL, DECOMP(op_jr))
257 -OP(c_mv, "c.mv", rv_codec_cr_mv, NULL, DECOMP(op_mv))
258 -OP(c_ebreak, "c.ebreak", rv_codec_ci_none, NULL, DECOMP(op_ebreak))
259 -OP(c_jalr, "c.jalr", rv_codec_cr_jalr, NULL, DECOMP(op_jalr))
260 -OP(c_add, "c.add", rv_codec_cr, NULL, DECOMP(op_add))
109 +OP(c_fsd, "c.fsd", rv_codec_cs_sd, NULL, DECOMP(op_fsd))
110 OP(c_fsdsp, "c.fsdsp", rv_codec_css_sdsp, NULL, DECOMP(op_fsd))
262 -OP(c_swsp, "c.swsp", rv_codec_css_swsp, NULL, DECOMP(op_sw))
111 +OP(c_fsw, "c.fsw", rv_codec_cs_sw, NULL, DECOMP(op_fsw))
112 OP(c_fswsp, "c.fswsp", rv_codec_css_swsp, NULL, DECOMP(op_fsw))
113 +OP(c_j, "c.j", rv_codec_cj, NULL, DECOMP(op_j))
114 +OP(c_jal, "c.jal", rv_codec_cj_jal, NULL, DECOMP(op_jal))
115 +OP(c_jalr, "c.jalr", rv_codec_cr_jalr, NULL, DECOMP(op_jalr))
116 +OP(c_jr, "c.jr", rv_codec_cr_jr, NULL, DECOMP(op_jr))
117 +OP(c_lbu, "c.lbu", rv_codec_zcb_lb, rv_fmt_rs1_rs2_zce_ldst)
118 OP(c_ld, "c.ld", rv_codec_cl_ld, NULL, DECOMP(op_ld))
265 -OP(c_sd, "c.sd", rv_codec_cs_sd, NULL, DECOMP(op_sd))
266 -OP(c_addiw, "c.addiw", rv_codec_ci, NULL, DECOMP(op_addiw))
119 OP(c_ldsp, "c.ldsp", rv_codec_ci_ldsp, NULL, DECOMP(op_ld))
268 -OP(c_sdsp, "c.sdsp", rv_codec_css_sdsp, NULL, DECOMP(op_sd))
120 +OP(c_lh, "c.lh", rv_codec_zcb_lh, rv_fmt_rs1_rs2_zce_ldst)
121 +OP(c_lhu, "c.lhu", rv_codec_zcb_lh, rv_fmt_rs1_rs2_zce_ldst)
122 +OP(c_li, "c.li", rv_codec_ci_li, NULL, DECOMP(op_addi))
123 OP(c_lq, "c.lq", rv_codec_cl_lq, NULL, DECOMP(op_lq))
270 -OP(c_sq, "c.sq", rv_codec_cs_sq, NULL, DECOMP(op_sq))
124 OP(c_lqsp, "c.lqsp", rv_codec_ci_lqsp, NULL, DECOMP(op_lq))
125 +OP(c_lui, "c.lui", rv_codec_ci_lui, NULL, DECOMP(op_lui))
126 +OP(c_lw, "c.lw", rv_codec_cl_lw, NULL, DECOMP(op_lw))
127 +OP(c_lwsp, "c.lwsp", rv_codec_ci_lwsp, NULL, DECOMP(op_lw))
128 +OP(c_mop, "c.mop", rv_codec_cmop, rv_fmt_cmop)
129 +OP(c_mul, "c.mul", rv_codec_zcb_mul, rv_fmt_rd_rs2)
130 +OP(c_mv, "c.mv", rv_codec_cr_mv, NULL, DECOMP(op_mv))
131 +OP(c_not, "c.not", rv_codec_zcb_ext, rv_fmt_rd)
132 +OP(c_or, "c.or", rv_codec_cs, NULL, DECOMP(op_or))
133 +OP(c_sb, "c.sb", rv_codec_zcb_lb, rv_fmt_rs1_rs2_zce_ldst)
134 +OP(c_sd, "c.sd", rv_codec_cs_sd, NULL, DECOMP(op_sd))
135 +OP(c_sdsp, "c.sdsp", rv_codec_css_sdsp, NULL, DECOMP(op_sd))
136 +OP(c_sext_b, "c.sext.b", rv_codec_zcb_ext, rv_fmt_rd)
137 +OP(c_sext_h, "c.sext.h", rv_codec_zcb_ext, rv_fmt_rd)
138 +OP(c_sh, "c.sh", rv_codec_zcb_lh, rv_fmt_rs1_rs2_zce_ldst)
139 +OP(c_slli, "c.slli", rv_codec_ci_sh6, NULL, DECOMP(op_slli))
140 +OP(c_sq, "c.sq", rv_codec_cs_sq, NULL, DECOMP(op_sq))
141 OP(c_sqsp, "c.sqsp", rv_codec_css_sqsp, NULL, DECOMP(op_sq))
273 -OP(nop, "nop", rv_codec_illegal, rv_fmt_none)
274 -OP(mv, "mv", rv_codec_illegal, rv_fmt_rd_rs1, rvcp_mv)
275 -OP(not, "not", rv_codec_illegal, rv_fmt_rd_rs1)
276 -OP(neg, "neg", rv_codec_illegal, rv_fmt_rd_rs2)
277 -OP(negw, "negw", rv_codec_illegal, rv_fmt_rd_rs2)
278 -OP(sext_w, "sext.w", rv_codec_illegal, rv_fmt_rd_rs1)
279 -OP(seqz, "seqz", rv_codec_illegal, rv_fmt_rd_rs1)
280 -OP(snez, "snez", rv_codec_illegal, rv_fmt_rd_rs2)
281 -OP(sltz, "sltz", rv_codec_illegal, rv_fmt_rd_rs1)
282 -OP(sgtz, "sgtz", rv_codec_illegal, rv_fmt_rd_rs2)
283 -OP(fmv_s, "fmv.s", rv_codec_illegal, rv_fmt_frd_frs1)
284 -OP(fabs_s, "fabs.s", rv_codec_illegal, rv_fmt_frd_frs1)
285 -OP(fneg_s, "fneg.s", rv_codec_illegal, rv_fmt_frd_frs1)
286 -OP(fmv_d, "fmv.d", rv_codec_illegal, rv_fmt_frd_frs1)
287 -OP(fabs_d, "fabs.d", rv_codec_illegal, rv_fmt_frd_frs1)
288 -OP(fneg_d, "fneg.d", rv_codec_illegal, rv_fmt_frd_frs1)
289 -OP(fmv_q, "fmv.q", rv_codec_illegal, rv_fmt_frd_frs1)
290 -OP(fabs_q, "fabs.q", rv_codec_illegal, rv_fmt_frd_frs1)
291 -OP(fneg_q, "fneg.q", rv_codec_illegal, rv_fmt_frd_frs1)
292 -OP(beqz, "beqz", rv_codec_illegal, rv_fmt_rs1_offset)
293 -OP(bnez, "bnez", rv_codec_illegal, rv_fmt_rs1_offset)
294 -OP(blez, "blez", rv_codec_illegal, rv_fmt_rs2_offset)
295 -OP(bgez, "bgez", rv_codec_illegal, rv_fmt_rs1_offset)
296 -OP(bltz, "bltz", rv_codec_illegal, rv_fmt_rs1_offset)
297 -OP(bgtz, "bgtz", rv_codec_illegal, rv_fmt_rs2_offset)
298 -OP(jal_ra, "jal", rv_codec_illegal, rv_fmt_offset)
299 -OP(jalr_ra, "jalr", rv_codec_illegal, rv_fmt_rs1)
300 -OP(j, "j", rv_codec_illegal, rv_fmt_offset)
301 -OP(ret, "ret", rv_codec_illegal, rv_fmt_none)
302 -OP(jr, "jr", rv_codec_illegal, rv_fmt_rs1, rvcp_jr)
303 -OP(rdcycle, "rdcycle", rv_codec_i_csr, rv_fmt_rd)
304 -OP(rdtime, "rdtime", rv_codec_i_csr, rv_fmt_rd)
305 -OP(rdinstret, "rdinstret", rv_codec_i_csr, rv_fmt_rd)
306 -OP(rdcycleh, "rdcycleh", rv_codec_i_csr, rv_fmt_rd)
307 -OP(rdtimeh, "rdtimeh", rv_codec_i_csr, rv_fmt_rd)
308 -OP(rdinstreth, "rdinstreth", rv_codec_i_csr, rv_fmt_rd)
309 -OP(frcsr, "frcsr", rv_codec_i_csr, rv_fmt_rd)
310 -OP(frrm, "frrm", rv_codec_i_csr, rv_fmt_rd)
311 -OP(frflags, "frflags", rv_codec_i_csr, rv_fmt_rd)
312 -OP(fscsr, "fscsr", rv_codec_i_csr, rv_fmt_rd_rs1)
313 -OP(fsrm, "fsrm", rv_codec_i_csr, rv_fmt_rd_rs1)
314 -OP(fsflags, "fsflags", rv_codec_i_csr, rv_fmt_rd_rs1)
315 -OP(fsrmi, "fsrmi", rv_codec_i_csr, rv_fmt_rd_zimm)
316 -OP(fsflagsi, "fsflagsi", rv_codec_i_csr, rv_fmt_rd_zimm)
317 -OP(bseti, "bseti", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
318 -OP(bclri, "bclri", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
319 -OP(binvi, "binvi", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
320 -OP(bexti, "bexti", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
321 -OP(rori, "rori", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
322 -OP(clz, "clz", rv_codec_r, rv_fmt_rd_rs1)
323 -OP(ctz, "ctz", rv_codec_r, rv_fmt_rd_rs1)
324 -OP(cpop, "cpop", rv_codec_r, rv_fmt_rd_rs1)
325 -OP(sext_h, "sext.h", rv_codec_r, rv_fmt_rd_rs1)
326 -OP(sext_b, "sext.b", rv_codec_r, rv_fmt_rd_rs1)
327 -OP(xnor, "xnor", rv_codec_r, rv_fmt_rd_rs1_rs2)
328 -OP(orn, "orn", rv_codec_r, rv_fmt_rd_rs1_rs2)
329 -OP(andn, "andn", rv_codec_r, rv_fmt_rd_rs1_rs2)
330 -OP(rol, "rol", rv_codec_r, rv_fmt_rd_rs1_rs2)
331 -OP(ror, "ror", rv_codec_r, rv_fmt_rd_rs1_rs2)
332 -OP(sh1add, "sh1add", rv_codec_r, rv_fmt_rd_rs1_rs2)
333 -OP(sh2add, "sh2add", rv_codec_r, rv_fmt_rd_rs1_rs2)
334 -OP(sh3add, "sh3add", rv_codec_r, rv_fmt_rd_rs1_rs2)
335 -OP(sh1add_uw, "sh1add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
336 -OP(sh2add_uw, "sh2add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
337 -OP(sh3add_uw, "sh3add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
142 +OP(c_srai, "c.srai", rv_codec_cb_sh6, NULL, DECOMP(op_srai))
143 +OP(c_srli, "c.srli", rv_codec_cb_sh6, NULL, DECOMP(op_srli))
144 +OP(c_sspopchk, "c.sspopchk", rv_codec_cmop_ss, NULL, DECOMP(op_sspopchk))
145 +OP(c_sspush, "c.sspush", rv_codec_cmop_ss, NULL, DECOMP(op_sspush))
146 +OP(c_sub, "c.sub", rv_codec_cs, NULL, DECOMP(op_sub))
147 +OP(c_subw, "c.subw", rv_codec_cs, NULL, DECOMP(op_subw))
148 +OP(c_sw, "c.sw", rv_codec_cs_sw, NULL, DECOMP(op_sw))
149 +OP(c_swsp, "c.swsp", rv_codec_css_swsp, NULL, DECOMP(op_sw))
150 +OP(c_xor, "c.xor", rv_codec_cs, NULL, DECOMP(op_xor))
151 +OP(c_zext_b, "c.zext.b", rv_codec_zcb_ext, rv_fmt_rd)
152 +OP(c_zext_h, "c.zext.h", rv_codec_zcb_ext, rv_fmt_rd)
153 +OP(c_zext_w, "c.zext.w", rv_codec_zcb_ext, rv_fmt_rd)
154 +OP(cbo_clean, "cbo.clean", rv_codec_r, rv_fmt_rs1)
155 +OP(cbo_flush, "cbo.flush", rv_codec_r, rv_fmt_rs1)
156 +OP(cbo_inval, "cbo.inval", rv_codec_r, rv_fmt_rs1)
157 +OP(cbo_zero, "cbo.zero", rv_codec_r, rv_fmt_rs1)
158 OP(clmul, "clmul", rv_codec_r, rv_fmt_rd_rs1_rs2)
339 -OP(clmulr, "clmulr", rv_codec_r, rv_fmt_rd_rs1_rs2)
159 OP(clmulh, "clmulh", rv_codec_r, rv_fmt_rd_rs1_rs2)
341 -OP(min, "min", rv_codec_r, rv_fmt_rd_rs1_rs2)
342 -OP(minu, "minu", rv_codec_r, rv_fmt_rd_rs1_rs2)
343 -OP(max, "max", rv_codec_r, rv_fmt_rd_rs1_rs2)
344 -OP(maxu, "maxu", rv_codec_r, rv_fmt_rd_rs1_rs2)
160 +OP(clmulr, "clmulr", rv_codec_r, rv_fmt_rd_rs1_rs2)
161 +OP(clz, "clz", rv_codec_r, rv_fmt_rd_rs1)
162 OP(clzw, "clzw", rv_codec_r, rv_fmt_rd_rs1)
346 -OP(ctzw, "ctzw", rv_codec_r, rv_fmt_rd_rs1)
163 +OP(cm_jalt, "cm.jalt", rv_codec_zcmt_jt, rv_fmt_zcmt_index)
164 +OP(cm_jt, "cm.jt", rv_codec_zcmt_jt, rv_fmt_zcmt_index)
165 +OP(cm_mva01s, "cm.mva01s", rv_codec_zcmp_cm_mv, rv_fmt_rd_rs2)
166 +OP(cm_mvsa01, "cm.mvsa01", rv_codec_zcmp_cm_mv, rv_fmt_rd_rs2)
167 +OP(cm_pop, "cm.pop", rv_codec_zcmp_cm_pushpop, rv_fmt_pop_rlist)
168 +OP(cm_popret, "cm.popret", rv_codec_zcmp_cm_pushpop, rv_fmt_pop_rlist)
169 +OP(cm_popretz, "cm.popretz", rv_codec_zcmp_cm_pushpop, rv_fmt_pop_rlist)
170 +OP(cm_push, "cm.push", rv_codec_zcmp_cm_pushpop, rv_fmt_push_rlist)
171 +OP(cpop, "cpop", rv_codec_r, rv_fmt_rd_rs1)
172 OP(cpopw, "cpopw", rv_codec_r, rv_fmt_rd_rs1)
348 -OP(slli_uw, "slli.uw", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
349 -OP(add_uw, "add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
350 -OP(rolw, "rolw", rv_codec_r, rv_fmt_rd_rs1_rs2)
351 -OP(rorw, "rorw", rv_codec_r, rv_fmt_rd_rs1_rs2)
352 -OP(rev8, "rev8", rv_codec_r, rv_fmt_rd_rs1)
353 -OP(zext_h, "zext.h", rv_codec_r, rv_fmt_rd_rs1)
354 -OP(roriw, "roriw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
355 -OP(orc_b, "orc.b", rv_codec_r, rv_fmt_rd_rs1)
356 -OP(bset, "bset", rv_codec_r, rv_fmt_rd_rs1_rs2)
357 -OP(bclr, "bclr", rv_codec_r, rv_fmt_rd_rs1_rs2)
358 -OP(binv, "binv", rv_codec_r, rv_fmt_rd_rs1_rs2)
359 -OP(bext, "bext", rv_codec_r, rv_fmt_rd_rs1_rs2)
360 -OP(aes32esmi, "aes32esmi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
361 -OP(aes32esi, "aes32esi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
362 -OP(aes32dsmi, "aes32dsmi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
363 -OP(aes32dsi, "aes32dsi", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
364 -OP(aes64ks1i, "aes64ks1i", rv_codec_k_rnum, rv_fmt_rd_rs1_rnum)
365 -OP(aes64ks2, "aes64ks2", rv_codec_r, rv_fmt_rd_rs1_rs2)
366 -OP(aes64im, "aes64im", rv_codec_r, rv_fmt_rd_rs1)
367 -OP(aes64esm, "aes64esm", rv_codec_r, rv_fmt_rd_rs1_rs2)
368 -OP(aes64es, "aes64es", rv_codec_r, rv_fmt_rd_rs1_rs2)
369 -OP(aes64dsm, "aes64dsm", rv_codec_r, rv_fmt_rd_rs1_rs2)
370 -OP(aes64ds, "aes64ds", rv_codec_r, rv_fmt_rd_rs1_rs2)
371 -OP(sha256sig0, "sha256sig0", rv_codec_r, rv_fmt_rd_rs1)
372 -OP(sha256sig1, "sha256sig1", rv_codec_r, rv_fmt_rd_rs1)
373 -OP(sha256sum0, "sha256sum0", rv_codec_r, rv_fmt_rd_rs1)
374 -OP(sha256sum1, "sha256sum1", rv_codec_r, rv_fmt_rd_rs1)
375 -OP(sha512sig0, "sha512sig0", rv_codec_r, rv_fmt_rd_rs1_rs2)
376 -OP(sha512sig1, "sha512sig1", rv_codec_r, rv_fmt_rd_rs1_rs2)
377 -OP(sha512sum0, "sha512sum0", rv_codec_r, rv_fmt_rd_rs1_rs2)
378 -OP(sha512sum1, "sha512sum1", rv_codec_r, rv_fmt_rd_rs1_rs2)
379 -OP(sha512sum0r, "sha512sum0r", rv_codec_r, rv_fmt_rd_rs1_rs2)
380 -OP(sha512sum1r, "sha512sum1r", rv_codec_r, rv_fmt_rd_rs1_rs2)
381 -OP(sha512sig0l, "sha512sig0l", rv_codec_r, rv_fmt_rd_rs1_rs2)
382 -OP(sha512sig0h, "sha512sig0h", rv_codec_r, rv_fmt_rd_rs1_rs2)
383 -OP(sha512sig1l, "sha512sig1l", rv_codec_r, rv_fmt_rd_rs1_rs2)
384 -OP(sha512sig1h, "sha512sig1h", rv_codec_r, rv_fmt_rd_rs1_rs2)
385 -OP(sm3p0, "sm3p0", rv_codec_r, rv_fmt_rd_rs1)
386 -OP(sm3p1, "sm3p1", rv_codec_r, rv_fmt_rd_rs1)
387 -OP(sm4ed, "sm4ed", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
388 -OP(sm4ks, "sm4ks", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
389 -OP(brev8, "brev8", rv_codec_r, rv_fmt_rd_rs1)
390 -OP(pack, "pack", rv_codec_r, rv_fmt_rd_rs1_rs2)
391 -OP(packh, "packh", rv_codec_r, rv_fmt_rd_rs1_rs2)
392 -OP(packw, "packw", rv_codec_r, rv_fmt_rd_rs1_rs2)
393 -OP(unzip, "unzip", rv_codec_r, rv_fmt_rd_rs1)
394 -OP(zip, "zip", rv_codec_r, rv_fmt_rd_rs1)
395 -OP(xperm4, "xperm4", rv_codec_r, rv_fmt_rd_rs1_rs2)
396 -OP(xperm8, "xperm8", rv_codec_r, rv_fmt_rd_rs1)
397 -OP(vle8_v, "vle8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
398 -OP(vle16_v, "vle16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
399 -OP(vle32_v, "vle32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
400 -OP(vle64_v, "vle64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
401 -OP(vse8_v, "vse8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
402 -OP(vse16_v, "vse16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
403 -OP(vse32_v, "vse32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
404 -OP(vse64_v, "vse64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
405 -OP(vlm_v, "vlm.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
406 -OP(vsm_v, "vsm.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
407 -OP(vlse8_v, "vlse8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
408 -OP(vlse16_v, "vlse16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
409 -OP(vlse32_v, "vlse32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
410 -OP(vlse64_v, "vlse64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
411 -OP(vsse8_v, "vsse8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
412 -OP(vsse16_v, "vsse16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
413 -OP(vsse32_v, "vsse32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
414 -OP(vsse64_v, "vsse64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
415 -OP(vluxei8_v, "vluxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
416 -OP(vluxei16_v, "vluxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
417 -OP(vluxei32_v, "vluxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
418 -OP(vluxei64_v, "vluxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
419 -OP(vloxei8_v, "vloxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
420 -OP(vloxei16_v, "vloxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
421 -OP(vloxei32_v, "vloxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
422 -OP(vloxei64_v, "vloxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
423 -OP(vsuxei8_v, "vsuxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
424 -OP(vsuxei16_v, "vsuxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
425 -OP(vsuxei32_v, "vsuxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
426 -OP(vsuxei64_v, "vsuxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
427 -OP(vsoxei8_v, "vsoxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
428 -OP(vsoxei16_v, "vsoxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
429 -OP(vsoxei32_v, "vsoxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
430 -OP(vsoxei64_v, "vsoxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
431 -OP(vle8ff_v, "vle8ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
432 -OP(vle16ff_v, "vle16ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
433 -OP(vle32ff_v, "vle32ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
434 -OP(vle64ff_v, "vle64ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
435 -OP(vl1re8_v, "vl1re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
436 -OP(vl1re16_v, "vl1re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
437 -OP(vl1re32_v, "vl1re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
438 -OP(vl1re64_v, "vl1re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
439 -OP(vl2re8_v, "vl2re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
440 -OP(vl2re16_v, "vl2re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
441 -OP(vl2re32_v, "vl2re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
442 -OP(vl2re64_v, "vl2re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
443 -OP(vl4re8_v, "vl4re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
444 -OP(vl4re16_v, "vl4re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
445 -OP(vl4re32_v, "vl4re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
446 -OP(vl4re64_v, "vl4re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
447 -OP(vl8re8_v, "vl8re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
448 -OP(vl8re16_v, "vl8re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
449 -OP(vl8re32_v, "vl8re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
450 -OP(vl8re64_v, "vl8re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
451 -OP(vs1r_v, "vs1r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
452 -OP(vs2r_v, "vs2r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
453 -OP(vs4r_v, "vs4r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
454 -OP(vs8r_v, "vs8r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
455 -OP(vadd_vv, "vadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
456 -OP(vadd_vx, "vadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
457 -OP(vadd_vi, "vadd.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
458 -OP(vsub_vv, "vsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
459 -OP(vsub_vx, "vsub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
460 -OP(vrsub_vx, "vrsub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
461 -OP(vrsub_vi, "vrsub.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
462 -OP(vwaddu_vv, "vwaddu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
463 -OP(vwaddu_vx, "vwaddu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
464 -OP(vwadd_vv, "vwadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
465 -OP(vwadd_vx, "vwadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
466 -OP(vwsubu_vv, "vwsubu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
467 -OP(vwsubu_vx, "vwsubu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
468 -OP(vwsub_vv, "vwsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
469 -OP(vwsub_vx, "vwsub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
470 -OP(vwaddu_wv, "vwaddu.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
471 -OP(vwaddu_wx, "vwaddu.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
472 -OP(vwadd_wv, "vwadd.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
473 -OP(vwadd_wx, "vwadd.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
474 -OP(vwsubu_wv, "vwsubu.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
475 -OP(vwsubu_wx, "vwsubu.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
476 -OP(vwsub_wv, "vwsub.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
477 -OP(vwsub_wx, "vwsub.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
478 -OP(vadc_vvm, "vadc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
479 -OP(vadc_vxm, "vadc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
480 -OP(vadc_vim, "vadc.vim", rv_codec_v_i, rv_fmt_vd_vs2_imm_vl)
481 -OP(vmadc_vvm, "vmadc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
482 -OP(vmadc_vxm, "vmadc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
483 -OP(vmadc_vim, "vmadc.vim", rv_codec_v_i, rv_fmt_vd_vs2_imm_vl)
484 -OP(vsbc_vvm, "vsbc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
485 -OP(vsbc_vxm, "vsbc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
486 -OP(vmsbc_vvm, "vmsbc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
487 -OP(vmsbc_vxm, "vmsbc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
488 -OP(vand_vv, "vand.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
489 -OP(vand_vx, "vand.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
490 -OP(vand_vi, "vand.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
491 -OP(vor_vv, "vor.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
492 -OP(vor_vx, "vor.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
493 -OP(vor_vi, "vor.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
494 -OP(vxor_vv, "vxor.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
495 -OP(vxor_vx, "vxor.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
496 -OP(vxor_vi, "vxor.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
497 -OP(vsll_vv, "vsll.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
498 -OP(vsll_vx, "vsll.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
499 -OP(vsll_vi, "vsll.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
500 -OP(vsrl_vv, "vsrl.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
501 -OP(vsrl_vx, "vsrl.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
502 -OP(vsrl_vi, "vsrl.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
503 -OP(vsra_vv, "vsra.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
504 -OP(vsra_vx, "vsra.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
505 -OP(vsra_vi, "vsra.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
506 -OP(vnsrl_wv, "vnsrl.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
507 -OP(vnsrl_wx, "vnsrl.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
508 -OP(vnsrl_wi, "vnsrl.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
509 -OP(vnsra_wv, "vnsra.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
510 -OP(vnsra_wx, "vnsra.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
511 -OP(vnsra_wi, "vnsra.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
512 -OP(vmseq_vv, "vmseq.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
513 -OP(vmseq_vx, "vmseq.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
514 -OP(vmseq_vi, "vmseq.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
515 -OP(vmsne_vv, "vmsne.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
516 -OP(vmsne_vx, "vmsne.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
517 -OP(vmsne_vi, "vmsne.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
518 -OP(vmsltu_vv, "vmsltu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
519 -OP(vmsltu_vx, "vmsltu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
520 -OP(vmslt_vv, "vmslt.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
521 -OP(vmslt_vx, "vmslt.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
522 -OP(vmsleu_vv, "vmsleu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
523 -OP(vmsleu_vx, "vmsleu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
524 -OP(vmsleu_vi, "vmsleu.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
525 -OP(vmsle_vv, "vmsle.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
526 -OP(vmsle_vx, "vmsle.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
527 -OP(vmsle_vi, "vmsle.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
528 -OP(vmsgtu_vx, "vmsgtu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
529 -OP(vmsgtu_vi, "vmsgtu.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
530 -OP(vmsgt_vx, "vmsgt.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
531 -OP(vmsgt_vi, "vmsgt.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
532 -OP(vminu_vv, "vminu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
533 -OP(vminu_vx, "vminu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
534 -OP(vmin_vv, "vmin.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
535 -OP(vmin_vx, "vmin.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
536 -OP(vmaxu_vv, "vmaxu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
537 -OP(vmaxu_vx, "vmaxu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
538 -OP(vmax_vv, "vmax.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
539 -OP(vmax_vx, "vmax.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
540 -OP(vmul_vv, "vmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
541 -OP(vmul_vx, "vmul.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
542 -OP(vmulh_vv, "vmulh.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
543 -OP(vmulh_vx, "vmulh.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
544 -OP(vmulhu_vv, "vmulhu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
545 -OP(vmulhu_vx, "vmulhu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
546 -OP(vmulhsu_vv, "vmulhsu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
547 -OP(vmulhsu_vx, "vmulhsu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
548 -OP(vdivu_vv, "vdivu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
549 -OP(vdivu_vx, "vdivu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
550 -OP(vdiv_vv, "vdiv.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
551 -OP(vdiv_vx, "vdiv.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
552 -OP(vremu_vv, "vremu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
553 -OP(vremu_vx, "vremu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
554 -OP(vrem_vv, "vrem.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
555 -OP(vrem_vx, "vrem.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
556 -OP(vwmulu_vv, "vwmulu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
557 -OP(vwmulu_vx, "vwmulu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
558 -OP(vwmulsu_vv, "vwmulsu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
559 -OP(vwmulsu_vx, "vwmulsu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
560 -OP(vwmul_vv, "vwmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
561 -OP(vwmul_vx, "vwmul.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
562 -OP(vmacc_vv, "vmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
563 -OP(vmacc_vx, "vmacc.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
564 -OP(vnmsac_vv, "vnmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
565 -OP(vnmsac_vx, "vnmsac.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
566 -OP(vmadd_vv, "vmadd.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
567 -OP(vmadd_vx, "vmadd.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
568 -OP(vnmsub_vv, "vnmsub.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
569 -OP(vnmsub_vx, "vnmsub.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
570 -OP(vwmaccu_vv, "vwmaccu.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
571 -OP(vwmaccu_vx, "vwmaccu.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
572 -OP(vwmacc_vv, "vwmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
573 -OP(vwmacc_vx, "vwmacc.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
574 -OP(vwmaccsu_vv, "vwmaccsu.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
575 -OP(vwmaccsu_vx, "vwmaccsu.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
576 -OP(vwmaccus_vx, "vwmaccus.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
577 -OP(vmv_v_v, "vmv.v.v", rv_codec_v_r, rv_fmt_vd_vs1)
578 -OP(vmv_v_x, "vmv.v.x", rv_codec_v_r, rv_fmt_vd_rs1)
579 -OP(vmv_v_i, "vmv.v.i", rv_codec_v_i, rv_fmt_vd_imm)
580 -OP(vmerge_vvm, "vmerge.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
581 -OP(vmerge_vxm, "vmerge.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
582 -OP(vmerge_vim, "vmerge.vim", rv_codec_v_i, rv_fmt_vd_vs2_imm_vl)
583 -OP(vsaddu_vv, "vsaddu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
584 -OP(vsaddu_vx, "vsaddu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
585 -OP(vsaddu_vi, "vsaddu.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
586 -OP(vsadd_vv, "vsadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
587 -OP(vsadd_vx, "vsadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
588 -OP(vsadd_vi, "vsadd.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
589 -OP(vssubu_vv, "vssubu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
590 -OP(vssubu_vx, "vssubu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
591 -OP(vssub_vv, "vssub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
592 -OP(vssub_vx, "vssub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
593 -OP(vaadd_vv, "vaadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
594 -OP(vaadd_vx, "vaadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
595 -OP(vaaddu_vv, "vaaddu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
596 -OP(vaaddu_vx, "vaaddu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
597 -OP(vasub_vv, "vasub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
598 -OP(vasub_vx, "vasub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
599 -OP(vasubu_vv, "vasubu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
600 -OP(vasubu_vx, "vasubu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
601 -OP(vsmul_vv, "vsmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
602 -OP(vsmul_vx, "vsmul.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
603 -OP(vssrl_vv, "vssrl.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
604 -OP(vssrl_vx, "vssrl.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
605 -OP(vssrl_vi, "vssrl.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
606 -OP(vssra_vv, "vssra.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
607 -OP(vssra_vx, "vssra.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
608 -OP(vssra_vi, "vssra.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
609 -OP(vnclipu_wv, "vnclipu.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
610 -OP(vnclipu_wx, "vnclipu.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
611 -OP(vnclipu_wi, "vnclipu.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
612 -OP(vnclip_wv, "vnclip.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
613 -OP(vnclip_wx, "vnclip.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
614 -OP(vnclip_wi, "vnclip.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
615 -OP(vfadd_vv, "vfadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
616 -OP(vfadd_vf, "vfadd.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
617 -OP(vfsub_vv, "vfsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
618 -OP(vfsub_vf, "vfsub.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
619 -OP(vfrsub_vf, "vfrsub.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
620 -OP(vfwadd_vv, "vfwadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
621 -OP(vfwadd_vf, "vfwadd.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
622 -OP(vfwadd_wv, "vfwadd.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
623 -OP(vfwadd_wf, "vfwadd.wf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
624 -OP(vfwsub_vv, "vfwsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
625 -OP(vfwsub_vf, "vfwsub.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
626 -OP(vfwsub_wv, "vfwsub.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
627 -OP(vfwsub_wf, "vfwsub.wf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
628 -OP(vfmul_vv, "vfmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
629 -OP(vfmul_vf, "vfmul.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
630 -OP(vfdiv_vv, "vfdiv.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
631 -OP(vfdiv_vf, "vfdiv.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
632 -OP(vfrdiv_vf, "vfrdiv.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
633 -OP(vfwmul_vv, "vfwmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
634 -OP(vfwmul_vf, "vfwmul.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
635 -OP(vfmacc_vv, "vfmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
636 -OP(vfmacc_vf, "vfmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
637 -OP(vfnmacc_vv, "vfnmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
638 -OP(vfnmacc_vf, "vfnmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
639 -OP(vfmsac_vv, "vfmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
640 -OP(vfmsac_vf, "vfmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
641 -OP(vfnmsac_vv, "vfnmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
642 -OP(vfnmsac_vf, "vfnmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
643 -OP(vfmadd_vv, "vfmadd.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
644 -OP(vfmadd_vf, "vfmadd.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
645 -OP(vfnmadd_vv, "vfnmadd.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
646 -OP(vfnmadd_vf, "vfnmadd.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
647 -OP(vfmsub_vv, "vfmsub.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
648 -OP(vfmsub_vf, "vfmsub.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
649 -OP(vfnmsub_vv, "vfnmsub.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
650 -OP(vfnmsub_vf, "vfnmsub.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
651 -OP(vfwmacc_vv, "vfwmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
652 -OP(vfwmacc_vf, "vfwmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
653 -OP(vfwnmacc_vv, "vfwnmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
654 -OP(vfwnmacc_vf, "vfwnmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
655 -OP(vfwmsac_vv, "vfwmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
656 -OP(vfwmsac_vf, "vfwmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
657 -OP(vfwnmsac_vv, "vfwnmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
658 -OP(vfwnmsac_vf, "vfwnmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
659 -OP(vfsqrt_v, "vfsqrt.v", rv_codec_v_r, rv_fmt_vd_vs2)
660 -OP(vfrsqrt7_v, "vfrsqrt7.v", rv_codec_v_r, rv_fmt_vd_vs2)
661 -OP(vfrec7_v, "vfrec7.v", rv_codec_v_r, rv_fmt_vd_vs2)
662 -OP(vfmin_vv, "vfmin.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
663 -OP(vfmin_vf, "vfmin.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
664 -OP(vfmax_vv, "vfmax.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
665 -OP(vfmax_vf, "vfmax.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
666 -OP(vfsgnj_vv, "vfsgnj.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
667 -OP(vfsgnj_vf, "vfsgnj.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
668 -OP(vfsgnjn_vv, "vfsgnjn.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
669 -OP(vfsgnjn_vf, "vfsgnjn.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
670 -OP(vfsgnjx_vv, "vfsgnjx.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
671 -OP(vfsgnjx_vf, "vfsgnjx.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
672 -OP(vfslide1up_vf, "vfslide1up.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
673 -OP(vfslide1down_vf, "vfslide1down.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
674 -OP(vmfeq_vv, "vmfeq.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
675 -OP(vmfeq_vf, "vmfeq.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
676 -OP(vmfne_vv, "vmfne.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
677 -OP(vmfne_vf, "vmfne.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
678 -OP(vmflt_vv, "vmflt.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
679 -OP(vmflt_vf, "vmflt.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
680 -OP(vmfle_vv, "vmfle.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
681 -OP(vmfle_vf, "vmfle.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
682 -OP(vmfgt_vf, "vmfgt.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
683 -OP(vmfge_vf, "vmfge.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
684 -OP(vfclass_v, "vfclass.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
685 -OP(vfmerge_vfm, "vfmerge.vfm", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vl)
686 -OP(vfmv_v_f, "vfmv.v.f", rv_codec_v_r, rv_fmt_vd_fs1)
687 -OP(vfcvt_xu_f_v, "vfcvt.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
688 -OP(vfcvt_x_f_v, "vfcvt.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
689 -OP(vfcvt_f_xu_v, "vfcvt.f.xu.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
690 -OP(vfcvt_f_x_v, "vfcvt.f.x.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
691 -OP(vfcvt_rtz_xu_f_v, "vfcvt.rtz.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
692 -OP(vfcvt_rtz_x_f_v, "vfcvt.rtz.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
693 -OP(vfwcvt_xu_f_v, "vfwcvt.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
694 -OP(vfwcvt_x_f_v, "vfwcvt.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
695 -OP(vfwcvt_f_xu_v, "vfwcvt.f.xu.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
696 -OP(vfwcvt_f_x_v, "vfwcvt.f.x.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
697 -OP(vfwcvt_f_f_v, "vfwcvt.f.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
698 -OP(vfwcvt_rtz_xu_f_v, "vfwcvt.rtz.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
699 -OP(vfwcvt_rtz_x_f_v, "vfwcvt.rtz.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
700 -OP(vfncvt_xu_f_w, "vfncvt.xu.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
701 -OP(vfncvt_x_f_w, "vfncvt.x.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
702 -OP(vfncvt_f_xu_w, "vfncvt.f.xu.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
703 -OP(vfncvt_f_x_w, "vfncvt.f.x.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
704 -OP(vfncvt_f_f_w, "vfncvt.f.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
705 -OP(vfncvt_rod_f_f_w, "vfncvt.rod.f.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
706 -OP(vfncvt_rtz_xu_f_w, "vfncvt.rtz.xu.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
707 -OP(vfncvt_rtz_x_f_w, "vfncvt.rtz.x.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
708 -OP(vredsum_vs, "vredsum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
709 -OP(vredand_vs, "vredand.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
710 -OP(vredor_vs, "vredor.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
711 -OP(vredxor_vs, "vredxor.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
712 -OP(vredminu_vs, "vredminu.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
713 -OP(vredmin_vs, "vredmin.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
714 -OP(vredmaxu_vs, "vredmaxu.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
715 -OP(vredmax_vs, "vredmax.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
716 -OP(vwredsumu_vs, "vwredsumu.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
717 -OP(vwredsum_vs, "vwredsum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
718 -OP(vfredusum_vs, "vfredusum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
719 -OP(vfredosum_vs, "vfredosum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
720 -OP(vfredmin_vs, "vfredmin.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
721 -OP(vfredmax_vs, "vfredmax.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
722 -OP(vfwredusum_vs, "vfwredusum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
723 -OP(vfwredosum_vs, "vfwredosum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
724 -OP(vmand_mm, "vmand.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
725 -OP(vmnand_mm, "vmnand.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
726 -OP(vmandn_mm, "vmandn.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
727 -OP(vmxor_mm, "vmxor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
728 -OP(vmor_mm, "vmor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
729 -OP(vmnor_mm, "vmnor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
730 -OP(vmorn_mm, "vmorn.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
731 -OP(vmxnor_mm, "vmxnor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
732 -OP(vcpop_m, "vcpop.m", rv_codec_v_r, rv_fmt_rd_vs2_vm)
733 -OP(vfirst_m, "vfirst.m", rv_codec_v_r, rv_fmt_rd_vs2_vm)
734 -OP(vmsbf_m, "vmsbf.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
735 -OP(vmsif_m, "vmsif.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
736 -OP(vmsof_m, "vmsof.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
737 -OP(viota_m, "viota.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
738 -OP(vid_v, "vid.v", rv_codec_v_r, rv_fmt_vd_vm)
739 -OP(vmv_x_s, "vmv.x.s", rv_codec_v_r, rv_fmt_rd_vs2)
740 -OP(vmv_s_x, "vmv.s.x", rv_codec_v_r, rv_fmt_vd_rs1)
741 -OP(vfmv_f_s, "vfmv.f.s", rv_codec_v_r, rv_fmt_fd_vs2)
742 -OP(vfmv_s_f, "vfmv.s.f", rv_codec_v_r, rv_fmt_vd_fs1)
743 -OP(vslideup_vx, "vslideup.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
744 -OP(vslideup_vi, "vslideup.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
745 -OP(vslide1up_vx, "vslide1up.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
746 -OP(vslidedown_vx, "vslidedown.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
747 -OP(vslidedown_vi, "vslidedown.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
748 -OP(vslide1down_vx, "vslide1down.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
749 -OP(vrgather_vv, "vrgather.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
750 -OP(vrgatherei16_vv, "vrgatherei16.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
751 -OP(vrgather_vx, "vrgather.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
752 -OP(vrgather_vi, "vrgather.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
753 -OP(vcompress_vm, "vcompress.vm", rv_codec_v_r, rv_fmt_vd_vs2_vs1)
754 -OP(vmv1r_v, "vmv1r.v", rv_codec_v_r, rv_fmt_vd_vs2)
755 -OP(vmv2r_v, "vmv2r.v", rv_codec_v_r, rv_fmt_vd_vs2)
756 -OP(vmv4r_v, "vmv4r.v", rv_codec_v_r, rv_fmt_vd_vs2)
757 -OP(vmv8r_v, "vmv8r.v", rv_codec_v_r, rv_fmt_vd_vs2)
758 -OP(vzext_vf2, "vzext.vf2", rv_codec_v_r, rv_fmt_vd_vs2_vm)
759 -OP(vzext_vf4, "vzext.vf4", rv_codec_v_r, rv_fmt_vd_vs2_vm)
760 -OP(vzext_vf8, "vzext.vf8", rv_codec_v_r, rv_fmt_vd_vs2_vm)
761 -OP(vsext_vf2, "vsext.vf2", rv_codec_v_r, rv_fmt_vd_vs2_vm)
762 -OP(vsext_vf4, "vsext.vf4", rv_codec_v_r, rv_fmt_vd_vs2_vm)
763 -OP(vsext_vf8, "vsext.vf8", rv_codec_v_r, rv_fmt_vd_vs2_vm)
764 -OP(vsetvli, "vsetvli", rv_codec_vsetvli, rv_fmt_vsetvli)
765 -OP(vsetivli, "vsetivli", rv_codec_vsetivli, rv_fmt_vsetivli)
766 -OP(vsetvl, "vsetvl", rv_codec_r, rv_fmt_rd_rs1_rs2)
767 -OP(c_zext_b, "c.zext.b", rv_codec_zcb_ext, rv_fmt_rd)
768 -OP(c_sext_b, "c.sext.b", rv_codec_zcb_ext, rv_fmt_rd)
769 -OP(c_zext_h, "c.zext.h", rv_codec_zcb_ext, rv_fmt_rd)
770 -OP(c_sext_h, "c.sext.h", rv_codec_zcb_ext, rv_fmt_rd)
771 -OP(c_zext_w, "c.zext.w", rv_codec_zcb_ext, rv_fmt_rd)
772 -OP(c_not, "c.not", rv_codec_zcb_ext, rv_fmt_rd)
773 -OP(c_mul, "c.mul", rv_codec_zcb_mul, rv_fmt_rd_rs2)
774 -OP(c_lbu, "c.lbu", rv_codec_zcb_lb, rv_fmt_rs1_rs2_zce_ldst)
775 -OP(c_lhu, "c.lhu", rv_codec_zcb_lh, rv_fmt_rs1_rs2_zce_ldst)
776 -OP(c_lh, "c.lh", rv_codec_zcb_lh, rv_fmt_rs1_rs2_zce_ldst)
777 -OP(c_sb, "c.sb", rv_codec_zcb_lb, rv_fmt_rs1_rs2_zce_ldst)
778 -OP(c_sh, "c.sh", rv_codec_zcb_lh, rv_fmt_rs1_rs2_zce_ldst)
779 -OP(cm_push, "cm.push", rv_codec_zcmp_cm_pushpop, rv_fmt_push_rlist)
780 -OP(cm_pop, "cm.pop", rv_codec_zcmp_cm_pushpop, rv_fmt_pop_rlist)
781 -OP(cm_popret, "cm.popret", rv_codec_zcmp_cm_pushpop, rv_fmt_pop_rlist)
782 -OP(cm_popretz, "cm.popretz", rv_codec_zcmp_cm_pushpop, rv_fmt_pop_rlist)
783 -OP(cm_mva01s, "cm.mva01s", rv_codec_zcmp_cm_mv, rv_fmt_rd_rs2)
784 -OP(cm_mvsa01, "cm.mvsa01", rv_codec_zcmp_cm_mv, rv_fmt_rd_rs2)
785 -OP(cm_jt, "cm.jt", rv_codec_zcmt_jt, rv_fmt_zcmt_index)
786 -OP(cm_jalt, "cm.jalt", rv_codec_zcmt_jt, rv_fmt_zcmt_index)
173 +OP(csrrc, "csrrc", rv_codec_i_csr, rv_fmt_rd_csr_rs1)
174 +OP(csrrci, "csrrci", rv_codec_i_csr, rv_fmt_rd_csr_zimm)
175 +OP(csrrs, "csrrs", rv_codec_i_csr, rv_fmt_rd_csr_rs1)
176 +OP(csrrsi, "csrrsi", rv_codec_i_csr, rv_fmt_rd_csr_zimm)
177 +OP(csrrw, "csrrw", rv_codec_i_csr, rv_fmt_rd_csr_rs1)
178 +OP(csrrwi, "csrrwi", rv_codec_i_csr, rv_fmt_rd_csr_zimm)
179 +OP(ctz, "ctz", rv_codec_r, rv_fmt_rd_rs1)
180 +OP(ctzw, "ctzw", rv_codec_r, rv_fmt_rd_rs1)
181 OP(czero_eqz, "czero.eqz", rv_codec_r, rv_fmt_rd_rs1_rs2)
182 OP(czero_nez, "czero.nez", rv_codec_r, rv_fmt_rd_rs1_rs2)
183 +OP(div, "div", rv_codec_r, rv_fmt_rd_rs1_rs2)
184 +OP(divd, "divd", rv_codec_r, rv_fmt_rd_rs1_rs2)
185 +OP(divu, "divu", rv_codec_r, rv_fmt_rd_rs1_rs2)
186 +OP(divud, "divud", rv_codec_r, rv_fmt_rd_rs1_rs2)
187 +OP(divuw, "divuw", rv_codec_r, rv_fmt_rd_rs1_rs2)
188 +OP(divw, "divw", rv_codec_r, rv_fmt_rd_rs1_rs2)
189 +OP(dret, "dret", rv_codec_none, rv_fmt_none)
190 +OP(ebreak, "ebreak", rv_codec_none, rv_fmt_none)
191 +OP(ecall, "ecall", rv_codec_none, rv_fmt_none)
192 +OP(fabs_d, "fabs.d", rv_codec_illegal, rv_fmt_frd_frs1)
193 +OP(fabs_q, "fabs.q", rv_codec_illegal, rv_fmt_frd_frs1)
194 +OP(fabs_s, "fabs.s", rv_codec_illegal, rv_fmt_frd_frs1)
195 +OP(fadd_d, "fadd.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
196 +OP(fadd_q, "fadd.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
197 +OP(fadd_s, "fadd.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
198 +OP(fclass_d, "fclass.d", rv_codec_r, rv_fmt_rd_frs1)
199 +OP(fclass_q, "fclass.q", rv_codec_r, rv_fmt_rd_frs1)
200 +OP(fclass_s, "fclass.s", rv_codec_r, rv_fmt_rd_frs1)
201 OP(fcvt_bf16_s, "fcvt.bf16.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
202 +OP(fcvt_d_l, "fcvt.d.l", rv_codec_r_m, rv_fmt_rm_frd_rs1)
203 +OP(fcvt_d_lu, "fcvt.d.lu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
204 +OP(fcvt_d_q, "fcvt.d.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
205 +OP(fcvt_d_s, "fcvt.d.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
206 +OP(fcvt_d_w, "fcvt.d.w", rv_codec_r_m, rv_fmt_rm_frd_rs1)
207 +OP(fcvt_d_wu, "fcvt.d.wu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
208 +OP(fcvt_l_d, "fcvt.l.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
209 +OP(fcvt_l_q, "fcvt.l.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
210 +OP(fcvt_l_s, "fcvt.l.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
211 +OP(fcvt_lu_d, "fcvt.lu.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
212 +OP(fcvt_lu_q, "fcvt.lu.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
213 +OP(fcvt_lu_s, "fcvt.lu.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
214 +OP(fcvt_q_d, "fcvt.q.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
215 +OP(fcvt_q_l, "fcvt.q.l", rv_codec_r_m, rv_fmt_rm_frd_rs1)
216 +OP(fcvt_q_lu, "fcvt.q.lu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
217 +OP(fcvt_q_s, "fcvt.q.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
218 +OP(fcvt_q_w, "fcvt.q.w", rv_codec_r_m, rv_fmt_rm_frd_rs1)
219 +OP(fcvt_q_wu, "fcvt.q.wu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
220 OP(fcvt_s_bf16, "fcvt.s.bf16", rv_codec_r_m, rv_fmt_rm_frd_frs1)
791 -OP(vfncvtbf16_f_f_w, "vfncvtbf16.f.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
792 -OP(vfwcvtbf16_f_f_v, "vfwcvtbf16.f.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
793 -OP(vfwmaccbf16_vv, "vfwmaccbf16.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
794 -OP(vfwmaccbf16_vf, "vfwmaccbf16.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
221 +OP(fcvt_s_d, "fcvt.s.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
222 +OP(fcvt_s_l, "fcvt.s.l", rv_codec_r_m, rv_fmt_rm_frd_rs1)
223 +OP(fcvt_s_lu, "fcvt.s.lu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
224 +OP(fcvt_s_q, "fcvt.s.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
225 +OP(fcvt_s_w, "fcvt.s.w", rv_codec_r_m, rv_fmt_rm_frd_rs1)
226 +OP(fcvt_s_wu, "fcvt.s.wu", rv_codec_r_m, rv_fmt_rm_frd_rs1)
227 +OP(fcvt_w_d, "fcvt.w.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
228 +OP(fcvt_w_q, "fcvt.w.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
229 +OP(fcvt_w_s, "fcvt.w.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
230 +OP(fcvt_wu_d, "fcvt.wu.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
231 +OP(fcvt_wu_q, "fcvt.wu.q", rv_codec_r_m, rv_fmt_rm_rd_frs1)
232 +OP(fcvt_wu_s, "fcvt.wu.s", rv_codec_r_m, rv_fmt_rm_rd_frs1)
233 +OP(fcvtmod_w_d, "fcvtmod.w.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
234 +OP(fdiv_d, "fdiv.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
235 +OP(fdiv_q, "fdiv.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
236 +OP(fdiv_s, "fdiv.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
237 +OP(fence, "fence", rv_codec_r_f, rv_fmt_pred_succ)
238 +OP(fence_i, "fence.i", rv_codec_none, rv_fmt_none)
239 +OP(feq_d, "feq.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
240 +OP(feq_q, "feq.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
241 +OP(feq_s, "feq.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
242 +OP(fld, "fld", rv_codec_i, rv_fmt_frd_offset_rs1)
243 +OP(fle_d, "fle.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
244 +OP(fle_q, "fle.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
245 +OP(fle_s, "fle.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
246 +OP(fleq_d, "fleq.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
247 +OP(fleq_h, "fleq.h", rv_codec_r, rv_fmt_rd_frs1_frs2)
248 +OP(fleq_q, "fleq.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
249 +OP(fleq_s, "fleq.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
250 OP(flh, "flh", rv_codec_i, rv_fmt_frd_offset_rs1)
796 -OP(fsh, "fsh", rv_codec_s, rv_fmt_frs2_offset_rs1)
797 -OP(fmv_h_x, "fmv.h.x", rv_codec_r, rv_fmt_frd_rs1)
798 -OP(fmv_x_h, "fmv.x.h", rv_codec_r, rv_fmt_rd_frs1)
799 -OP(fli_s, "fli.s", rv_codec_fli, rv_fmt_fli)
251 OP(fli_d, "fli.d", rv_codec_fli, rv_fmt_fli)
801 -OP(fli_q, "fli.q", rv_codec_fli, rv_fmt_fli)
252 OP(fli_h, "fli.h", rv_codec_fli, rv_fmt_fli)
803 -OP(fminm_s, "fminm.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
804 -OP(fmaxm_s, "fmaxm.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
805 -OP(fminm_d, "fminm.d", rv_codec_r, rv_fmt_frd_frs1_frs2)
253 +OP(fli_q, "fli.q", rv_codec_fli, rv_fmt_fli)
254 +OP(fli_s, "fli.s", rv_codec_fli, rv_fmt_fli)
255 +OP(flq, "flq", rv_codec_i, rv_fmt_frd_offset_rs1)
256 +OP(flt_d, "flt.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
257 +OP(flt_q, "flt.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
258 +OP(flt_s, "flt.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
259 +OP(fltq_d, "fltq.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
260 +OP(fltq_h, "fltq.h", rv_codec_r, rv_fmt_rd_frs1_frs2)
261 +OP(fltq_q, "fltq.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
262 +OP(fltq_s, "fltq.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
263 +OP(flw, "flw", rv_codec_i, rv_fmt_frd_offset_rs1)
264 +OP(fmadd_d, "fmadd.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
265 +OP(fmadd_q, "fmadd.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
266 +OP(fmadd_s, "fmadd.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
267 +OP(fmax_d, "fmax.d", rv_codec_r, rv_fmt_frd_frs1_frs2)
268 +OP(fmax_q, "fmax.q", rv_codec_r, rv_fmt_frd_frs1_frs2)
269 +OP(fmax_s, "fmax.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
270 OP(fmaxm_d, "fmaxm.d", rv_codec_r, rv_fmt_frd_frs1_frs2)
807 -OP(fminm_q, "fminm.q", rv_codec_r, rv_fmt_frd_frs1_frs2)
271 +OP(fmaxm_h, "fmaxm.h", rv_codec_r, rv_fmt_frd_frs1_frs2)
272 OP(fmaxm_q, "fmaxm.q", rv_codec_r, rv_fmt_frd_frs1_frs2)
273 +OP(fmaxm_s, "fmaxm.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
274 +OP(fmin_d, "fmin.d", rv_codec_r, rv_fmt_frd_frs1_frs2)
275 +OP(fmin_q, "fmin.q", rv_codec_r, rv_fmt_frd_frs1_frs2)
276 +OP(fmin_s, "fmin.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
277 +OP(fminm_d, "fminm.d", rv_codec_r, rv_fmt_frd_frs1_frs2)
278 OP(fminm_h, "fminm.h", rv_codec_r, rv_fmt_frd_frs1_frs2)
810 -OP(fmaxm_h, "fmaxm.h", rv_codec_r, rv_fmt_frd_frs1_frs2)
811 -OP(fround_s, "fround.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
812 -OP(froundnx_s, "froundnx.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
813 -OP(fround_d, "fround.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
814 -OP(froundnx_d, "froundnx.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
815 -OP(fround_q, "fround.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
816 -OP(froundnx_q, "froundnx.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
817 -OP(fround_h, "fround.h", rv_codec_r_m, rv_fmt_rm_frd_frs1)
818 -OP(froundnx_h, "froundnx.h", rv_codec_r_m, rv_fmt_rm_frd_frs1)
819 -OP(fcvtmod_w_d, "fcvtmod.w.d", rv_codec_r_m, rv_fmt_rm_rd_frs1)
279 +OP(fminm_q, "fminm.q", rv_codec_r, rv_fmt_frd_frs1_frs2)
280 +OP(fminm_s, "fminm.s", rv_codec_r, rv_fmt_frd_frs1_frs2)
281 +OP(fmsub_d, "fmsub.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
282 +OP(fmsub_q, "fmsub.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
283 +OP(fmsub_s, "fmsub.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
284 +OP(fmul_d, "fmul.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
285 +OP(fmul_q, "fmul.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
286 +OP(fmul_s, "fmul.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
287 +OP(fmv_d, "fmv.d", rv_codec_illegal, rv_fmt_frd_frs1)
288 +OP(fmv_d_x, "fmv.d.x", rv_codec_r, rv_fmt_frd_rs1)
289 +OP(fmv_h_x, "fmv.h.x", rv_codec_r, rv_fmt_frd_rs1)
290 +OP(fmv_q, "fmv.q", rv_codec_illegal, rv_fmt_frd_frs1)
291 +OP(fmv_q_x, "fmv.q.x", rv_codec_r, rv_fmt_frd_rs1)
292 +OP(fmv_s, "fmv.s", rv_codec_illegal, rv_fmt_frd_frs1)
293 +OP(fmv_s_x, "fmv.s.x", rv_codec_r, rv_fmt_frd_rs1)
294 +OP(fmv_x_d, "fmv.x.d", rv_codec_r, rv_fmt_rd_frs1)
295 +OP(fmv_x_h, "fmv.x.h", rv_codec_r, rv_fmt_rd_frs1)
296 +OP(fmv_x_q, "fmv.x.q", rv_codec_r, rv_fmt_rd_frs1)
297 +OP(fmv_x_s, "fmv.x.s", rv_codec_r, rv_fmt_rd_frs1)
298 OP(fmvh_x_d, "fmvh.x.d", rv_codec_r, rv_fmt_rd_frs1)
821 -OP(fmvp_d_x, "fmvp.d.x", rv_codec_r, rv_fmt_frd_rs1_rs2)
299 OP(fmvh_x_q, "fmvh.x.q", rv_codec_r, rv_fmt_rd_frs1)
300 +OP(fmvp_d_x, "fmvp.d.x", rv_codec_r, rv_fmt_frd_rs1_rs2)
301 OP(fmvp_q_x, "fmvp.q.x", rv_codec_r, rv_fmt_frd_rs1_rs2)
824 -OP(fleq_s, "fleq.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
825 -OP(fltq_s, "fltq.s", rv_codec_r, rv_fmt_rd_frs1_frs2)
826 -OP(fleq_d, "fleq.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
827 -OP(fltq_d, "fltq.d", rv_codec_r, rv_fmt_rd_frs1_frs2)
828 -OP(fleq_q, "fleq.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
829 -OP(fltq_q, "fltq.q", rv_codec_r, rv_fmt_rd_frs1_frs2)
830 -OP(fleq_h, "fleq.h", rv_codec_r, rv_fmt_rd_frs1_frs2)
831 -OP(fltq_h, "fltq.h", rv_codec_r, rv_fmt_rd_frs1_frs2)
832 -OP(vaesdf_vv, "vaesdf.vv", rv_codec_v_r, rv_fmt_vd_vs2)
302 +OP(fneg_d, "fneg.d", rv_codec_illegal, rv_fmt_frd_frs1)
303 +OP(fneg_q, "fneg.q", rv_codec_illegal, rv_fmt_frd_frs1)
304 +OP(fneg_s, "fneg.s", rv_codec_illegal, rv_fmt_frd_frs1)
305 +OP(fnmadd_d, "fnmadd.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
306 +OP(fnmadd_q, "fnmadd.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
307 +OP(fnmadd_s, "fnmadd.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
308 +OP(fnmsub_d, "fnmsub.d", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
309 +OP(fnmsub_q, "fnmsub.q", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
310 +OP(fnmsub_s, "fnmsub.s", rv_codec_r4_m, rv_fmt_rm_frd_frs1_frs2_frs3)
311 +OP(frcsr, "frcsr", rv_codec_i_csr, rv_fmt_rd)
312 +OP(frflags, "frflags", rv_codec_i_csr, rv_fmt_rd)
313 +OP(fround_d, "fround.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
314 +OP(fround_h, "fround.h", rv_codec_r_m, rv_fmt_rm_frd_frs1)
315 +OP(fround_q, "fround.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
316 +OP(fround_s, "fround.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
317 +OP(froundnx_d, "froundnx.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
318 +OP(froundnx_h, "froundnx.h", rv_codec_r_m, rv_fmt_rm_frd_frs1)
319 +OP(froundnx_q, "froundnx.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
320 +OP(froundnx_s, "froundnx.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
321 +OP(frrm, "frrm", rv_codec_i_csr, rv_fmt_rd)
322 +OP(fscsr, "fscsr", rv_codec_i_csr, rv_fmt_rd_rs1)
323 +OP(fsd, "fsd", rv_codec_s, rv_fmt_frs2_offset_rs1)
324 +OP(fsflags, "fsflags", rv_codec_i_csr, rv_fmt_rd_rs1)
325 +OP(fsflagsi, "fsflagsi", rv_codec_i_csr, rv_fmt_rd_zimm)
326 +OP(fsgnj_d, "fsgnj.d", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnj_d)
327 +OP(fsgnj_q, "fsgnj.q", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnj_q)
328 +OP(fsgnj_s, "fsgnj.s", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnj_s)
329 +OP(fsgnjn_d, "fsgnjn.d", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjn_d)
330 +OP(fsgnjn_q, "fsgnjn.q", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjn_q)
331 +OP(fsgnjn_s, "fsgnjn.s", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjn_s)
332 +OP(fsgnjx_d, "fsgnjx.d", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjx_d)
333 +OP(fsgnjx_q, "fsgnjx.q", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjx_q)
334 +OP(fsgnjx_s, "fsgnjx.s", rv_codec_r, rv_fmt_frd_frs1_frs2, rvcp_fsgnjx_s)
335 +OP(fsh, "fsh", rv_codec_s, rv_fmt_frs2_offset_rs1)
336 +OP(fsq, "fsq", rv_codec_s, rv_fmt_frs2_offset_rs1)
337 +OP(fsqrt_d, "fsqrt.d", rv_codec_r_m, rv_fmt_rm_frd_frs1)
338 +OP(fsqrt_q, "fsqrt.q", rv_codec_r_m, rv_fmt_rm_frd_frs1)
339 +OP(fsqrt_s, "fsqrt.s", rv_codec_r_m, rv_fmt_rm_frd_frs1)
340 +OP(fsrm, "fsrm", rv_codec_i_csr, rv_fmt_rd_rs1)
341 +OP(fsrmi, "fsrmi", rv_codec_i_csr, rv_fmt_rd_zimm)
342 +OP(fsub_d, "fsub.d", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
343 +OP(fsub_q, "fsub.q", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
344 +OP(fsub_s, "fsub.s", rv_codec_r_m, rv_fmt_rm_frd_frs1_frs2)
345 +OP(fsw, "fsw", rv_codec_s, rv_fmt_frs2_offset_rs1)
346 +OP(hret, "hret", rv_codec_none, rv_fmt_none)
347 +OP(illegal, "illegal", rv_codec_none, rv_fmt_none)
348 +OP(j, "j", rv_codec_illegal, rv_fmt_offset)
349 +OP(jal, "jal", rv_codec_uj, rv_fmt_rd_offset, rvcp_jal)
350 +OP(jal_ra, "jal", rv_codec_illegal, rv_fmt_offset)
351 +OP(jalr, "jalr", rv_codec_i, rv_fmt_rd_rs1_offset, rvcp_jalr)
352 +OP(jalr_ra, "jalr", rv_codec_illegal, rv_fmt_rs1)
353 +OP(jr, "jr", rv_codec_illegal, rv_fmt_rs1, rvcp_jr)
354 +OP(lb, "lb", rv_codec_i, rv_fmt_rd_offset_rs1)
355 +OP(lbu, "lbu", rv_codec_i, rv_fmt_rd_offset_rs1)
356 +OP(ld, "ld", rv_codec_i, rv_fmt_rd_offset_rs1)
357 +OP(ldu, "ldu", rv_codec_i, rv_fmt_rd_offset_rs1)
358 +OP(lh, "lh", rv_codec_i, rv_fmt_rd_offset_rs1)
359 +OP(lhu, "lhu", rv_codec_i, rv_fmt_rd_offset_rs1)
360 +OP(lpad, "lpad", rv_codec_lp, rv_fmt_imm)
361 +OP(lq, "lq", rv_codec_i, rv_fmt_rd_offset_rs1)
362 +OP(lr_d, "lr.d", rv_codec_r_l, rv_fmt_aqrl_rd_rs1)
363 +OP(lr_q, "lr.q", rv_codec_r_l, rv_fmt_aqrl_rd_rs1)
364 +OP(lr_w, "lr.w", rv_codec_r_l, rv_fmt_aqrl_rd_rs1)
365 +OP(lui, "lui", rv_codec_u, rv_fmt_rd_uimm)
366 +OP(lw, "lw", rv_codec_i, rv_fmt_rd_offset_rs1)
367 +OP(lwu, "lwu", rv_codec_i, rv_fmt_rd_offset_rs1)
368 +OP(max, "max", rv_codec_r, rv_fmt_rd_rs1_rs2)
369 +OP(maxu, "maxu", rv_codec_r, rv_fmt_rd_rs1_rs2)
370 +OP(min, "min", rv_codec_r, rv_fmt_rd_rs1_rs2)
371 +OP(minu, "minu", rv_codec_r, rv_fmt_rd_rs1_rs2)
372 +OP(mnret, "mnret", rv_codec_none, rv_fmt_none)
373 +OP(mop_r, "mop.r", rv_codec_mop_r, rv_fmt_mop_r)
374 +OP(mop_rr, "mop.rr", rv_codec_mop_rr, rv_fmt_mop_rr)
375 +OP(mret, "mret", rv_codec_none, rv_fmt_none)
376 +OP(mul, "mul", rv_codec_r, rv_fmt_rd_rs1_rs2)
377 +OP(muld, "muld", rv_codec_r, rv_fmt_rd_rs1_rs2)
378 +OP(mulh, "mulh", rv_codec_r, rv_fmt_rd_rs1_rs2)
379 +OP(mulhsu, "mulhsu", rv_codec_r, rv_fmt_rd_rs1_rs2)
380 +OP(mulhu, "mulhu", rv_codec_r, rv_fmt_rd_rs1_rs2)
381 +OP(mulw, "mulw", rv_codec_r, rv_fmt_rd_rs1_rs2)
382 +OP(mv, "mv", rv_codec_illegal, rv_fmt_rd_rs1, rvcp_mv)
383 +OP(neg, "neg", rv_codec_illegal, rv_fmt_rd_rs2)
384 +OP(negw, "negw", rv_codec_illegal, rv_fmt_rd_rs2)
385 +OP(nop, "nop", rv_codec_illegal, rv_fmt_none)
386 +OP(not, "not", rv_codec_illegal, rv_fmt_rd_rs1)
387 +OP(or, "or", rv_codec_r, rv_fmt_rd_rs1_rs2)
388 +OP(orc_b, "orc.b", rv_codec_r, rv_fmt_rd_rs1)
389 +OP(ori, "ori", rv_codec_i, rv_fmt_rd_rs1_imm)
390 +OP(orn, "orn", rv_codec_r, rv_fmt_rd_rs1_rs2)
391 +OP(pack, "pack", rv_codec_r, rv_fmt_rd_rs1_rs2)
392 +OP(packh, "packh", rv_codec_r, rv_fmt_rd_rs1_rs2)
393 +OP(packw, "packw", rv_codec_r, rv_fmt_rd_rs1_rs2)
394 +OP(rdcycle, "rdcycle", rv_codec_i_csr, rv_fmt_rd)
395 +OP(rdcycleh, "rdcycleh", rv_codec_i_csr, rv_fmt_rd)
396 +OP(rdinstret, "rdinstret", rv_codec_i_csr, rv_fmt_rd)
397 +OP(rdinstreth, "rdinstreth", rv_codec_i_csr, rv_fmt_rd)
398 +OP(rdtime, "rdtime", rv_codec_i_csr, rv_fmt_rd)
399 +OP(rdtimeh, "rdtimeh", rv_codec_i_csr, rv_fmt_rd)
400 +OP(rem, "rem", rv_codec_r, rv_fmt_rd_rs1_rs2)
401 +OP(remd, "remd", rv_codec_r, rv_fmt_rd_rs1_rs2)
402 +OP(remu, "remu", rv_codec_r, rv_fmt_rd_rs1_rs2)
403 +OP(remud, "remud", rv_codec_r, rv_fmt_rd_rs1_rs2)
404 +OP(remuw, "remuw", rv_codec_r, rv_fmt_rd_rs1_rs2)
405 +OP(remw, "remw", rv_codec_r, rv_fmt_rd_rs1_rs2)
406 +OP(ret, "ret", rv_codec_illegal, rv_fmt_none)
407 +OP(rev8, "rev8", rv_codec_r, rv_fmt_rd_rs1)
408 +OP(rol, "rol", rv_codec_r, rv_fmt_rd_rs1_rs2)
409 +OP(rolw, "rolw", rv_codec_r, rv_fmt_rd_rs1_rs2)
410 +OP(ror, "ror", rv_codec_r, rv_fmt_rd_rs1_rs2)
411 +OP(rori, "rori", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
412 +OP(roriw, "roriw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
413 +OP(rorw, "rorw", rv_codec_r, rv_fmt_rd_rs1_rs2)
414 +OP(sb, "sb", rv_codec_s, rv_fmt_rs2_offset_rs1)
415 +OP(sc_d, "sc.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
416 +OP(sc_q, "sc.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
417 +OP(sc_w, "sc.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
418 +OP(sd, "sd", rv_codec_s, rv_fmt_rs2_offset_rs1)
419 +OP(seqz, "seqz", rv_codec_illegal, rv_fmt_rd_rs1)
420 +OP(sext_b, "sext.b", rv_codec_r, rv_fmt_rd_rs1)
421 +OP(sext_h, "sext.h", rv_codec_r, rv_fmt_rd_rs1)
422 +OP(sext_w, "sext.w", rv_codec_illegal, rv_fmt_rd_rs1)
423 +OP(sfence_vm, "sfence.vm", rv_codec_r, rv_fmt_rs1)
424 +OP(sfence_vma, "sfence.vma", rv_codec_r, rv_fmt_rs1_rs2)
425 +OP(sgtz, "sgtz", rv_codec_illegal, rv_fmt_rd_rs2)
426 +OP(sh, "sh", rv_codec_s, rv_fmt_rs2_offset_rs1)
427 +OP(sh1add, "sh1add", rv_codec_r, rv_fmt_rd_rs1_rs2)
428 +OP(sh1add_uw, "sh1add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
429 +OP(sh2add, "sh2add", rv_codec_r, rv_fmt_rd_rs1_rs2)
430 +OP(sh2add_uw, "sh2add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
431 +OP(sh3add, "sh3add", rv_codec_r, rv_fmt_rd_rs1_rs2)
432 +OP(sh3add_uw, "sh3add.uw", rv_codec_r, rv_fmt_rd_rs1_rs2)
433 +OP(sha256sig0, "sha256sig0", rv_codec_r, rv_fmt_rd_rs1)
434 +OP(sha256sig1, "sha256sig1", rv_codec_r, rv_fmt_rd_rs1)
435 +OP(sha256sum0, "sha256sum0", rv_codec_r, rv_fmt_rd_rs1)
436 +OP(sha256sum1, "sha256sum1", rv_codec_r, rv_fmt_rd_rs1)
437 +OP(sha512sig0, "sha512sig0", rv_codec_r, rv_fmt_rd_rs1_rs2)
438 +OP(sha512sig0h, "sha512sig0h", rv_codec_r, rv_fmt_rd_rs1_rs2)
439 +OP(sha512sig0l, "sha512sig0l", rv_codec_r, rv_fmt_rd_rs1_rs2)
440 +OP(sha512sig1, "sha512sig1", rv_codec_r, rv_fmt_rd_rs1_rs2)
441 +OP(sha512sig1h, "sha512sig1h", rv_codec_r, rv_fmt_rd_rs1_rs2)
442 +OP(sha512sig1l, "sha512sig1l", rv_codec_r, rv_fmt_rd_rs1_rs2)
443 +OP(sha512sum0, "sha512sum0", rv_codec_r, rv_fmt_rd_rs1_rs2)
444 +OP(sha512sum0r, "sha512sum0r", rv_codec_r, rv_fmt_rd_rs1_rs2)
445 +OP(sha512sum1, "sha512sum1", rv_codec_r, rv_fmt_rd_rs1_rs2)
446 +OP(sha512sum1r, "sha512sum1r", rv_codec_r, rv_fmt_rd_rs1_rs2)
447 +OP(sll, "sll", rv_codec_r, rv_fmt_rd_rs1_rs2)
448 +OP(slld, "slld", rv_codec_r, rv_fmt_rd_rs1_rs2)
449 +OP(slli, "slli", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
450 +OP(slli_uw, "slli.uw", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
451 +OP(sllid, "sllid", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
452 +OP(slliw, "slliw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
453 +OP(sllw, "sllw", rv_codec_r, rv_fmt_rd_rs1_rs2)
454 +OP(slt, "slt", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_slt)
455 +OP(slti, "slti", rv_codec_i, rv_fmt_rd_rs1_imm)
456 +OP(sltiu, "sltiu", rv_codec_i, rv_fmt_rd_rs1_imm, rvcp_sltiu)
457 +OP(sltu, "sltu", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_sltu)
458 +OP(sltz, "sltz", rv_codec_illegal, rv_fmt_rd_rs1)
459 +OP(sm3p0, "sm3p0", rv_codec_r, rv_fmt_rd_rs1)
460 +OP(sm3p1, "sm3p1", rv_codec_r, rv_fmt_rd_rs1)
461 +OP(sm4ed, "sm4ed", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
462 +OP(sm4ks, "sm4ks", rv_codec_k_bs, rv_fmt_rs1_rs2_bs)
463 +OP(snez, "snez", rv_codec_illegal, rv_fmt_rd_rs2)
464 +OP(sq, "sq", rv_codec_s, rv_fmt_rs2_offset_rs1)
465 +OP(sra, "sra", rv_codec_r, rv_fmt_rd_rs1_rs2)
466 +OP(srad, "srad", rv_codec_r, rv_fmt_rd_rs1_rs2)
467 +OP(srai, "srai", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
468 +OP(sraid, "sraid", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
469 +OP(sraiw, "sraiw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
470 +OP(sraw, "sraw", rv_codec_r, rv_fmt_rd_rs1_rs2)
471 +OP(sret, "sret", rv_codec_none, rv_fmt_none)
472 +OP(srl, "srl", rv_codec_r, rv_fmt_rd_rs1_rs2)
473 +OP(srld, "srld", rv_codec_r, rv_fmt_rd_rs1_rs2)
474 +OP(srli, "srli", rv_codec_i_sh7, rv_fmt_rd_rs1_imm)
475 +OP(srlid, "srlid", rv_codec_i_sh6, rv_fmt_rd_rs1_imm)
476 +OP(srliw, "srliw", rv_codec_i_sh5, rv_fmt_rd_rs1_imm)
477 +OP(srlw, "srlw", rv_codec_r, rv_fmt_rd_rs1_rs2)
478 +OP(ssamoswap_d, "ssamoswap.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
479 +OP(ssamoswap_w, "ssamoswap.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
480 +OP(sspopchk, "sspopchk", rv_codec_r, rv_fmt_rs1)
481 +OP(sspush, "sspush", rv_codec_r, rv_fmt_rs2)
482 +OP(ssrdp, "ssrdp", rv_codec_r, rv_fmt_rd)
483 +OP(sub, "sub", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_sub)
484 +OP(subd, "subd", rv_codec_r, rv_fmt_rd_rs1_rs2)
485 +OP(subw, "subw", rv_codec_r, rv_fmt_rd_rs1_rs2, rvcp_subw)
486 +OP(sw, "sw", rv_codec_s, rv_fmt_rs2_offset_rs1)
487 +OP(unzip, "unzip", rv_codec_r, rv_fmt_rd_rs1)
488 +OP(uret, "uret", rv_codec_none, rv_fmt_none)
489 +OP(vaadd_vv, "vaadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
490 +OP(vaadd_vx, "vaadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
491 +OP(vaaddu_vv, "vaaddu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
492 +OP(vaaddu_vx, "vaaddu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
493 +OP(vadc_vim, "vadc.vim", rv_codec_v_i, rv_fmt_vd_vs2_imm_vl)
494 +OP(vadc_vvm, "vadc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
495 +OP(vadc_vxm, "vadc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
496 +OP(vadd_vi, "vadd.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
497 +OP(vadd_vv, "vadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
498 +OP(vadd_vx, "vadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
499 OP(vaesdf_vs, "vaesdf.vs", rv_codec_v_r, rv_fmt_vd_vs2)
834 -OP(vaesdm_vv, "vaesdm.vv", rv_codec_v_r, rv_fmt_vd_vs2)
500 +OP(vaesdf_vv, "vaesdf.vv", rv_codec_v_r, rv_fmt_vd_vs2)
501 OP(vaesdm_vs, "vaesdm.vs", rv_codec_v_r, rv_fmt_vd_vs2)
836 -OP(vaesef_vv, "vaesef.vv", rv_codec_v_r, rv_fmt_vd_vs2)
502 +OP(vaesdm_vv, "vaesdm.vv", rv_codec_v_r, rv_fmt_vd_vs2)
503 OP(vaesef_vs, "vaesef.vs", rv_codec_v_r, rv_fmt_vd_vs2)
838 -OP(vaesem_vv, "vaesem.vv", rv_codec_v_r, rv_fmt_vd_vs2)
504 +OP(vaesef_vv, "vaesef.vv", rv_codec_v_r, rv_fmt_vd_vs2)
505 OP(vaesem_vs, "vaesem.vs", rv_codec_v_r, rv_fmt_vd_vs2)
506 +OP(vaesem_vv, "vaesem.vv", rv_codec_v_r, rv_fmt_vd_vs2)
507 OP(vaeskf1_vi, "vaeskf1.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm)
508 OP(vaeskf2_vi, "vaeskf2.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm)
509 OP(vaesz_vs, "vaesz.vs", rv_codec_v_r, rv_fmt_vd_vs2)
510 +OP(vand_vi, "vand.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
511 +OP(vand_vv, "vand.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
512 +OP(vand_vx, "vand.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
513 OP(vandn_vv, "vandn.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
514 OP(vandn_vx, "vandn.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
845 -OP(vbrev_v, "vbrev.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
515 +OP(vasub_vv, "vasub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
516 +OP(vasub_vx, "vasub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
517 +OP(vasubu_vv, "vasubu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
518 +OP(vasubu_vx, "vasubu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
519 OP(vbrev8_v, "vbrev8.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
520 +OP(vbrev_v, "vbrev.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
521 OP(vclmul_vv, "vclmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
522 OP(vclmul_vx, "vclmul.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
523 OP(vclmulh_vv, "vclmulh.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
524 OP(vclmulh_vx, "vclmulh.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
525 OP(vclz_v, "vclz.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
526 +OP(vcompress_vm, "vcompress.vm", rv_codec_v_r, rv_fmt_vd_vs2_vs1)
527 +OP(vcpop_m, "vcpop.m", rv_codec_v_r, rv_fmt_rd_vs2_vm)
528 OP(vcpop_v, "vcpop.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
529 OP(vctz_v, "vctz.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
530 +OP(vdiv_vv, "vdiv.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
531 +OP(vdiv_vx, "vdiv.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
532 +OP(vdivu_vv, "vdivu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
533 +OP(vdivu_vx, "vdivu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
534 +OP(vfadd_vf, "vfadd.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
535 +OP(vfadd_vv, "vfadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
536 +OP(vfclass_v, "vfclass.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
537 +OP(vfcvt_f_x_v, "vfcvt.f.x.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
538 +OP(vfcvt_f_xu_v, "vfcvt.f.xu.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
539 +OP(vfcvt_rtz_x_f_v, "vfcvt.rtz.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
540 +OP(vfcvt_rtz_xu_f_v, "vfcvt.rtz.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
541 +OP(vfcvt_x_f_v, "vfcvt.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
542 +OP(vfcvt_xu_f_v, "vfcvt.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
543 +OP(vfdiv_vf, "vfdiv.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
544 +OP(vfdiv_vv, "vfdiv.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
545 +OP(vfirst_m, "vfirst.m", rv_codec_v_r, rv_fmt_rd_vs2_vm)
546 +OP(vfmacc_vf, "vfmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
547 +OP(vfmacc_vv, "vfmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
548 +OP(vfmadd_vf, "vfmadd.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
549 +OP(vfmadd_vv, "vfmadd.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
550 +OP(vfmax_vf, "vfmax.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
551 +OP(vfmax_vv, "vfmax.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
552 +OP(vfmerge_vfm, "vfmerge.vfm", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vl)
553 +OP(vfmin_vf, "vfmin.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
554 +OP(vfmin_vv, "vfmin.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
555 +OP(vfmsac_vf, "vfmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
556 +OP(vfmsac_vv, "vfmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
557 +OP(vfmsub_vf, "vfmsub.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
558 +OP(vfmsub_vv, "vfmsub.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
559 +OP(vfmul_vf, "vfmul.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
560 +OP(vfmul_vv, "vfmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
561 +OP(vfmv_f_s, "vfmv.f.s", rv_codec_v_r, rv_fmt_fd_vs2)
562 +OP(vfmv_s_f, "vfmv.s.f", rv_codec_v_r, rv_fmt_vd_fs1)
563 +OP(vfmv_v_f, "vfmv.v.f", rv_codec_v_r, rv_fmt_vd_fs1)
564 +OP(vfncvt_f_f_w, "vfncvt.f.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
565 +OP(vfncvt_f_x_w, "vfncvt.f.x.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
566 +OP(vfncvt_f_xu_w, "vfncvt.f.xu.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
567 +OP(vfncvt_rod_f_f_w, "vfncvt.rod.f.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
568 +OP(vfncvt_rtz_x_f_w, "vfncvt.rtz.x.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
569 +OP(vfncvt_rtz_xu_f_w, "vfncvt.rtz.xu.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
570 +OP(vfncvt_x_f_w, "vfncvt.x.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
571 +OP(vfncvt_xu_f_w, "vfncvt.xu.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
572 +OP(vfncvtbf16_f_f_w, "vfncvtbf16.f.f.w", rv_codec_v_r, rv_fmt_vd_vs2_vm)
573 +OP(vfnmacc_vf, "vfnmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
574 +OP(vfnmacc_vv, "vfnmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
575 +OP(vfnmadd_vf, "vfnmadd.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
576 +OP(vfnmadd_vv, "vfnmadd.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
577 +OP(vfnmsac_vf, "vfnmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
578 +OP(vfnmsac_vv, "vfnmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
579 +OP(vfnmsub_vf, "vfnmsub.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
580 +OP(vfnmsub_vv, "vfnmsub.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
581 +OP(vfrdiv_vf, "vfrdiv.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
582 +OP(vfrec7_v, "vfrec7.v", rv_codec_v_r, rv_fmt_vd_vs2)
583 +OP(vfredmax_vs, "vfredmax.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
584 +OP(vfredmin_vs, "vfredmin.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
585 +OP(vfredosum_vs, "vfredosum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
586 +OP(vfredusum_vs, "vfredusum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
587 +OP(vfrsqrt7_v, "vfrsqrt7.v", rv_codec_v_r, rv_fmt_vd_vs2)
588 +OP(vfrsub_vf, "vfrsub.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
589 +OP(vfsgnj_vf, "vfsgnj.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
590 +OP(vfsgnj_vv, "vfsgnj.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
591 +OP(vfsgnjn_vf, "vfsgnjn.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
592 +OP(vfsgnjn_vv, "vfsgnjn.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
593 +OP(vfsgnjx_vf, "vfsgnjx.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
594 +OP(vfsgnjx_vv, "vfsgnjx.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
595 +OP(vfslide1down_vf, "vfslide1down.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
596 +OP(vfslide1up_vf, "vfslide1up.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
597 +OP(vfsqrt_v, "vfsqrt.v", rv_codec_v_r, rv_fmt_vd_vs2)
598 +OP(vfsub_vf, "vfsub.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
599 +OP(vfsub_vv, "vfsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
600 +OP(vfwadd_vf, "vfwadd.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
601 +OP(vfwadd_vv, "vfwadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
602 +OP(vfwadd_wf, "vfwadd.wf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
603 +OP(vfwadd_wv, "vfwadd.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
604 +OP(vfwcvt_f_f_v, "vfwcvt.f.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
605 +OP(vfwcvt_f_x_v, "vfwcvt.f.x.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
606 +OP(vfwcvt_f_xu_v, "vfwcvt.f.xu.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
607 +OP(vfwcvt_rtz_x_f_v, "vfwcvt.rtz.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
608 +OP(vfwcvt_rtz_xu_f_v, "vfwcvt.rtz.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
609 +OP(vfwcvt_x_f_v, "vfwcvt.x.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
610 +OP(vfwcvt_xu_f_v, "vfwcvt.xu.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
611 +OP(vfwcvtbf16_f_f_v, "vfwcvtbf16.f.f.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
612 +OP(vfwmacc_vf, "vfwmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
613 +OP(vfwmacc_vv, "vfwmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
614 +OP(vfwmaccbf16_vf, "vfwmaccbf16.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
615 +OP(vfwmaccbf16_vv, "vfwmaccbf16.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
616 +OP(vfwmsac_vf, "vfwmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
617 +OP(vfwmsac_vv, "vfwmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
618 +OP(vfwmul_vf, "vfwmul.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
619 +OP(vfwmul_vv, "vfwmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
620 +OP(vfwnmacc_vf, "vfwnmacc.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
621 +OP(vfwnmacc_vv, "vfwnmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
622 +OP(vfwnmsac_vf, "vfwnmsac.vf", rv_codec_v_r, rv_fmt_vd_fs1_vs2_vm)
623 +OP(vfwnmsac_vv, "vfwnmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
624 +OP(vfwredosum_vs, "vfwredosum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
625 +OP(vfwredusum_vs, "vfwredusum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
626 +OP(vfwsub_vf, "vfwsub.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
627 +OP(vfwsub_vv, "vfwsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
628 +OP(vfwsub_wf, "vfwsub.wf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
629 +OP(vfwsub_wv, "vfwsub.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
630 OP(vghsh_vv, "vghsh.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1)
631 OP(vgmul_vv, "vgmul.vv", rv_codec_v_r, rv_fmt_vd_vs2)
632 +OP(vid_v, "vid.v", rv_codec_v_r, rv_fmt_vd_vm)
633 +OP(viota_m, "viota.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
634 +OP(vl1re16_v, "vl1re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
635 +OP(vl1re32_v, "vl1re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
636 +OP(vl1re64_v, "vl1re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
637 +OP(vl1re8_v, "vl1re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
638 +OP(vl2re16_v, "vl2re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
639 +OP(vl2re32_v, "vl2re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
640 +OP(vl2re64_v, "vl2re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
641 +OP(vl2re8_v, "vl2re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
642 +OP(vl4re16_v, "vl4re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
643 +OP(vl4re32_v, "vl4re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
644 +OP(vl4re64_v, "vl4re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
645 +OP(vl4re8_v, "vl4re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
646 +OP(vl8re16_v, "vl8re16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
647 +OP(vl8re32_v, "vl8re32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
648 +OP(vl8re64_v, "vl8re64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
649 +OP(vl8re8_v, "vl8re8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
650 +OP(vle16_v, "vle16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
651 +OP(vle16ff_v, "vle16ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
652 +OP(vle32_v, "vle32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
653 +OP(vle32ff_v, "vle32ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
654 +OP(vle64_v, "vle64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
655 +OP(vle64ff_v, "vle64ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
656 +OP(vle8_v, "vle8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
657 +OP(vle8ff_v, "vle8ff.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
658 +OP(vlm_v, "vlm.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
659 +OP(vloxei16_v, "vloxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
660 +OP(vloxei32_v, "vloxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
661 +OP(vloxei64_v, "vloxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
662 +OP(vloxei8_v, "vloxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
663 +OP(vlse16_v, "vlse16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
664 +OP(vlse32_v, "vlse32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
665 +OP(vlse64_v, "vlse64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
666 +OP(vlse8_v, "vlse8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
667 +OP(vluxei16_v, "vluxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
668 +OP(vluxei32_v, "vluxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
669 +OP(vluxei64_v, "vluxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
670 +OP(vluxei8_v, "vluxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
671 +OP(vmacc_vv, "vmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
672 +OP(vmacc_vx, "vmacc.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
673 +OP(vmadc_vim, "vmadc.vim", rv_codec_v_i, rv_fmt_vd_vs2_imm_vl)
674 +OP(vmadc_vvm, "vmadc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
675 +OP(vmadc_vxm, "vmadc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
676 +OP(vmadd_vv, "vmadd.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
677 +OP(vmadd_vx, "vmadd.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
678 +OP(vmand_mm, "vmand.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
679 +OP(vmandn_mm, "vmandn.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
680 +OP(vmax_vv, "vmax.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
681 +OP(vmax_vx, "vmax.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
682 +OP(vmaxu_vv, "vmaxu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
683 +OP(vmaxu_vx, "vmaxu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
684 +OP(vmerge_vim, "vmerge.vim", rv_codec_v_i, rv_fmt_vd_vs2_imm_vl)
685 +OP(vmerge_vvm, "vmerge.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
686 +OP(vmerge_vxm, "vmerge.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
687 +OP(vmfeq_vf, "vmfeq.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
688 +OP(vmfeq_vv, "vmfeq.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
689 +OP(vmfge_vf, "vmfge.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
690 +OP(vmfgt_vf, "vmfgt.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
691 +OP(vmfle_vf, "vmfle.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
692 +OP(vmfle_vv, "vmfle.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
693 +OP(vmflt_vf, "vmflt.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
694 +OP(vmflt_vv, "vmflt.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
695 +OP(vmfne_vf, "vmfne.vf", rv_codec_v_r, rv_fmt_vd_vs2_fs1_vm)
696 +OP(vmfne_vv, "vmfne.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
697 +OP(vmin_vv, "vmin.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
698 +OP(vmin_vx, "vmin.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
699 +OP(vminu_vv, "vminu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
700 +OP(vminu_vx, "vminu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
701 +OP(vmnand_mm, "vmnand.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
702 +OP(vmnor_mm, "vmnor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
703 +OP(vmor_mm, "vmor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
704 +OP(vmorn_mm, "vmorn.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
705 +OP(vmsbc_vvm, "vmsbc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
706 +OP(vmsbc_vxm, "vmsbc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
707 +OP(vmsbf_m, "vmsbf.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
708 +OP(vmseq_vi, "vmseq.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
709 +OP(vmseq_vv, "vmseq.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
710 +OP(vmseq_vx, "vmseq.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
711 +OP(vmsgt_vi, "vmsgt.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
712 +OP(vmsgt_vx, "vmsgt.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
713 +OP(vmsgtu_vi, "vmsgtu.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
714 +OP(vmsgtu_vx, "vmsgtu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
715 +OP(vmsif_m, "vmsif.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
716 +OP(vmsle_vi, "vmsle.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
717 +OP(vmsle_vv, "vmsle.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
718 +OP(vmsle_vx, "vmsle.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
719 +OP(vmsleu_vi, "vmsleu.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
720 +OP(vmsleu_vv, "vmsleu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
721 +OP(vmsleu_vx, "vmsleu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
722 +OP(vmslt_vv, "vmslt.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
723 +OP(vmslt_vx, "vmslt.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
724 +OP(vmsltu_vv, "vmsltu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
725 +OP(vmsltu_vx, "vmsltu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
726 +OP(vmsne_vi, "vmsne.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
727 +OP(vmsne_vv, "vmsne.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
728 +OP(vmsne_vx, "vmsne.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
729 +OP(vmsof_m, "vmsof.m", rv_codec_v_r, rv_fmt_vd_vs2_vm)
730 +OP(vmul_vv, "vmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
731 +OP(vmul_vx, "vmul.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
732 +OP(vmulh_vv, "vmulh.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
733 +OP(vmulh_vx, "vmulh.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
734 +OP(vmulhsu_vv, "vmulhsu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
735 +OP(vmulhsu_vx, "vmulhsu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
736 +OP(vmulhu_vv, "vmulhu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
737 +OP(vmulhu_vx, "vmulhu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
738 +OP(vmv1r_v, "vmv1r.v", rv_codec_v_r, rv_fmt_vd_vs2)
739 +OP(vmv2r_v, "vmv2r.v", rv_codec_v_r, rv_fmt_vd_vs2)
740 +OP(vmv4r_v, "vmv4r.v", rv_codec_v_r, rv_fmt_vd_vs2)
741 +OP(vmv8r_v, "vmv8r.v", rv_codec_v_r, rv_fmt_vd_vs2)
742 +OP(vmv_s_x, "vmv.s.x", rv_codec_v_r, rv_fmt_vd_rs1)
743 +OP(vmv_v_i, "vmv.v.i", rv_codec_v_i, rv_fmt_vd_imm)
744 +OP(vmv_v_v, "vmv.v.v", rv_codec_v_r, rv_fmt_vd_vs1)
745 +OP(vmv_v_x, "vmv.v.x", rv_codec_v_r, rv_fmt_vd_rs1)
746 +OP(vmv_x_s, "vmv.x.s", rv_codec_v_r, rv_fmt_rd_vs2)
747 +OP(vmxnor_mm, "vmxnor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
748 +OP(vmxor_mm, "vmxor.mm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
749 +OP(vnclip_wi, "vnclip.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
750 +OP(vnclip_wv, "vnclip.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
751 +OP(vnclip_wx, "vnclip.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
752 +OP(vnclipu_wi, "vnclipu.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
753 +OP(vnclipu_wv, "vnclipu.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
754 +OP(vnclipu_wx, "vnclipu.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
755 +OP(vnmsac_vv, "vnmsac.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
756 +OP(vnmsac_vx, "vnmsac.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
757 +OP(vnmsub_vv, "vnmsub.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
758 +OP(vnmsub_vx, "vnmsub.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
759 +OP(vnsra_wi, "vnsra.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
760 +OP(vnsra_wv, "vnsra.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
761 +OP(vnsra_wx, "vnsra.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
762 +OP(vnsrl_wi, "vnsrl.wi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
763 +OP(vnsrl_wv, "vnsrl.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
764 +OP(vnsrl_wx, "vnsrl.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
765 +OP(vor_vi, "vor.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
766 +OP(vor_vv, "vor.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
767 +OP(vor_vx, "vor.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
768 +OP(vredand_vs, "vredand.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
769 +OP(vredmax_vs, "vredmax.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
770 +OP(vredmaxu_vs, "vredmaxu.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
771 +OP(vredmin_vs, "vredmin.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
772 +OP(vredminu_vs, "vredminu.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
773 +OP(vredor_vs, "vredor.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
774 +OP(vredsum_vs, "vredsum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
775 +OP(vredxor_vs, "vredxor.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
776 +OP(vrem_vv, "vrem.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
777 +OP(vrem_vx, "vrem.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
778 +OP(vremu_vv, "vremu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
779 +OP(vremu_vx, "vremu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
780 OP(vrev8_v, "vrev8.v", rv_codec_v_r, rv_fmt_vd_vs2_vm)
781 +OP(vrgather_vi, "vrgather.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
782 +OP(vrgather_vv, "vrgather.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
783 +OP(vrgather_vx, "vrgather.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
784 +OP(vrgatherei16_vv, "vrgatherei16.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
785 OP(vrol_vv, "vrol.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
786 OP(vrol_vx, "vrol.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
787 +OP(vror_vi, "vror.vi", rv_codec_vror_vi, rv_fmt_vd_vs2_uimm_vm)
788 OP(vror_vv, "vror.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
789 OP(vror_vx, "vror.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
861 -OP(vror_vi, "vror.vi", rv_codec_vror_vi, rv_fmt_vd_vs2_uimm_vm)
790 +OP(vrsub_vi, "vrsub.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
791 +OP(vrsub_vx, "vrsub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
792 +OP(vs1r_v, "vs1r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
793 +OP(vs2r_v, "vs2r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
794 +OP(vs4r_v, "vs4r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
795 +OP(vs8r_v, "vs8r.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
796 +OP(vsadd_vi, "vsadd.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
797 +OP(vsadd_vv, "vsadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
798 +OP(vsadd_vx, "vsadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
799 +OP(vsaddu_vi, "vsaddu.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
800 +OP(vsaddu_vv, "vsaddu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
801 +OP(vsaddu_vx, "vsaddu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
802 +OP(vsbc_vvm, "vsbc.vvm", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vl)
803 +OP(vsbc_vxm, "vsbc.vxm", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vl)
804 +OP(vse16_v, "vse16.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
805 +OP(vse32_v, "vse32.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
806 +OP(vse64_v, "vse64.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
807 +OP(vse8_v, "vse8.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
808 +OP(vsetivli, "vsetivli", rv_codec_vsetivli, rv_fmt_vsetivli)
809 +OP(vsetvl, "vsetvl", rv_codec_r, rv_fmt_rd_rs1_rs2)
810 +OP(vsetvli, "vsetvli", rv_codec_vsetvli, rv_fmt_vsetvli)
811 +OP(vsext_vf2, "vsext.vf2", rv_codec_v_r, rv_fmt_vd_vs2_vm)
812 +OP(vsext_vf4, "vsext.vf4", rv_codec_v_r, rv_fmt_vd_vs2_vm)
813 +OP(vsext_vf8, "vsext.vf8", rv_codec_v_r, rv_fmt_vd_vs2_vm)
814 OP(vsha2ch_vv, "vsha2ch.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1)
815 OP(vsha2cl_vv, "vsha2cl.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1)
816 OP(vsha2ms_vv, "vsha2ms.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1)
817 +OP(vslide1down_vx, "vslide1down.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
818 +OP(vslide1up_vx, "vslide1up.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
819 +OP(vslidedown_vi, "vslidedown.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
820 +OP(vslidedown_vx, "vslidedown.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
821 +OP(vslideup_vi, "vslideup.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
822 +OP(vslideup_vx, "vslideup.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
823 +OP(vsll_vi, "vsll.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
824 +OP(vsll_vv, "vsll.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
825 +OP(vsll_vx, "vsll.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
826 OP(vsm3c_vi, "vsm3c.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm)
827 OP(vsm3me_vv, "vsm3me.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1)
828 OP(vsm4k_vi, "vsm4k.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm)
868 -OP(vsm4r_vv, "vsm4r.vv", rv_codec_v_r, rv_fmt_vd_vs2)
829 OP(vsm4r_vs, "vsm4r.vs", rv_codec_v_r, rv_fmt_vd_vs2)
830 +OP(vsm4r_vv, "vsm4r.vv", rv_codec_v_r, rv_fmt_vd_vs2)
831 +OP(vsm_v, "vsm.v", rv_codec_v_ldst, rv_fmt_ldst_vd_rs1_vm)
832 +OP(vsmul_vv, "vsmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
833 +OP(vsmul_vx, "vsmul.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
834 +OP(vsoxei16_v, "vsoxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
835 +OP(vsoxei32_v, "vsoxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
836 +OP(vsoxei64_v, "vsoxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
837 +OP(vsoxei8_v, "vsoxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
838 +OP(vsra_vi, "vsra.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
839 +OP(vsra_vv, "vsra.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
840 +OP(vsra_vx, "vsra.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
841 +OP(vsrl_vi, "vsrl.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
842 +OP(vsrl_vv, "vsrl.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
843 +OP(vsrl_vx, "vsrl.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
844 +OP(vsse16_v, "vsse16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
845 +OP(vsse32_v, "vsse32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
846 +OP(vsse64_v, "vsse64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
847 +OP(vsse8_v, "vsse8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_rs2_vm)
848 +OP(vssra_vi, "vssra.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
849 +OP(vssra_vv, "vssra.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
850 +OP(vssra_vx, "vssra.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
851 +OP(vssrl_vi, "vssrl.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
852 +OP(vssrl_vv, "vssrl.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
853 +OP(vssrl_vx, "vssrl.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
854 +OP(vssub_vv, "vssub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
855 +OP(vssub_vx, "vssub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
856 +OP(vssubu_vv, "vssubu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
857 +OP(vssubu_vx, "vssubu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
858 +OP(vsub_vv, "vsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
859 +OP(vsub_vx, "vsub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
860 +OP(vsuxei16_v, "vsuxei16.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
861 +OP(vsuxei32_v, "vsuxei32.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
862 +OP(vsuxei64_v, "vsuxei64.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
863 +OP(vsuxei8_v, "vsuxei8.v", rv_codec_v_r, rv_fmt_ldst_vd_rs1_vs2_vm)
864 +OP(vwadd_vv, "vwadd.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
865 +OP(vwadd_vx, "vwadd.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
866 +OP(vwadd_wv, "vwadd.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
867 +OP(vwadd_wx, "vwadd.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
868 +OP(vwaddu_vv, "vwaddu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
869 +OP(vwaddu_vx, "vwaddu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
870 +OP(vwaddu_wv, "vwaddu.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
871 +OP(vwaddu_wx, "vwaddu.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
872 +OP(vwmacc_vv, "vwmacc.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
873 +OP(vwmacc_vx, "vwmacc.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
874 +OP(vwmaccsu_vv, "vwmaccsu.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
875 +OP(vwmaccsu_vx, "vwmaccsu.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
876 +OP(vwmaccu_vv, "vwmaccu.vv", rv_codec_v_r, rv_fmt_vd_vs1_vs2_vm)
877 +OP(vwmaccu_vx, "vwmaccu.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
878 +OP(vwmaccus_vx, "vwmaccus.vx", rv_codec_v_r, rv_fmt_vd_rs1_vs2_vm)
879 +OP(vwmul_vv, "vwmul.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
880 +OP(vwmul_vx, "vwmul.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
881 +OP(vwmulsu_vv, "vwmulsu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
882 +OP(vwmulsu_vx, "vwmulsu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
883 +OP(vwmulu_vv, "vwmulu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
884 +OP(vwmulu_vx, "vwmulu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
885 +OP(vwredsum_vs, "vwredsum.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
886 +OP(vwredsumu_vs, "vwredsumu.vs", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
887 +OP(vwsll_vi, "vwsll.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
888 OP(vwsll_vv, "vwsll.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
889 OP(vwsll_vx, "vwsll.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
872 -OP(vwsll_vi, "vwsll.vi", rv_codec_v_i_u, rv_fmt_vd_vs2_uimm_vm)
873 -OP(amocas_w, "amocas.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
874 -OP(amocas_d, "amocas.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
875 -OP(amocas_q, "amocas.q", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
876 -OP(mop_r, "mop.r", rv_codec_mop_r, rv_fmt_mop_r)
877 -OP(mop_rr, "mop.rr", rv_codec_mop_rr, rv_fmt_mop_rr)
878 -OP(c_mop, "c.mop", rv_codec_cmop, rv_fmt_cmop)
879 -OP(amoswap_b, "amoswap.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
880 -OP(amoadd_b, "amoadd.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
881 -OP(amoxor_b, "amoxor.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
882 -OP(amoor_b, "amoor.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
883 -OP(amoand_b, "amoand.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
884 -OP(amomin_b, "amomin.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
885 -OP(amomax_b, "amomax.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
886 -OP(amominu_b, "amominu.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
887 -OP(amomaxu_b, "amomaxu.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
888 -OP(amoswap_h, "amoswap.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
889 -OP(amoadd_h, "amoadd.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
890 -OP(amoxor_h, "amoxor.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
891 -OP(amoor_h, "amoor.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
892 -OP(amoand_h, "amoand.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
893 -OP(amomin_h, "amomin.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
894 -OP(amomax_h, "amomax.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
895 -OP(amominu_h, "amominu.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
896 -OP(amomaxu_h, "amomaxu.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
897 -OP(amocas_b, "amocas.b", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
898 -OP(amocas_h, "amocas.h", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
899 -OP(wrs_sto, "wrs.sto", rv_codec_none, rv_fmt_none)
890 +OP(vwsub_vv, "vwsub.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
891 +OP(vwsub_vx, "vwsub.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
892 +OP(vwsub_wv, "vwsub.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
893 +OP(vwsub_wx, "vwsub.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
894 +OP(vwsubu_vv, "vwsubu.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
895 +OP(vwsubu_vx, "vwsubu.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
896 +OP(vwsubu_wv, "vwsubu.wv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
897 +OP(vwsubu_wx, "vwsubu.wx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
898 +OP(vxor_vi, "vxor.vi", rv_codec_v_i, rv_fmt_vd_vs2_imm_vm)
899 +OP(vxor_vv, "vxor.vv", rv_codec_v_r, rv_fmt_vd_vs2_vs1_vm)
900 +OP(vxor_vx, "vxor.vx", rv_codec_v_r, rv_fmt_vd_vs2_rs1_vm)
901 +OP(vzext_vf2, "vzext.vf2", rv_codec_v_r, rv_fmt_vd_vs2_vm)
902 +OP(vzext_vf4, "vzext.vf4", rv_codec_v_r, rv_fmt_vd_vs2_vm)
903 +OP(vzext_vf8, "vzext.vf8", rv_codec_v_r, rv_fmt_vd_vs2_vm)
904 +OP(wfi, "wfi", rv_codec_none, rv_fmt_none)
905 OP(wrs_nto, "wrs.nto", rv_codec_none, rv_fmt_none)
901 -OP(lpad, "lpad", rv_codec_lp, rv_fmt_imm)
902 -OP(sspush, "sspush", rv_codec_r, rv_fmt_rs2)
903 -OP(sspopchk, "sspopchk", rv_codec_r, rv_fmt_rs1)
904 -OP(ssrdp, "ssrdp", rv_codec_r, rv_fmt_rd)
905 -OP(ssamoswap_w, "ssamoswap.w", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
906 -OP(ssamoswap_d, "ssamoswap.d", rv_codec_r_a, rv_fmt_aqrl_rd_rs2_rs1)
907 -OP(c_sspush, "c.sspush", rv_codec_cmop_ss, NULL, DECOMP(op_sspush))
908 -OP(c_sspopchk, "c.sspopchk", rv_codec_cmop_ss, NULL, DECOMP(op_sspopchk))
909 -OP(cbo_inval, "cbo.inval", rv_codec_r, rv_fmt_rs1)
910 -OP(cbo_clean, "cbo.clean", rv_codec_r, rv_fmt_rs1)
911 -OP(cbo_flush, "cbo.flush", rv_codec_r, rv_fmt_rs1)
912 -OP(cbo_zero, "cbo.zero", rv_codec_r, rv_fmt_rs1)
913 -OP(mnret, "mnret", rv_codec_none, rv_fmt_none)
906 +OP(wrs_sto, "wrs.sto", rv_codec_none, rv_fmt_none)
907 +OP(xnor, "xnor", rv_codec_r, rv_fmt_rd_rs1_rs2)
908 +OP(xor, "xor", rv_codec_r, rv_fmt_rd_rs1_rs2)
909 +OP(xori, "xori", rv_codec_i, rv_fmt_rd_rs1_imm, rvcp_xori)
910 +OP(xperm4, "xperm4", rv_codec_r, rv_fmt_rd_rs1_rs2)
911 +OP(xperm8, "xperm8", rv_codec_r, rv_fmt_rd_rs1)
912 +OP(zext_h, "zext.h", rv_codec_r, rv_fmt_rd_rs1)
913 +OP(zip, "zip", rv_codec_r, rv_fmt_rd_rs1)