xref: /openbmc/qemu/target/loongarch/insns.decode (revision 51e47cf8)
1# SPDX-License-Identifier: GPL-2.0-or-later
2#
3# LoongArch instruction decode definitions.
4#
5# Copyright (c) 2021 Loongson Technology Corporation Limited
6#
7
8#
9# Fields
10#
11%i14s2     10:s14       !function=shl_2
12%sa2p1     15:2         !function=plus_1
13%offs21    0:s5 10:16   !function=shl_2
14%offs16    10:s16       !function=shl_2
15%offs26    0:s10 10:16  !function=shl_2
16
17#
18# Argument sets
19#
20&i            imm
21&r_i          rd imm
22&rr           rd rj
23&rr_jk        rj rk
24&rrr          rd rj rk
25&rr_i         rd rj imm
26&hint_r_i     hint rj imm
27&rrr_sa       rd rj rk sa
28&rr_ms_ls     rd rj ms ls
29&ff           fd fj
30&fff          fd fj fk
31&ffff         fd fj fk fa
32&cff_fcond    cd fj fk fcond
33&fffc         fd fj fk ca
34&fr           fd rj
35&rf           rd fj
36&fcsrd_r      fcsrd rj
37&r_fcsrs      rd fcsrs
38&cf           cd fj
39&fc           fd cj
40&cr           cd rj
41&rc           rd cj
42&frr          fd rj rk
43&fr_i         fd rj imm
44&r_offs       rj offs
45&c_offs       cj offs
46&offs         offs
47&rr_offs      rj rd offs
48&r_csr        rd csr
49&rr_csr       rd rj csr
50&empty
51&i_rr         imm rj rk
52&cop_r_i      cop rj imm
53&j_i          rj imm
54
55#
56# Formats
57#
58@i15                       .... ........ ..... imm:15    &i
59@rr               .... ........ ..... ..... rj:5 rd:5    &rr
60@rr_jk            .... ........ ..... rk:5 rj:5 .....    &rr_jk
61@rrr               .... ........ ..... rk:5 rj:5 rd:5    &rrr
62@r_i20                          .... ... imm:s20 rd:5    &r_i
63@rr_ui5           .... ........ ..... imm:5 rj:5 rd:5    &rr_i
64@rr_ui6            .... ........ .... imm:6 rj:5 rd:5    &rr_i
65@rr_ui8              .. ........ .... imm:8 rj:5 rd:5    &rr_i
66@rr_i12                 .... ...... imm:s12 rj:5 rd:5    &rr_i
67@rr_ui12                 .... ...... imm:12 rj:5 rd:5    &rr_i
68@rr_i14s2         .... ....  .............. rj:5 rd:5    &rr_i imm=%i14s2
69@rr_i16                     .... .. imm:s16 rj:5 rd:5    &rr_i
70@rr_i16s2         .... ..  ................ rj:5 rd:5    &rr_i imm=%offs16
71@hint_r_i12           .... ...... imm:s12 rj:5 hint:5    &hint_r_i
72@rrr_sa2p1        .... ........ ... .. rk:5 rj:5 rd:5    &rrr_sa  sa=%sa2p1
73@rrr_sa2        .... ........ ... sa:2 rk:5 rj:5 rd:5    &rrr_sa
74@rrr_sa3         .... ........ .. sa:3 rk:5 rj:5 rd:5    &rrr_sa
75@rr_2bw            .... ....... ms:5 . ls:5 rj:5 rd:5    &rr_ms_ls
76@rr_2bd               .... ...... ms:6 ls:6 rj:5 rd:5    &rr_ms_ls
77@ff               .... ........ ..... ..... fj:5 fd:5    &ff
78@fff               .... ........ ..... fk:5 fj:5 fd:5    &fff
79@ffff               .... ........ fa:5 fk:5 fj:5 fd:5    &ffff
80@cff_fcond    .... ........ fcond:5 fk:5 fj:5 .. cd:3    &cff_fcond
81@fffc            .... ........ .. ca:3 fk:5 fj:5 fd:5    &fffc
82@fr               .... ........ ..... ..... rj:5 fd:5    &fr
83@rf               .... ........ ..... ..... fj:5 rd:5    &rf
84@fcsrd_r       .... ........ ..... ..... rj:5 fcsrd:5    &fcsrd_r
85@r_fcsrs       .... ........ ..... ..... fcsrs:5 rd:5    &r_fcsrs
86@cf            .... ........ ..... ..... fj:5 .. cd:3    &cf
87@fc            .... ........ ..... ..... .. cj:3 fd:5    &fc
88@cr            .... ........ ..... ..... rj:5 .. cd:3    &cr
89@rc            .... ........ ..... ..... .. cj:3 rd:5    &rc
90@frr               .... ........ ..... rk:5 rj:5 fd:5    &frr
91@fr_i12                 .... ...... imm:s12 rj:5 fd:5    &fr_i
92@r_offs21         .... .. ................ rj:5 .....    &r_offs      offs=%offs21
93@c_offs21      .... .. ................ .. cj:3 .....    &c_offs      offs=%offs21
94@offs26            .... .. ..........................    &offs        offs=%offs26
95@rr_offs16         .... .. ................ rj:5 rd:5    &rr_offs     offs=%offs16
96@r_csr                    .... .... csr:14 ..... rd:5    &r_csr
97@rr_csr                    .... .... csr:14 rj:5 rd:5    &rr_csr
98@empty          .... ........ ..... ..... ..... .....    &empty
99@i_rr             ...... ...... ..... rk:5 rj:5 imm:5    &i_rr
100@cop_r_i              .... ......  imm:s12 rj:5 cop:5    &cop_r_i
101@j_i               .... ........ .. imm:8 rj:5 .....    &j_i
102
103#
104# Fixed point arithmetic operation instruction
105#
106add_w           0000 00000001 00000 ..... ..... .....    @rrr
107add_d           0000 00000001 00001 ..... ..... .....    @rrr
108sub_w           0000 00000001 00010 ..... ..... .....    @rrr
109sub_d           0000 00000001 00011 ..... ..... .....    @rrr
110slt             0000 00000001 00100 ..... ..... .....    @rrr
111sltu            0000 00000001 00101 ..... ..... .....    @rrr
112slti            0000 001000 ............ ..... .....     @rr_i12
113sltui           0000 001001 ............ ..... .....     @rr_i12
114nor             0000 00000001 01000 ..... ..... .....    @rrr
115and             0000 00000001 01001 ..... ..... .....    @rrr
116or              0000 00000001 01010 ..... ..... .....    @rrr
117xor             0000 00000001 01011 ..... ..... .....    @rrr
118orn             0000 00000001 01100 ..... ..... .....    @rrr
119andn            0000 00000001 01101 ..... ..... .....    @rrr
120mul_w           0000 00000001 11000 ..... ..... .....    @rrr
121mulh_w          0000 00000001 11001 ..... ..... .....    @rrr
122mulh_wu         0000 00000001 11010 ..... ..... .....    @rrr
123mul_d           0000 00000001 11011 ..... ..... .....    @rrr
124mulh_d          0000 00000001 11100 ..... ..... .....    @rrr
125mulh_du         0000 00000001 11101 ..... ..... .....    @rrr
126mulw_d_w        0000 00000001 11110 ..... ..... .....    @rrr
127mulw_d_wu       0000 00000001 11111 ..... ..... .....    @rrr
128div_w           0000 00000010 00000 ..... ..... .....    @rrr
129mod_w           0000 00000010 00001 ..... ..... .....    @rrr
130div_wu          0000 00000010 00010 ..... ..... .....    @rrr
131mod_wu          0000 00000010 00011 ..... ..... .....    @rrr
132div_d           0000 00000010 00100 ..... ..... .....    @rrr
133mod_d           0000 00000010 00101 ..... ..... .....    @rrr
134div_du          0000 00000010 00110 ..... ..... .....    @rrr
135mod_du          0000 00000010 00111 ..... ..... .....    @rrr
136alsl_w          0000 00000000 010 .. ..... ..... .....   @rrr_sa2p1
137alsl_wu         0000 00000000 011 .. ..... ..... .....   @rrr_sa2p1
138alsl_d          0000 00000010 110 .. ..... ..... .....   @rrr_sa2p1
139lu12i_w         0001 010 .................... .....      @r_i20
140lu32i_d         0001 011 .................... .....      @r_i20
141lu52i_d         0000 001100 ............ ..... .....     @rr_i12
142pcaddi          0001 100 .................... .....      @r_i20
143pcalau12i       0001 101 .................... .....      @r_i20
144pcaddu12i       0001 110 .................... .....      @r_i20
145pcaddu18i       0001 111 .................... .....      @r_i20
146addi_w          0000 001010 ............ ..... .....     @rr_i12
147addi_d          0000 001011 ............ ..... .....     @rr_i12
148addu16i_d       0001 00 ................ ..... .....     @rr_i16
149andi            0000 001101 ............ ..... .....     @rr_ui12
150ori             0000 001110 ............ ..... .....     @rr_ui12
151xori            0000 001111 ............ ..... .....     @rr_ui12
152
153#
154# Fixed point shift operation instruction
155#
156sll_w           0000 00000001 01110 ..... ..... .....    @rrr
157srl_w           0000 00000001 01111 ..... ..... .....    @rrr
158sra_w           0000 00000001 10000 ..... ..... .....    @rrr
159sll_d           0000 00000001 10001 ..... ..... .....    @rrr
160srl_d           0000 00000001 10010 ..... ..... .....    @rrr
161sra_d           0000 00000001 10011 ..... ..... .....    @rrr
162rotr_w          0000 00000001 10110 ..... ..... .....    @rrr
163rotr_d          0000 00000001 10111 ..... ..... .....    @rrr
164slli_w          0000 00000100 00001 ..... ..... .....    @rr_ui5
165slli_d          0000 00000100 0001 ...... ..... .....    @rr_ui6
166srli_w          0000 00000100 01001 ..... ..... .....    @rr_ui5
167srli_d          0000 00000100 0101 ...... ..... .....    @rr_ui6
168srai_w          0000 00000100 10001 ..... ..... .....    @rr_ui5
169srai_d          0000 00000100 1001 ...... ..... .....    @rr_ui6
170rotri_w         0000 00000100 11001 ..... ..... .....    @rr_ui5
171rotri_d         0000 00000100 1101 ...... ..... .....    @rr_ui6
172
173#
174# Fixed point bit operation instruction
175#
176ext_w_h         0000 00000000 00000 10110 ..... .....    @rr
177ext_w_b         0000 00000000 00000 10111 ..... .....    @rr
178clo_w           0000 00000000 00000 00100 ..... .....    @rr
179clz_w           0000 00000000 00000 00101 ..... .....    @rr
180cto_w           0000 00000000 00000 00110 ..... .....    @rr
181ctz_w           0000 00000000 00000 00111 ..... .....    @rr
182clo_d           0000 00000000 00000 01000 ..... .....    @rr
183clz_d           0000 00000000 00000 01001 ..... .....    @rr
184cto_d           0000 00000000 00000 01010 ..... .....    @rr
185ctz_d           0000 00000000 00000 01011 ..... .....    @rr
186revb_2h         0000 00000000 00000 01100 ..... .....    @rr
187revb_4h         0000 00000000 00000 01101 ..... .....    @rr
188revb_2w         0000 00000000 00000 01110 ..... .....    @rr
189revb_d          0000 00000000 00000 01111 ..... .....    @rr
190revh_2w         0000 00000000 00000 10000 ..... .....    @rr
191revh_d          0000 00000000 00000 10001 ..... .....    @rr
192bitrev_4b       0000 00000000 00000 10010 ..... .....    @rr
193bitrev_8b       0000 00000000 00000 10011 ..... .....    @rr
194bitrev_w        0000 00000000 00000 10100 ..... .....    @rr
195bitrev_d        0000 00000000 00000 10101 ..... .....    @rr
196bytepick_w      0000 00000000 100 .. ..... ..... .....   @rrr_sa2
197bytepick_d      0000 00000000 11 ... ..... ..... .....   @rrr_sa3
198maskeqz         0000 00000001 00110 ..... ..... .....    @rrr
199masknez         0000 00000001 00111 ..... ..... .....    @rrr
200bstrins_w       0000 0000011 ..... 0 ..... ..... .....   @rr_2bw
201bstrpick_w      0000 0000011 ..... 1 ..... ..... .....   @rr_2bw
202bstrins_d       0000 000010 ...... ...... ..... .....    @rr_2bd
203bstrpick_d      0000 000011 ...... ...... ..... .....    @rr_2bd
204
205#
206# Fixed point load/store instruction
207#
208ld_b            0010 100000 ............ ..... .....     @rr_i12
209ld_h            0010 100001 ............ ..... .....     @rr_i12
210ld_w            0010 100010 ............ ..... .....     @rr_i12
211ld_d            0010 100011 ............ ..... .....     @rr_i12
212st_b            0010 100100 ............ ..... .....     @rr_i12
213st_h            0010 100101 ............ ..... .....     @rr_i12
214st_w            0010 100110 ............ ..... .....     @rr_i12
215st_d            0010 100111 ............ ..... .....     @rr_i12
216ld_bu           0010 101000 ............ ..... .....     @rr_i12
217ld_hu           0010 101001 ............ ..... .....     @rr_i12
218ld_wu           0010 101010 ............ ..... .....     @rr_i12
219ldx_b           0011 10000000 00000 ..... ..... .....    @rrr
220ldx_h           0011 10000000 01000 ..... ..... .....    @rrr
221ldx_w           0011 10000000 10000 ..... ..... .....    @rrr
222ldx_d           0011 10000000 11000 ..... ..... .....    @rrr
223stx_b           0011 10000001 00000 ..... ..... .....    @rrr
224stx_h           0011 10000001 01000 ..... ..... .....    @rrr
225stx_w           0011 10000001 10000 ..... ..... .....    @rrr
226stx_d           0011 10000001 11000 ..... ..... .....    @rrr
227ldx_bu          0011 10000010 00000 ..... ..... .....    @rrr
228ldx_hu          0011 10000010 01000 ..... ..... .....    @rrr
229ldx_wu          0011 10000010 10000 ..... ..... .....    @rrr
230preld           0010 101011 ............ ..... .....     @hint_r_i12
231dbar            0011 10000111 00100 ...............      @i15
232ibar            0011 10000111 00101 ...............      @i15
233ldptr_w         0010 0100 .............. ..... .....     @rr_i14s2
234stptr_w         0010 0101 .............. ..... .....     @rr_i14s2
235ldptr_d         0010 0110 .............. ..... .....     @rr_i14s2
236stptr_d         0010 0111 .............. ..... .....     @rr_i14s2
237ldgt_b          0011 10000111 10000 ..... ..... .....    @rrr
238ldgt_h          0011 10000111 10001 ..... ..... .....    @rrr
239ldgt_w          0011 10000111 10010 ..... ..... .....    @rrr
240ldgt_d          0011 10000111 10011 ..... ..... .....    @rrr
241ldle_b          0011 10000111 10100 ..... ..... .....    @rrr
242ldle_h          0011 10000111 10101 ..... ..... .....    @rrr
243ldle_w          0011 10000111 10110 ..... ..... .....    @rrr
244ldle_d          0011 10000111 10111 ..... ..... .....    @rrr
245stgt_b          0011 10000111 11000 ..... ..... .....    @rrr
246stgt_h          0011 10000111 11001 ..... ..... .....    @rrr
247stgt_w          0011 10000111 11010 ..... ..... .....    @rrr
248stgt_d          0011 10000111 11011 ..... ..... .....    @rrr
249stle_b          0011 10000111 11100 ..... ..... .....    @rrr
250stle_h          0011 10000111 11101 ..... ..... .....    @rrr
251stle_w          0011 10000111 11110 ..... ..... .....    @rrr
252stle_d          0011 10000111 11111 ..... ..... .....    @rrr
253
254#
255# Fixed point atomic instruction
256#
257ll_w            0010 0000 .............. ..... .....     @rr_i14s2
258sc_w            0010 0001 .............. ..... .....     @rr_i14s2
259ll_d            0010 0010 .............. ..... .....     @rr_i14s2
260sc_d            0010 0011 .............. ..... .....     @rr_i14s2
261amswap_w        0011 10000110 00000 ..... ..... .....    @rrr
262amswap_d        0011 10000110 00001 ..... ..... .....    @rrr
263amadd_w         0011 10000110 00010 ..... ..... .....    @rrr
264amadd_d         0011 10000110 00011 ..... ..... .....    @rrr
265amand_w         0011 10000110 00100 ..... ..... .....    @rrr
266amand_d         0011 10000110 00101 ..... ..... .....    @rrr
267amor_w          0011 10000110 00110 ..... ..... .....    @rrr
268amor_d          0011 10000110 00111 ..... ..... .....    @rrr
269amxor_w         0011 10000110 01000 ..... ..... .....    @rrr
270amxor_d         0011 10000110 01001 ..... ..... .....    @rrr
271ammax_w         0011 10000110 01010 ..... ..... .....    @rrr
272ammax_d         0011 10000110 01011 ..... ..... .....    @rrr
273ammin_w         0011 10000110 01100 ..... ..... .....    @rrr
274ammin_d         0011 10000110 01101 ..... ..... .....    @rrr
275ammax_wu        0011 10000110 01110 ..... ..... .....    @rrr
276ammax_du        0011 10000110 01111 ..... ..... .....    @rrr
277ammin_wu        0011 10000110 10000 ..... ..... .....    @rrr
278ammin_du        0011 10000110 10001 ..... ..... .....    @rrr
279amswap_db_w     0011 10000110 10010 ..... ..... .....    @rrr
280amswap_db_d     0011 10000110 10011 ..... ..... .....    @rrr
281amadd_db_w      0011 10000110 10100 ..... ..... .....    @rrr
282amadd_db_d      0011 10000110 10101 ..... ..... .....    @rrr
283amand_db_w      0011 10000110 10110 ..... ..... .....    @rrr
284amand_db_d      0011 10000110 10111 ..... ..... .....    @rrr
285amor_db_w       0011 10000110 11000 ..... ..... .....    @rrr
286amor_db_d       0011 10000110 11001 ..... ..... .....    @rrr
287amxor_db_w      0011 10000110 11010 ..... ..... .....    @rrr
288amxor_db_d      0011 10000110 11011 ..... ..... .....    @rrr
289ammax_db_w      0011 10000110 11100 ..... ..... .....    @rrr
290ammax_db_d      0011 10000110 11101 ..... ..... .....    @rrr
291ammin_db_w      0011 10000110 11110 ..... ..... .....    @rrr
292ammin_db_d      0011 10000110 11111 ..... ..... .....    @rrr
293ammax_db_wu     0011 10000111 00000 ..... ..... .....    @rrr
294ammax_db_du     0011 10000111 00001 ..... ..... .....    @rrr
295ammin_db_wu     0011 10000111 00010 ..... ..... .....    @rrr
296ammin_db_du     0011 10000111 00011 ..... ..... .....    @rrr
297
298#
299# Fixed point extra instruction
300#
301crc_w_b_w       0000 00000010 01000 ..... ..... .....    @rrr
302crc_w_h_w       0000 00000010 01001 ..... ..... .....    @rrr
303crc_w_w_w       0000 00000010 01010 ..... ..... .....    @rrr
304crc_w_d_w       0000 00000010 01011 ..... ..... .....    @rrr
305crcc_w_b_w      0000 00000010 01100 ..... ..... .....    @rrr
306crcc_w_h_w      0000 00000010 01101 ..... ..... .....    @rrr
307crcc_w_w_w      0000 00000010 01110 ..... ..... .....    @rrr
308crcc_w_d_w      0000 00000010 01111 ..... ..... .....    @rrr
309break           0000 00000010 10100 ...............      @i15
310syscall         0000 00000010 10110 ...............      @i15
311asrtle_d        0000 00000000 00010 ..... ..... 00000    @rr_jk
312asrtgt_d        0000 00000000 00011 ..... ..... 00000    @rr_jk
313rdtimel_w       0000 00000000 00000 11000 ..... .....    @rr
314rdtimeh_w       0000 00000000 00000 11001 ..... .....    @rr
315rdtime_d        0000 00000000 00000 11010 ..... .....    @rr
316cpucfg          0000 00000000 00000 11011 ..... .....    @rr
317
318#
319# Floating point arithmetic operation instruction
320#
321fadd_s          0000 00010000 00001 ..... ..... .....    @fff
322fadd_d          0000 00010000 00010 ..... ..... .....    @fff
323fsub_s          0000 00010000 00101 ..... ..... .....    @fff
324fsub_d          0000 00010000 00110 ..... ..... .....    @fff
325fmul_s          0000 00010000 01001 ..... ..... .....    @fff
326fmul_d          0000 00010000 01010 ..... ..... .....    @fff
327fdiv_s          0000 00010000 01101 ..... ..... .....    @fff
328fdiv_d          0000 00010000 01110 ..... ..... .....    @fff
329fmadd_s         0000 10000001 ..... ..... ..... .....    @ffff
330fmadd_d         0000 10000010 ..... ..... ..... .....    @ffff
331fmsub_s         0000 10000101 ..... ..... ..... .....    @ffff
332fmsub_d         0000 10000110 ..... ..... ..... .....    @ffff
333fnmadd_s        0000 10001001 ..... ..... ..... .....    @ffff
334fnmadd_d        0000 10001010 ..... ..... ..... .....    @ffff
335fnmsub_s        0000 10001101 ..... ..... ..... .....    @ffff
336fnmsub_d        0000 10001110 ..... ..... ..... .....    @ffff
337fmax_s          0000 00010000 10001 ..... ..... .....    @fff
338fmax_d          0000 00010000 10010 ..... ..... .....    @fff
339fmin_s          0000 00010000 10101 ..... ..... .....    @fff
340fmin_d          0000 00010000 10110 ..... ..... .....    @fff
341fmaxa_s         0000 00010000 11001 ..... ..... .....    @fff
342fmaxa_d         0000 00010000 11010 ..... ..... .....    @fff
343fmina_s         0000 00010000 11101 ..... ..... .....    @fff
344fmina_d         0000 00010000 11110 ..... ..... .....    @fff
345fabs_s          0000 00010001 01000 00001 ..... .....    @ff
346fabs_d          0000 00010001 01000 00010 ..... .....    @ff
347fneg_s          0000 00010001 01000 00101 ..... .....    @ff
348fneg_d          0000 00010001 01000 00110 ..... .....    @ff
349fsqrt_s         0000 00010001 01000 10001 ..... .....    @ff
350fsqrt_d         0000 00010001 01000 10010 ..... .....    @ff
351frecip_s        0000 00010001 01000 10101 ..... .....    @ff
352frecip_d        0000 00010001 01000 10110 ..... .....    @ff
353frsqrt_s        0000 00010001 01000 11001 ..... .....    @ff
354frsqrt_d        0000 00010001 01000 11010 ..... .....    @ff
355fscaleb_s       0000 00010001 00001 ..... ..... .....    @fff
356fscaleb_d       0000 00010001 00010 ..... ..... .....    @fff
357flogb_s         0000 00010001 01000 01001 ..... .....    @ff
358flogb_d         0000 00010001 01000 01010 ..... .....    @ff
359fcopysign_s     0000 00010001 00101 ..... ..... .....    @fff
360fcopysign_d     0000 00010001 00110 ..... ..... .....    @fff
361fclass_s        0000 00010001 01000 01101 ..... .....    @ff
362fclass_d        0000 00010001 01000 01110 ..... .....    @ff
363
364#
365# Floating point compare instruction
366#
367fcmp_cond_s     0000 11000001 ..... ..... ..... 00 ...   @cff_fcond
368fcmp_cond_d     0000 11000010 ..... ..... ..... 00 ...   @cff_fcond
369
370#
371# Floating point conversion instruction
372#
373fcvt_s_d        0000 00010001 10010 00110 ..... .....    @ff
374fcvt_d_s        0000 00010001 10010 01001 ..... .....    @ff
375ftintrm_w_s     0000 00010001 10100 00001 ..... .....    @ff
376ftintrm_w_d     0000 00010001 10100 00010 ..... .....    @ff
377ftintrm_l_s     0000 00010001 10100 01001 ..... .....    @ff
378ftintrm_l_d     0000 00010001 10100 01010 ..... .....    @ff
379ftintrp_w_s     0000 00010001 10100 10001 ..... .....    @ff
380ftintrp_w_d     0000 00010001 10100 10010 ..... .....    @ff
381ftintrp_l_s     0000 00010001 10100 11001 ..... .....    @ff
382ftintrp_l_d     0000 00010001 10100 11010 ..... .....    @ff
383ftintrz_w_s     0000 00010001 10101 00001 ..... .....    @ff
384ftintrz_w_d     0000 00010001 10101 00010 ..... .....    @ff
385ftintrz_l_s     0000 00010001 10101 01001 ..... .....    @ff
386ftintrz_l_d     0000 00010001 10101 01010 ..... .....    @ff
387ftintrne_w_s    0000 00010001 10101 10001 ..... .....    @ff
388ftintrne_w_d    0000 00010001 10101 10010 ..... .....    @ff
389ftintrne_l_s    0000 00010001 10101 11001 ..... .....    @ff
390ftintrne_l_d    0000 00010001 10101 11010 ..... .....    @ff
391ftint_w_s       0000 00010001 10110 00001 ..... .....    @ff
392ftint_w_d       0000 00010001 10110 00010 ..... .....    @ff
393ftint_l_s       0000 00010001 10110 01001 ..... .....    @ff
394ftint_l_d       0000 00010001 10110 01010 ..... .....    @ff
395ffint_s_w       0000 00010001 11010 00100 ..... .....    @ff
396ffint_s_l       0000 00010001 11010 00110 ..... .....    @ff
397ffint_d_w       0000 00010001 11010 01000 ..... .....    @ff
398ffint_d_l       0000 00010001 11010 01010 ..... .....    @ff
399frint_s         0000 00010001 11100 10001 ..... .....    @ff
400frint_d         0000 00010001 11100 10010 ..... .....    @ff
401
402#
403# Floating point move instruction
404#
405fmov_s          0000 00010001 01001 00101 ..... .....    @ff
406fmov_d          0000 00010001 01001 00110 ..... .....    @ff
407fsel            0000 11010000 00 ... ..... ..... .....   @fffc
408movgr2fr_w      0000 00010001 01001 01001 ..... .....    @fr
409movgr2fr_d      0000 00010001 01001 01010 ..... .....    @fr
410movgr2frh_w     0000 00010001 01001 01011 ..... .....    @fr
411movfr2gr_s      0000 00010001 01001 01101 ..... .....    @rf
412movfr2gr_d      0000 00010001 01001 01110 ..... .....    @rf
413movfrh2gr_s     0000 00010001 01001 01111 ..... .....    @rf
414movgr2fcsr      0000 00010001 01001 10000 ..... .....    @fcsrd_r
415movfcsr2gr      0000 00010001 01001 10010 ..... .....    @r_fcsrs
416movfr2cf        0000 00010001 01001 10100 ..... 00 ...   @cf
417movcf2fr        0000 00010001 01001 10101 00 ... .....   @fc
418movgr2cf        0000 00010001 01001 10110 ..... 00 ...   @cr
419movcf2gr        0000 00010001 01001 10111 00 ... .....   @rc
420
421#
422# Floating point load/store instruction
423#
424fld_s           0010 101100 ............ ..... .....     @fr_i12
425fst_s           0010 101101 ............ ..... .....     @fr_i12
426fld_d           0010 101110 ............ ..... .....     @fr_i12
427fst_d           0010 101111 ............ ..... .....     @fr_i12
428fldx_s          0011 10000011 00000 ..... ..... .....    @frr
429fldx_d          0011 10000011 01000 ..... ..... .....    @frr
430fstx_s          0011 10000011 10000 ..... ..... .....    @frr
431fstx_d          0011 10000011 11000 ..... ..... .....    @frr
432fldgt_s         0011 10000111 01000 ..... ..... .....    @frr
433fldgt_d         0011 10000111 01001 ..... ..... .....    @frr
434fldle_s         0011 10000111 01010 ..... ..... .....    @frr
435fldle_d         0011 10000111 01011 ..... ..... .....    @frr
436fstgt_s         0011 10000111 01100 ..... ..... .....    @frr
437fstgt_d         0011 10000111 01101 ..... ..... .....    @frr
438fstle_s         0011 10000111 01110 ..... ..... .....    @frr
439fstle_d         0011 10000111 01111 ..... ..... .....    @frr
440
441#
442# Branch instructions
443#
444beqz            0100 00 ................ ..... .....     @r_offs21
445bnez            0100 01 ................ ..... .....     @r_offs21
446bceqz           0100 10 ................ 00 ... .....    @c_offs21
447bcnez           0100 10 ................ 01 ... .....    @c_offs21
448jirl            0100 11 ................ ..... .....     @rr_i16s2
449b               0101 00 ..........................       @offs26
450bl              0101 01 ..........................       @offs26
451beq             0101 10 ................ ..... .....     @rr_offs16
452bne             0101 11 ................ ..... .....     @rr_offs16
453blt             0110 00 ................ ..... .....     @rr_offs16
454bge             0110 01 ................ ..... .....     @rr_offs16
455bltu            0110 10 ................ ..... .....     @rr_offs16
456bgeu            0110 11 ................ ..... .....     @rr_offs16
457
458#
459# Core instructions
460#
461{
462  csrrd             0000 0100 .............. 00000 .....     @r_csr
463  csrwr             0000 0100 .............. 00001 .....     @r_csr
464  csrxchg           0000 0100 .............. ..... .....     @rr_csr
465}
466
467iocsrrd_b        0000 01100100 10000 00000 ..... .....    @rr
468iocsrrd_h        0000 01100100 10000 00001 ..... .....    @rr
469iocsrrd_w        0000 01100100 10000 00010 ..... .....    @rr
470iocsrrd_d        0000 01100100 10000 00011 ..... .....    @rr
471iocsrwr_b        0000 01100100 10000 00100 ..... .....    @rr
472iocsrwr_h        0000 01100100 10000 00101 ..... .....    @rr
473iocsrwr_w        0000 01100100 10000 00110 ..... .....    @rr
474iocsrwr_d        0000 01100100 10000 00111 ..... .....    @rr
475tlbsrch          0000 01100100 10000 01010 00000 00000    @empty
476tlbrd            0000 01100100 10000 01011 00000 00000    @empty
477tlbwr            0000 01100100 10000 01100 00000 00000    @empty
478tlbfill          0000 01100100 10000 01101 00000 00000    @empty
479tlbclr           0000 01100100 10000 01000 00000 00000    @empty
480tlbflush         0000 01100100 10000 01001 00000 00000    @empty
481invtlb           0000 01100100 10011 ..... ..... .....    @i_rr
482cacop            0000 011000 ............ ..... .....     @cop_r_i
483lddir            0000 01100100 00 ........ ..... .....    @rr_ui8
484ldpte            0000 01100100 01 ........ ..... 00000    @j_i
485ertn             0000 01100100 10000 01110 00000 00000    @empty
486idle             0000 01100100 10001 ...............      @i15
487dbcl             0000 00000010 10101 ...............      @i15
488
489#
490# LSX Fields
491#
492
493%i9s3     10:s9       !function=shl_3
494%i10s2    10:s10      !function=shl_2
495%i11s1    10:s11      !function=shl_1
496%i8s3     10:s8       !function=shl_3
497%i8s2     10:s8       !function=shl_2
498%i8s1     10:s8       !function=shl_1
499
500#
501# LSX Argument sets
502#
503
504&vv           vd vj
505&cv           cd vj
506&vvv          vd vj vk
507&vv_i         vd vj imm
508&vvvv         vd vj vk va
509&vvv_fcond    vd vj vk fcond
510&vr_i         vd rj imm
511&rv_i         rd vj imm
512&vr           vd rj
513&vvr          vd vj rk
514&vrr          vd rj rk
515&vr_ii        vd rj imm imm2
516&v_i          vd imm
517
518#
519# LSX Formats
520#
521@vv               .... ........ ..... ..... vj:5 vd:5    &vv
522@cv            .... ........ ..... ..... vj:5 .. cd:3    &cv
523@vvv               .... ........ ..... vk:5 vj:5 vd:5    &vvv
524@vv_ui1      .... ........ ..... .... imm:1 vj:5 vd:5    &vv_i
525@vv_ui2       .... ........ ..... ... imm:2 vj:5 vd:5    &vv_i
526@vv_ui3        .... ........ ..... .. imm:3 vj:5 vd:5    &vv_i
527@vv_ui4         .... ........ ..... . imm:4 vj:5 vd:5    &vv_i
528@vv_ui5           .... ........ ..... imm:5 vj:5 vd:5    &vv_i
529@vv_ui6            .... ........ .... imm:6 vj:5 vd:5    &vv_i
530@vv_ui7             .... ........ ... imm:7 vj:5 vd:5    &vv_i
531@vv_ui8              .... ........ .. imm:8 vj:5 vd:5    &vv_i
532@vv_i5           .... ........ ..... imm:s5 vj:5 vd:5    &vv_i
533@vvvv               .... ........ va:5 vk:5 vj:5 vd:5    &vvvv
534@vvv_fcond      .... ........ fcond:5  vk:5 vj:5 vd:5    &vvv_fcond
535@vr_ui4         .... ........ ..... . imm:4 rj:5 vd:5    &vr_i
536@vr_ui3        .... ........ ..... .. imm:3 rj:5 vd:5    &vr_i
537@vr_ui2       .... ........ ..... ... imm:2 rj:5 vd:5    &vr_i
538@vr_ui1      .... ........ ..... .... imm:1 rj:5 vd:5    &vr_i
539@rv_ui4         .... ........ ..... . imm:4 vj:5 rd:5    &rv_i
540@rv_ui3        .... ........ ..... .. imm:3 vj:5 rd:5    &rv_i
541@rv_ui2       .... ........ ..... ... imm:2 vj:5 rd:5    &rv_i
542@rv_ui1      .... ........ ..... .... imm:1 vj:5 rd:5    &rv_i
543@vr               .... ........ ..... ..... rj:5 vd:5    &vr
544@vvr               .... ........ ..... rk:5 vj:5 vd:5    &vvr
545@vr_i9            .... ........ . ......... rj:5 vd:5    &vr_i imm=%i9s3
546@vr_i10            .... ........ .......... rj:5 vd:5    &vr_i imm=%i10s2
547@vr_i11            .... ....... ........... rj:5 vd:5    &vr_i imm=%i11s1
548@vr_i12                 .... ...... imm:s12 rj:5 vd:5    &vr_i
549@vr_i8i1    .... ........ . imm2:1 ........ rj:5 vd:5    &vr_ii imm=%i8s3
550@vr_i8i2      .... ........ imm2:2 ........ rj:5 vd:5    &vr_ii imm=%i8s2
551@vr_i8i3       .... ....... imm2:3 ........ rj:5 vd:5    &vr_ii imm=%i8s1
552@vr_i8i4          .... ...... imm2:4 imm:s8 rj:5 vd:5    &vr_ii
553@vrr               .... ........ ..... rk:5 rj:5 vd:5    &vrr
554@v_i13                   .... ........ .. imm:13 vd:5    &v_i
555
556vadd_b           0111 00000000 10100 ..... ..... .....    @vvv
557vadd_h           0111 00000000 10101 ..... ..... .....    @vvv
558vadd_w           0111 00000000 10110 ..... ..... .....    @vvv
559vadd_d           0111 00000000 10111 ..... ..... .....    @vvv
560vadd_q           0111 00010010 11010 ..... ..... .....    @vvv
561vsub_b           0111 00000000 11000 ..... ..... .....    @vvv
562vsub_h           0111 00000000 11001 ..... ..... .....    @vvv
563vsub_w           0111 00000000 11010 ..... ..... .....    @vvv
564vsub_d           0111 00000000 11011 ..... ..... .....    @vvv
565vsub_q           0111 00010010 11011 ..... ..... .....    @vvv
566
567vaddi_bu         0111 00101000 10100 ..... ..... .....    @vv_ui5
568vaddi_hu         0111 00101000 10101 ..... ..... .....    @vv_ui5
569vaddi_wu         0111 00101000 10110 ..... ..... .....    @vv_ui5
570vaddi_du         0111 00101000 10111 ..... ..... .....    @vv_ui5
571vsubi_bu         0111 00101000 11000 ..... ..... .....    @vv_ui5
572vsubi_hu         0111 00101000 11001 ..... ..... .....    @vv_ui5
573vsubi_wu         0111 00101000 11010 ..... ..... .....    @vv_ui5
574vsubi_du         0111 00101000 11011 ..... ..... .....    @vv_ui5
575
576vneg_b           0111 00101001 11000 01100 ..... .....    @vv
577vneg_h           0111 00101001 11000 01101 ..... .....    @vv
578vneg_w           0111 00101001 11000 01110 ..... .....    @vv
579vneg_d           0111 00101001 11000 01111 ..... .....    @vv
580
581vsadd_b          0111 00000100 01100 ..... ..... .....    @vvv
582vsadd_h          0111 00000100 01101 ..... ..... .....    @vvv
583vsadd_w          0111 00000100 01110 ..... ..... .....    @vvv
584vsadd_d          0111 00000100 01111 ..... ..... .....    @vvv
585vsadd_bu         0111 00000100 10100 ..... ..... .....    @vvv
586vsadd_hu         0111 00000100 10101 ..... ..... .....    @vvv
587vsadd_wu         0111 00000100 10110 ..... ..... .....    @vvv
588vsadd_du         0111 00000100 10111 ..... ..... .....    @vvv
589vssub_b          0111 00000100 10000 ..... ..... .....    @vvv
590vssub_h          0111 00000100 10001 ..... ..... .....    @vvv
591vssub_w          0111 00000100 10010 ..... ..... .....    @vvv
592vssub_d          0111 00000100 10011 ..... ..... .....    @vvv
593vssub_bu         0111 00000100 11000 ..... ..... .....    @vvv
594vssub_hu         0111 00000100 11001 ..... ..... .....    @vvv
595vssub_wu         0111 00000100 11010 ..... ..... .....    @vvv
596vssub_du         0111 00000100 11011 ..... ..... .....    @vvv
597
598vhaddw_h_b       0111 00000101 01000 ..... ..... .....    @vvv
599vhaddw_w_h       0111 00000101 01001 ..... ..... .....    @vvv
600vhaddw_d_w       0111 00000101 01010 ..... ..... .....    @vvv
601vhaddw_q_d       0111 00000101 01011 ..... ..... .....    @vvv
602vhaddw_hu_bu     0111 00000101 10000 ..... ..... .....    @vvv
603vhaddw_wu_hu     0111 00000101 10001 ..... ..... .....    @vvv
604vhaddw_du_wu     0111 00000101 10010 ..... ..... .....    @vvv
605vhaddw_qu_du     0111 00000101 10011 ..... ..... .....    @vvv
606vhsubw_h_b       0111 00000101 01100 ..... ..... .....    @vvv
607vhsubw_w_h       0111 00000101 01101 ..... ..... .....    @vvv
608vhsubw_d_w       0111 00000101 01110 ..... ..... .....    @vvv
609vhsubw_q_d       0111 00000101 01111 ..... ..... .....    @vvv
610vhsubw_hu_bu     0111 00000101 10100 ..... ..... .....    @vvv
611vhsubw_wu_hu     0111 00000101 10101 ..... ..... .....    @vvv
612vhsubw_du_wu     0111 00000101 10110 ..... ..... .....    @vvv
613vhsubw_qu_du     0111 00000101 10111 ..... ..... .....    @vvv
614
615vaddwev_h_b      0111 00000001 11100 ..... ..... .....    @vvv
616vaddwev_w_h      0111 00000001 11101 ..... ..... .....    @vvv
617vaddwev_d_w      0111 00000001 11110 ..... ..... .....    @vvv
618vaddwev_q_d      0111 00000001 11111 ..... ..... .....    @vvv
619vaddwod_h_b      0111 00000010 00100 ..... ..... .....    @vvv
620vaddwod_w_h      0111 00000010 00101 ..... ..... .....    @vvv
621vaddwod_d_w      0111 00000010 00110 ..... ..... .....    @vvv
622vaddwod_q_d      0111 00000010 00111 ..... ..... .....    @vvv
623vsubwev_h_b      0111 00000010 00000 ..... ..... .....    @vvv
624vsubwev_w_h      0111 00000010 00001 ..... ..... .....    @vvv
625vsubwev_d_w      0111 00000010 00010 ..... ..... .....    @vvv
626vsubwev_q_d      0111 00000010 00011 ..... ..... .....    @vvv
627vsubwod_h_b      0111 00000010 01000 ..... ..... .....    @vvv
628vsubwod_w_h      0111 00000010 01001 ..... ..... .....    @vvv
629vsubwod_d_w      0111 00000010 01010 ..... ..... .....    @vvv
630vsubwod_q_d      0111 00000010 01011 ..... ..... .....    @vvv
631
632vaddwev_h_bu     0111 00000010 11100 ..... ..... .....    @vvv
633vaddwev_w_hu     0111 00000010 11101 ..... ..... .....    @vvv
634vaddwev_d_wu     0111 00000010 11110 ..... ..... .....    @vvv
635vaddwev_q_du     0111 00000010 11111 ..... ..... .....    @vvv
636vaddwod_h_bu     0111 00000011 00100 ..... ..... .....    @vvv
637vaddwod_w_hu     0111 00000011 00101 ..... ..... .....    @vvv
638vaddwod_d_wu     0111 00000011 00110 ..... ..... .....    @vvv
639vaddwod_q_du     0111 00000011 00111 ..... ..... .....    @vvv
640vsubwev_h_bu     0111 00000011 00000 ..... ..... .....    @vvv
641vsubwev_w_hu     0111 00000011 00001 ..... ..... .....    @vvv
642vsubwev_d_wu     0111 00000011 00010 ..... ..... .....    @vvv
643vsubwev_q_du     0111 00000011 00011 ..... ..... .....    @vvv
644vsubwod_h_bu     0111 00000011 01000 ..... ..... .....    @vvv
645vsubwod_w_hu     0111 00000011 01001 ..... ..... .....    @vvv
646vsubwod_d_wu     0111 00000011 01010 ..... ..... .....    @vvv
647vsubwod_q_du     0111 00000011 01011 ..... ..... .....    @vvv
648
649vaddwev_h_bu_b   0111 00000011 11100 ..... ..... .....    @vvv
650vaddwev_w_hu_h   0111 00000011 11101 ..... ..... .....    @vvv
651vaddwev_d_wu_w   0111 00000011 11110 ..... ..... .....    @vvv
652vaddwev_q_du_d   0111 00000011 11111 ..... ..... .....    @vvv
653vaddwod_h_bu_b   0111 00000100 00000 ..... ..... .....    @vvv
654vaddwod_w_hu_h   0111 00000100 00001 ..... ..... .....    @vvv
655vaddwod_d_wu_w   0111 00000100 00010 ..... ..... .....    @vvv
656vaddwod_q_du_d   0111 00000100 00011 ..... ..... .....    @vvv
657
658vavg_b           0111 00000110 01000 ..... ..... .....    @vvv
659vavg_h           0111 00000110 01001 ..... ..... .....    @vvv
660vavg_w           0111 00000110 01010 ..... ..... .....    @vvv
661vavg_d           0111 00000110 01011 ..... ..... .....    @vvv
662vavg_bu          0111 00000110 01100 ..... ..... .....    @vvv
663vavg_hu          0111 00000110 01101 ..... ..... .....    @vvv
664vavg_wu          0111 00000110 01110 ..... ..... .....    @vvv
665vavg_du          0111 00000110 01111 ..... ..... .....    @vvv
666vavgr_b          0111 00000110 10000 ..... ..... .....    @vvv
667vavgr_h          0111 00000110 10001 ..... ..... .....    @vvv
668vavgr_w          0111 00000110 10010 ..... ..... .....    @vvv
669vavgr_d          0111 00000110 10011 ..... ..... .....    @vvv
670vavgr_bu         0111 00000110 10100 ..... ..... .....    @vvv
671vavgr_hu         0111 00000110 10101 ..... ..... .....    @vvv
672vavgr_wu         0111 00000110 10110 ..... ..... .....    @vvv
673vavgr_du         0111 00000110 10111 ..... ..... .....    @vvv
674
675vabsd_b          0111 00000110 00000 ..... ..... .....    @vvv
676vabsd_h          0111 00000110 00001 ..... ..... .....    @vvv
677vabsd_w          0111 00000110 00010 ..... ..... .....    @vvv
678vabsd_d          0111 00000110 00011 ..... ..... .....    @vvv
679vabsd_bu         0111 00000110 00100 ..... ..... .....    @vvv
680vabsd_hu         0111 00000110 00101 ..... ..... .....    @vvv
681vabsd_wu         0111 00000110 00110 ..... ..... .....    @vvv
682vabsd_du         0111 00000110 00111 ..... ..... .....    @vvv
683
684vadda_b          0111 00000101 11000 ..... ..... .....    @vvv
685vadda_h          0111 00000101 11001 ..... ..... .....    @vvv
686vadda_w          0111 00000101 11010 ..... ..... .....    @vvv
687vadda_d          0111 00000101 11011 ..... ..... .....    @vvv
688
689vmax_b           0111 00000111 00000 ..... ..... .....    @vvv
690vmax_h           0111 00000111 00001 ..... ..... .....    @vvv
691vmax_w           0111 00000111 00010 ..... ..... .....    @vvv
692vmax_d           0111 00000111 00011 ..... ..... .....    @vvv
693vmaxi_b          0111 00101001 00000 ..... ..... .....    @vv_i5
694vmaxi_h          0111 00101001 00001 ..... ..... .....    @vv_i5
695vmaxi_w          0111 00101001 00010 ..... ..... .....    @vv_i5
696vmaxi_d          0111 00101001 00011 ..... ..... .....    @vv_i5
697vmax_bu          0111 00000111 01000 ..... ..... .....    @vvv
698vmax_hu          0111 00000111 01001 ..... ..... .....    @vvv
699vmax_wu          0111 00000111 01010 ..... ..... .....    @vvv
700vmax_du          0111 00000111 01011 ..... ..... .....    @vvv
701vmaxi_bu         0111 00101001 01000 ..... ..... .....    @vv_ui5
702vmaxi_hu         0111 00101001 01001 ..... ..... .....    @vv_ui5
703vmaxi_wu         0111 00101001 01010 ..... ..... .....    @vv_ui5
704vmaxi_du         0111 00101001 01011 ..... ..... .....    @vv_ui5
705
706vmin_b           0111 00000111 00100 ..... ..... .....    @vvv
707vmin_h           0111 00000111 00101 ..... ..... .....    @vvv
708vmin_w           0111 00000111 00110 ..... ..... .....    @vvv
709vmin_d           0111 00000111 00111 ..... ..... .....    @vvv
710vmini_b          0111 00101001 00100 ..... ..... .....    @vv_i5
711vmini_h          0111 00101001 00101 ..... ..... .....    @vv_i5
712vmini_w          0111 00101001 00110 ..... ..... .....    @vv_i5
713vmini_d          0111 00101001 00111 ..... ..... .....    @vv_i5
714vmin_bu          0111 00000111 01100 ..... ..... .....    @vvv
715vmin_hu          0111 00000111 01101 ..... ..... .....    @vvv
716vmin_wu          0111 00000111 01110 ..... ..... .....    @vvv
717vmin_du          0111 00000111 01111 ..... ..... .....    @vvv
718vmini_bu         0111 00101001 01100 ..... ..... .....    @vv_ui5
719vmini_hu         0111 00101001 01101 ..... ..... .....    @vv_ui5
720vmini_wu         0111 00101001 01110 ..... ..... .....    @vv_ui5
721vmini_du         0111 00101001 01111 ..... ..... .....    @vv_ui5
722
723vmul_b           0111 00001000 01000 ..... ..... .....    @vvv
724vmul_h           0111 00001000 01001 ..... ..... .....    @vvv
725vmul_w           0111 00001000 01010 ..... ..... .....    @vvv
726vmul_d           0111 00001000 01011 ..... ..... .....    @vvv
727vmuh_b           0111 00001000 01100 ..... ..... .....    @vvv
728vmuh_h           0111 00001000 01101 ..... ..... .....    @vvv
729vmuh_w           0111 00001000 01110 ..... ..... .....    @vvv
730vmuh_d           0111 00001000 01111 ..... ..... .....    @vvv
731vmuh_bu          0111 00001000 10000 ..... ..... .....    @vvv
732vmuh_hu          0111 00001000 10001 ..... ..... .....    @vvv
733vmuh_wu          0111 00001000 10010 ..... ..... .....    @vvv
734vmuh_du          0111 00001000 10011 ..... ..... .....    @vvv
735
736vmulwev_h_b      0111 00001001 00000 ..... ..... .....    @vvv
737vmulwev_w_h      0111 00001001 00001 ..... ..... .....    @vvv
738vmulwev_d_w      0111 00001001 00010 ..... ..... .....    @vvv
739vmulwev_q_d      0111 00001001 00011 ..... ..... .....    @vvv
740vmulwod_h_b      0111 00001001 00100 ..... ..... .....    @vvv
741vmulwod_w_h      0111 00001001 00101 ..... ..... .....    @vvv
742vmulwod_d_w      0111 00001001 00110 ..... ..... .....    @vvv
743vmulwod_q_d      0111 00001001 00111 ..... ..... .....    @vvv
744vmulwev_h_bu     0111 00001001 10000 ..... ..... .....    @vvv
745vmulwev_w_hu     0111 00001001 10001 ..... ..... .....    @vvv
746vmulwev_d_wu     0111 00001001 10010 ..... ..... .....    @vvv
747vmulwev_q_du     0111 00001001 10011 ..... ..... .....    @vvv
748vmulwod_h_bu     0111 00001001 10100 ..... ..... .....    @vvv
749vmulwod_w_hu     0111 00001001 10101 ..... ..... .....    @vvv
750vmulwod_d_wu     0111 00001001 10110 ..... ..... .....    @vvv
751vmulwod_q_du     0111 00001001 10111 ..... ..... .....    @vvv
752vmulwev_h_bu_b   0111 00001010 00000 ..... ..... .....    @vvv
753vmulwev_w_hu_h   0111 00001010 00001 ..... ..... .....    @vvv
754vmulwev_d_wu_w   0111 00001010 00010 ..... ..... .....    @vvv
755vmulwev_q_du_d   0111 00001010 00011 ..... ..... .....    @vvv
756vmulwod_h_bu_b   0111 00001010 00100 ..... ..... .....    @vvv
757vmulwod_w_hu_h   0111 00001010 00101 ..... ..... .....    @vvv
758vmulwod_d_wu_w   0111 00001010 00110 ..... ..... .....    @vvv
759vmulwod_q_du_d   0111 00001010 00111 ..... ..... .....    @vvv
760
761vmadd_b          0111 00001010 10000 ..... ..... .....    @vvv
762vmadd_h          0111 00001010 10001 ..... ..... .....    @vvv
763vmadd_w          0111 00001010 10010 ..... ..... .....    @vvv
764vmadd_d          0111 00001010 10011 ..... ..... .....    @vvv
765vmsub_b          0111 00001010 10100 ..... ..... .....    @vvv
766vmsub_h          0111 00001010 10101 ..... ..... .....    @vvv
767vmsub_w          0111 00001010 10110 ..... ..... .....    @vvv
768vmsub_d          0111 00001010 10111 ..... ..... .....    @vvv
769
770vmaddwev_h_b     0111 00001010 11000 ..... ..... .....    @vvv
771vmaddwev_w_h     0111 00001010 11001 ..... ..... .....    @vvv
772vmaddwev_d_w     0111 00001010 11010 ..... ..... .....    @vvv
773vmaddwev_q_d     0111 00001010 11011 ..... ..... .....    @vvv
774vmaddwod_h_b     0111 00001010 11100 ..... ..... .....    @vvv
775vmaddwod_w_h     0111 00001010 11101 ..... ..... .....    @vvv
776vmaddwod_d_w     0111 00001010 11110 ..... ..... .....    @vvv
777vmaddwod_q_d     0111 00001010 11111 ..... ..... .....    @vvv
778vmaddwev_h_bu    0111 00001011 01000 ..... ..... .....    @vvv
779vmaddwev_w_hu    0111 00001011 01001 ..... ..... .....    @vvv
780vmaddwev_d_wu    0111 00001011 01010 ..... ..... .....    @vvv
781vmaddwev_q_du    0111 00001011 01011 ..... ..... .....    @vvv
782vmaddwod_h_bu    0111 00001011 01100 ..... ..... .....    @vvv
783vmaddwod_w_hu    0111 00001011 01101 ..... ..... .....    @vvv
784vmaddwod_d_wu    0111 00001011 01110 ..... ..... .....    @vvv
785vmaddwod_q_du    0111 00001011 01111 ..... ..... .....    @vvv
786vmaddwev_h_bu_b  0111 00001011 11000 ..... ..... .....    @vvv
787vmaddwev_w_hu_h  0111 00001011 11001 ..... ..... .....    @vvv
788vmaddwev_d_wu_w  0111 00001011 11010 ..... ..... .....    @vvv
789vmaddwev_q_du_d  0111 00001011 11011 ..... ..... .....    @vvv
790vmaddwod_h_bu_b  0111 00001011 11100 ..... ..... .....    @vvv
791vmaddwod_w_hu_h  0111 00001011 11101 ..... ..... .....    @vvv
792vmaddwod_d_wu_w  0111 00001011 11110 ..... ..... .....    @vvv
793vmaddwod_q_du_d  0111 00001011 11111 ..... ..... .....    @vvv
794
795vdiv_b           0111 00001110 00000 ..... ..... .....    @vvv
796vdiv_h           0111 00001110 00001 ..... ..... .....    @vvv
797vdiv_w           0111 00001110 00010 ..... ..... .....    @vvv
798vdiv_d           0111 00001110 00011 ..... ..... .....    @vvv
799vdiv_bu          0111 00001110 01000 ..... ..... .....    @vvv
800vdiv_hu          0111 00001110 01001 ..... ..... .....    @vvv
801vdiv_wu          0111 00001110 01010 ..... ..... .....    @vvv
802vdiv_du          0111 00001110 01011 ..... ..... .....    @vvv
803vmod_b           0111 00001110 00100 ..... ..... .....    @vvv
804vmod_h           0111 00001110 00101 ..... ..... .....    @vvv
805vmod_w           0111 00001110 00110 ..... ..... .....    @vvv
806vmod_d           0111 00001110 00111 ..... ..... .....    @vvv
807vmod_bu          0111 00001110 01100 ..... ..... .....    @vvv
808vmod_hu          0111 00001110 01101 ..... ..... .....    @vvv
809vmod_wu          0111 00001110 01110 ..... ..... .....    @vvv
810vmod_du          0111 00001110 01111 ..... ..... .....    @vvv
811
812vsat_b           0111 00110010 01000 01 ... ..... .....   @vv_ui3
813vsat_h           0111 00110010 01000 1 .... ..... .....   @vv_ui4
814vsat_w           0111 00110010 01001 ..... ..... .....    @vv_ui5
815vsat_d           0111 00110010 0101 ...... ..... .....    @vv_ui6
816vsat_bu          0111 00110010 10000 01 ... ..... .....   @vv_ui3
817vsat_hu          0111 00110010 10000 1 .... ..... .....   @vv_ui4
818vsat_wu          0111 00110010 10001 ..... ..... .....    @vv_ui5
819vsat_du          0111 00110010 1001 ...... ..... .....    @vv_ui6
820
821vexth_h_b        0111 00101001 11101 11000 ..... .....    @vv
822vexth_w_h        0111 00101001 11101 11001 ..... .....    @vv
823vexth_d_w        0111 00101001 11101 11010 ..... .....    @vv
824vexth_q_d        0111 00101001 11101 11011 ..... .....    @vv
825vexth_hu_bu      0111 00101001 11101 11100 ..... .....    @vv
826vexth_wu_hu      0111 00101001 11101 11101 ..... .....    @vv
827vexth_du_wu      0111 00101001 11101 11110 ..... .....    @vv
828vexth_qu_du      0111 00101001 11101 11111 ..... .....    @vv
829
830vsigncov_b       0111 00010010 11100 ..... ..... .....    @vvv
831vsigncov_h       0111 00010010 11101 ..... ..... .....    @vvv
832vsigncov_w       0111 00010010 11110 ..... ..... .....    @vvv
833vsigncov_d       0111 00010010 11111 ..... ..... .....    @vvv
834
835vmskltz_b        0111 00101001 11000 10000 ..... .....    @vv
836vmskltz_h        0111 00101001 11000 10001 ..... .....    @vv
837vmskltz_w        0111 00101001 11000 10010 ..... .....    @vv
838vmskltz_d        0111 00101001 11000 10011 ..... .....    @vv
839vmskgez_b        0111 00101001 11000 10100 ..... .....    @vv
840vmsknz_b         0111 00101001 11000 11000 ..... .....    @vv
841
842vldi             0111 00111110 00 ............. .....     @v_i13
843
844vand_v           0111 00010010 01100 ..... ..... .....    @vvv
845vor_v            0111 00010010 01101 ..... ..... .....    @vvv
846vxor_v           0111 00010010 01110 ..... ..... .....    @vvv
847vnor_v           0111 00010010 01111 ..... ..... .....    @vvv
848vandn_v          0111 00010010 10000 ..... ..... .....    @vvv
849vorn_v           0111 00010010 10001 ..... ..... .....    @vvv
850
851vandi_b          0111 00111101 00 ........ ..... .....    @vv_ui8
852vori_b           0111 00111101 01 ........ ..... .....    @vv_ui8
853vxori_b          0111 00111101 10 ........ ..... .....    @vv_ui8
854vnori_b          0111 00111101 11 ........ ..... .....    @vv_ui8
855
856vsll_b           0111 00001110 10000 ..... ..... .....    @vvv
857vsll_h           0111 00001110 10001 ..... ..... .....    @vvv
858vsll_w           0111 00001110 10010 ..... ..... .....    @vvv
859vsll_d           0111 00001110 10011 ..... ..... .....    @vvv
860vslli_b          0111 00110010 11000 01 ... ..... .....   @vv_ui3
861vslli_h          0111 00110010 11000 1 .... ..... .....   @vv_ui4
862vslli_w          0111 00110010 11001 ..... ..... .....    @vv_ui5
863vslli_d          0111 00110010 1101 ...... ..... .....    @vv_ui6
864
865vsrl_b           0111 00001110 10100 ..... ..... .....    @vvv
866vsrl_h           0111 00001110 10101 ..... ..... .....    @vvv
867vsrl_w           0111 00001110 10110 ..... ..... .....    @vvv
868vsrl_d           0111 00001110 10111 ..... ..... .....    @vvv
869vsrli_b          0111 00110011 00000 01 ... ..... .....   @vv_ui3
870vsrli_h          0111 00110011 00000 1 .... ..... .....   @vv_ui4
871vsrli_w          0111 00110011 00001 ..... ..... .....    @vv_ui5
872vsrli_d          0111 00110011 0001 ...... ..... .....    @vv_ui6
873
874vsra_b           0111 00001110 11000 ..... ..... .....    @vvv
875vsra_h           0111 00001110 11001 ..... ..... .....    @vvv
876vsra_w           0111 00001110 11010 ..... ..... .....    @vvv
877vsra_d           0111 00001110 11011 ..... ..... .....    @vvv
878vsrai_b          0111 00110011 01000 01 ... ..... .....   @vv_ui3
879vsrai_h          0111 00110011 01000 1 .... ..... .....   @vv_ui4
880vsrai_w          0111 00110011 01001 ..... ..... .....    @vv_ui5
881vsrai_d          0111 00110011 0101 ...... ..... .....    @vv_ui6
882
883vrotr_b          0111 00001110 11100 ..... ..... .....    @vvv
884vrotr_h          0111 00001110 11101 ..... ..... .....    @vvv
885vrotr_w          0111 00001110 11110 ..... ..... .....    @vvv
886vrotr_d          0111 00001110 11111 ..... ..... .....    @vvv
887vrotri_b         0111 00101010 00000 01 ... ..... .....   @vv_ui3
888vrotri_h         0111 00101010 00000 1 .... ..... .....   @vv_ui4
889vrotri_w         0111 00101010 00001 ..... ..... .....    @vv_ui5
890vrotri_d         0111 00101010 0001 ...... ..... .....    @vv_ui6
891
892vsllwil_h_b      0111 00110000 10000 01 ... ..... .....   @vv_ui3
893vsllwil_w_h      0111 00110000 10000 1 .... ..... .....   @vv_ui4
894vsllwil_d_w      0111 00110000 10001 ..... ..... .....    @vv_ui5
895vextl_q_d        0111 00110000 10010 00000 ..... .....    @vv
896vsllwil_hu_bu    0111 00110000 11000 01 ... ..... .....   @vv_ui3
897vsllwil_wu_hu    0111 00110000 11000 1 .... ..... .....   @vv_ui4
898vsllwil_du_wu    0111 00110000 11001 ..... ..... .....    @vv_ui5
899vextl_qu_du      0111 00110000 11010 00000 ..... .....    @vv
900
901vsrlr_b          0111 00001111 00000 ..... ..... .....    @vvv
902vsrlr_h          0111 00001111 00001 ..... ..... .....    @vvv
903vsrlr_w          0111 00001111 00010 ..... ..... .....    @vvv
904vsrlr_d          0111 00001111 00011 ..... ..... .....    @vvv
905vsrlri_b         0111 00101010 01000 01 ... ..... .....   @vv_ui3
906vsrlri_h         0111 00101010 01000 1 .... ..... .....   @vv_ui4
907vsrlri_w         0111 00101010 01001 ..... ..... .....    @vv_ui5
908vsrlri_d         0111 00101010 0101 ...... ..... .....    @vv_ui6
909
910vsrar_b          0111 00001111 00100 ..... ..... .....    @vvv
911vsrar_h          0111 00001111 00101 ..... ..... .....    @vvv
912vsrar_w          0111 00001111 00110 ..... ..... .....    @vvv
913vsrar_d          0111 00001111 00111 ..... ..... .....    @vvv
914vsrari_b         0111 00101010 10000 01 ... ..... .....   @vv_ui3
915vsrari_h         0111 00101010 10000 1 .... ..... .....   @vv_ui4
916vsrari_w         0111 00101010 10001 ..... ..... .....    @vv_ui5
917vsrari_d         0111 00101010 1001 ...... ..... .....    @vv_ui6
918
919vsrln_b_h        0111 00001111 01001 ..... ..... .....    @vvv
920vsrln_h_w        0111 00001111 01010 ..... ..... .....    @vvv
921vsrln_w_d        0111 00001111 01011 ..... ..... .....    @vvv
922vsran_b_h        0111 00001111 01101 ..... ..... .....    @vvv
923vsran_h_w        0111 00001111 01110 ..... ..... .....    @vvv
924vsran_w_d        0111 00001111 01111 ..... ..... .....    @vvv
925
926vsrlni_b_h       0111 00110100 00000 1 .... ..... .....   @vv_ui4
927vsrlni_h_w       0111 00110100 00001 ..... ..... .....    @vv_ui5
928vsrlni_w_d       0111 00110100 0001 ...... ..... .....    @vv_ui6
929vsrlni_d_q       0111 00110100 001 ....... ..... .....    @vv_ui7
930vsrani_b_h       0111 00110101 10000 1 .... ..... .....   @vv_ui4
931vsrani_h_w       0111 00110101 10001 ..... ..... .....    @vv_ui5
932vsrani_w_d       0111 00110101 1001 ...... ..... .....    @vv_ui6
933vsrani_d_q       0111 00110101 101 ....... ..... .....    @vv_ui7
934
935vsrlrn_b_h       0111 00001111 10001 ..... ..... .....    @vvv
936vsrlrn_h_w       0111 00001111 10010 ..... ..... .....    @vvv
937vsrlrn_w_d       0111 00001111 10011 ..... ..... .....    @vvv
938vsrarn_b_h       0111 00001111 10101 ..... ..... .....    @vvv
939vsrarn_h_w       0111 00001111 10110 ..... ..... .....    @vvv
940vsrarn_w_d       0111 00001111 10111 ..... ..... .....    @vvv
941
942vsrlrni_b_h      0111 00110100 01000 1 .... ..... .....   @vv_ui4
943vsrlrni_h_w      0111 00110100 01001 ..... ..... .....    @vv_ui5
944vsrlrni_w_d      0111 00110100 0101 ...... ..... .....    @vv_ui6
945vsrlrni_d_q      0111 00110100 011 ....... ..... .....    @vv_ui7
946vsrarni_b_h      0111 00110101 11000 1 .... ..... .....   @vv_ui4
947vsrarni_h_w      0111 00110101 11001 ..... ..... .....    @vv_ui5
948vsrarni_w_d      0111 00110101 1101 ...... ..... .....    @vv_ui6
949vsrarni_d_q      0111 00110101 111 ....... ..... .....    @vv_ui7
950
951vssrln_b_h       0111 00001111 11001 ..... ..... .....    @vvv
952vssrln_h_w       0111 00001111 11010 ..... ..... .....    @vvv
953vssrln_w_d       0111 00001111 11011 ..... ..... .....    @vvv
954vssran_b_h       0111 00001111 11101 ..... ..... .....    @vvv
955vssran_h_w       0111 00001111 11110 ..... ..... .....    @vvv
956vssran_w_d       0111 00001111 11111 ..... ..... .....    @vvv
957vssrln_bu_h      0111 00010000 01001 ..... ..... .....    @vvv
958vssrln_hu_w      0111 00010000 01010 ..... ..... .....    @vvv
959vssrln_wu_d      0111 00010000 01011 ..... ..... .....    @vvv
960vssran_bu_h      0111 00010000 01101 ..... ..... .....    @vvv
961vssran_hu_w      0111 00010000 01110 ..... ..... .....    @vvv
962vssran_wu_d      0111 00010000 01111 ..... ..... .....    @vvv
963
964vssrlni_b_h      0111 00110100 10000 1 .... ..... .....   @vv_ui4
965vssrlni_h_w      0111 00110100 10001 ..... ..... .....    @vv_ui5
966vssrlni_w_d      0111 00110100 1001 ...... ..... .....    @vv_ui6
967vssrlni_d_q      0111 00110100 101 ....... ..... .....    @vv_ui7
968vssrani_b_h      0111 00110110 00000 1 .... ..... .....   @vv_ui4
969vssrani_h_w      0111 00110110 00001 ..... ..... .....    @vv_ui5
970vssrani_w_d      0111 00110110 0001 ...... ..... .....    @vv_ui6
971vssrani_d_q      0111 00110110 001 ....... ..... .....    @vv_ui7
972vssrlni_bu_h     0111 00110100 11000 1 .... ..... .....   @vv_ui4
973vssrlni_hu_w     0111 00110100 11001 ..... ..... .....    @vv_ui5
974vssrlni_wu_d     0111 00110100 1101 ...... ..... .....    @vv_ui6
975vssrlni_du_q     0111 00110100 111 ....... ..... .....    @vv_ui7
976vssrani_bu_h     0111 00110110 01000 1 .... ..... .....   @vv_ui4
977vssrani_hu_w     0111 00110110 01001 ..... ..... .....    @vv_ui5
978vssrani_wu_d     0111 00110110 0101 ...... ..... .....    @vv_ui6
979vssrani_du_q     0111 00110110 011 ....... ..... .....    @vv_ui7
980
981vssrlrn_b_h      0111 00010000 00001 ..... ..... .....    @vvv
982vssrlrn_h_w      0111 00010000 00010 ..... ..... .....    @vvv
983vssrlrn_w_d      0111 00010000 00011 ..... ..... .....    @vvv
984vssrarn_b_h      0111 00010000 00101 ..... ..... .....    @vvv
985vssrarn_h_w      0111 00010000 00110 ..... ..... .....    @vvv
986vssrarn_w_d      0111 00010000 00111 ..... ..... .....    @vvv
987vssrlrn_bu_h     0111 00010000 10001 ..... ..... .....    @vvv
988vssrlrn_hu_w     0111 00010000 10010 ..... ..... .....    @vvv
989vssrlrn_wu_d     0111 00010000 10011 ..... ..... .....    @vvv
990vssrarn_bu_h     0111 00010000 10101 ..... ..... .....    @vvv
991vssrarn_hu_w     0111 00010000 10110 ..... ..... .....    @vvv
992vssrarn_wu_d     0111 00010000 10111 ..... ..... .....    @vvv
993
994vssrlrni_b_h     0111 00110101 00000 1 .... ..... .....   @vv_ui4
995vssrlrni_h_w     0111 00110101 00001 ..... ..... .....    @vv_ui5
996vssrlrni_w_d     0111 00110101 0001 ...... ..... .....    @vv_ui6
997vssrlrni_d_q     0111 00110101 001 ....... ..... .....    @vv_ui7
998vssrarni_b_h     0111 00110110 10000 1 .... ..... .....   @vv_ui4
999vssrarni_h_w     0111 00110110 10001 ..... ..... .....    @vv_ui5
1000vssrarni_w_d     0111 00110110 1001 ...... ..... .....    @vv_ui6
1001vssrarni_d_q     0111 00110110 101 ....... ..... .....    @vv_ui7
1002vssrlrni_bu_h    0111 00110101 01000 1 .... ..... .....   @vv_ui4
1003vssrlrni_hu_w    0111 00110101 01001 ..... ..... .....    @vv_ui5
1004vssrlrni_wu_d    0111 00110101 0101 ...... ..... .....    @vv_ui6
1005vssrlrni_du_q    0111 00110101 011 ....... ..... .....    @vv_ui7
1006vssrarni_bu_h    0111 00110110 11000 1 .... ..... .....   @vv_ui4
1007vssrarni_hu_w    0111 00110110 11001 ..... ..... .....    @vv_ui5
1008vssrarni_wu_d    0111 00110110 1101 ...... ..... .....    @vv_ui6
1009vssrarni_du_q    0111 00110110 111 ....... ..... .....    @vv_ui7
1010
1011vclo_b           0111 00101001 11000 00000 ..... .....    @vv
1012vclo_h           0111 00101001 11000 00001 ..... .....    @vv
1013vclo_w           0111 00101001 11000 00010 ..... .....    @vv
1014vclo_d           0111 00101001 11000 00011 ..... .....    @vv
1015vclz_b           0111 00101001 11000 00100 ..... .....    @vv
1016vclz_h           0111 00101001 11000 00101 ..... .....    @vv
1017vclz_w           0111 00101001 11000 00110 ..... .....    @vv
1018vclz_d           0111 00101001 11000 00111 ..... .....    @vv
1019
1020vpcnt_b          0111 00101001 11000 01000 ..... .....    @vv
1021vpcnt_h          0111 00101001 11000 01001 ..... .....    @vv
1022vpcnt_w          0111 00101001 11000 01010 ..... .....    @vv
1023vpcnt_d          0111 00101001 11000 01011 ..... .....    @vv
1024
1025vbitclr_b        0111 00010000 11000 ..... ..... .....    @vvv
1026vbitclr_h        0111 00010000 11001 ..... ..... .....    @vvv
1027vbitclr_w        0111 00010000 11010 ..... ..... .....    @vvv
1028vbitclr_d        0111 00010000 11011 ..... ..... .....    @vvv
1029vbitclri_b       0111 00110001 00000 01 ... ..... .....   @vv_ui3
1030vbitclri_h       0111 00110001 00000 1 .... ..... .....   @vv_ui4
1031vbitclri_w       0111 00110001 00001 ..... ..... .....    @vv_ui5
1032vbitclri_d       0111 00110001 0001 ...... ..... .....    @vv_ui6
1033vbitset_b        0111 00010000 11100 ..... ..... .....    @vvv
1034vbitset_h        0111 00010000 11101 ..... ..... .....    @vvv
1035vbitset_w        0111 00010000 11110 ..... ..... .....    @vvv
1036vbitset_d        0111 00010000 11111 ..... ..... .....    @vvv
1037vbitseti_b       0111 00110001 01000 01 ... ..... .....   @vv_ui3
1038vbitseti_h       0111 00110001 01000 1 .... ..... .....   @vv_ui4
1039vbitseti_w       0111 00110001 01001 ..... ..... .....    @vv_ui5
1040vbitseti_d       0111 00110001 0101 ...... ..... .....    @vv_ui6
1041vbitrev_b        0111 00010001 00000 ..... ..... .....    @vvv
1042vbitrev_h        0111 00010001 00001 ..... ..... .....    @vvv
1043vbitrev_w        0111 00010001 00010 ..... ..... .....    @vvv
1044vbitrev_d        0111 00010001 00011 ..... ..... .....    @vvv
1045vbitrevi_b       0111 00110001 10000 01 ... ..... .....   @vv_ui3
1046vbitrevi_h       0111 00110001 10000 1 .... ..... .....   @vv_ui4
1047vbitrevi_w       0111 00110001 10001 ..... ..... .....    @vv_ui5
1048vbitrevi_d       0111 00110001 1001 ...... ..... .....    @vv_ui6
1049
1050vfrstp_b         0111 00010010 10110 ..... ..... .....    @vvv
1051vfrstp_h         0111 00010010 10111 ..... ..... .....    @vvv
1052vfrstpi_b        0111 00101001 10100 ..... ..... .....    @vv_ui5
1053vfrstpi_h        0111 00101001 10101 ..... ..... .....    @vv_ui5
1054
1055vfadd_s          0111 00010011 00001 ..... ..... .....    @vvv
1056vfadd_d          0111 00010011 00010 ..... ..... .....    @vvv
1057vfsub_s          0111 00010011 00101 ..... ..... .....    @vvv
1058vfsub_d          0111 00010011 00110 ..... ..... .....    @vvv
1059vfmul_s          0111 00010011 10001 ..... ..... .....    @vvv
1060vfmul_d          0111 00010011 10010 ..... ..... .....    @vvv
1061vfdiv_s          0111 00010011 10101 ..... ..... .....    @vvv
1062vfdiv_d          0111 00010011 10110 ..... ..... .....    @vvv
1063
1064vfmadd_s         0000 10010001 ..... ..... ..... .....    @vvvv
1065vfmadd_d         0000 10010010 ..... ..... ..... .....    @vvvv
1066vfmsub_s         0000 10010101 ..... ..... ..... .....    @vvvv
1067vfmsub_d         0000 10010110 ..... ..... ..... .....    @vvvv
1068vfnmadd_s        0000 10011001 ..... ..... ..... .....    @vvvv
1069vfnmadd_d        0000 10011010 ..... ..... ..... .....    @vvvv
1070vfnmsub_s        0000 10011101 ..... ..... ..... .....    @vvvv
1071vfnmsub_d        0000 10011110 ..... ..... ..... .....    @vvvv
1072
1073vfmax_s          0111 00010011 11001 ..... ..... .....    @vvv
1074vfmax_d          0111 00010011 11010 ..... ..... .....    @vvv
1075vfmin_s          0111 00010011 11101 ..... ..... .....    @vvv
1076vfmin_d          0111 00010011 11110 ..... ..... .....    @vvv
1077
1078vfmaxa_s         0111 00010100 00001 ..... ..... .....    @vvv
1079vfmaxa_d         0111 00010100 00010 ..... ..... .....    @vvv
1080vfmina_s         0111 00010100 00101 ..... ..... .....    @vvv
1081vfmina_d         0111 00010100 00110 ..... ..... .....    @vvv
1082
1083vflogb_s         0111 00101001 11001 10001 ..... .....    @vv
1084vflogb_d         0111 00101001 11001 10010 ..... .....    @vv
1085
1086vfclass_s        0111 00101001 11001 10101 ..... .....    @vv
1087vfclass_d        0111 00101001 11001 10110 ..... .....    @vv
1088
1089vfsqrt_s         0111 00101001 11001 11001 ..... .....    @vv
1090vfsqrt_d         0111 00101001 11001 11010 ..... .....    @vv
1091vfrecip_s        0111 00101001 11001 11101 ..... .....    @vv
1092vfrecip_d        0111 00101001 11001 11110 ..... .....    @vv
1093vfrsqrt_s        0111 00101001 11010 00001 ..... .....    @vv
1094vfrsqrt_d        0111 00101001 11010 00010 ..... .....    @vv
1095
1096vfcvtl_s_h       0111 00101001 11011 11010 ..... .....    @vv
1097vfcvth_s_h       0111 00101001 11011 11011 ..... .....    @vv
1098vfcvtl_d_s       0111 00101001 11011 11100 ..... .....    @vv
1099vfcvth_d_s       0111 00101001 11011 11101 ..... .....    @vv
1100vfcvt_h_s        0111 00010100 01100 ..... ..... .....    @vvv
1101vfcvt_s_d        0111 00010100 01101 ..... ..... .....    @vvv
1102
1103vfrint_s         0111 00101001 11010 01101 ..... .....    @vv
1104vfrint_d         0111 00101001 11010 01110 ..... .....    @vv
1105vfrintrm_s       0111 00101001 11010 10001 ..... .....    @vv
1106vfrintrm_d       0111 00101001 11010 10010 ..... .....    @vv
1107vfrintrp_s       0111 00101001 11010 10101 ..... .....    @vv
1108vfrintrp_d       0111 00101001 11010 10110 ..... .....    @vv
1109vfrintrz_s       0111 00101001 11010 11001 ..... .....    @vv
1110vfrintrz_d       0111 00101001 11010 11010 ..... .....    @vv
1111vfrintrne_s      0111 00101001 11010 11101 ..... .....    @vv
1112vfrintrne_d      0111 00101001 11010 11110 ..... .....    @vv
1113
1114vftint_w_s       0111 00101001 11100 01100 ..... .....    @vv
1115vftint_l_d       0111 00101001 11100 01101 ..... .....    @vv
1116vftintrm_w_s     0111 00101001 11100 01110 ..... .....    @vv
1117vftintrm_l_d     0111 00101001 11100 01111 ..... .....    @vv
1118vftintrp_w_s     0111 00101001 11100 10000 ..... .....    @vv
1119vftintrp_l_d     0111 00101001 11100 10001 ..... .....    @vv
1120vftintrz_w_s     0111 00101001 11100 10010 ..... .....    @vv
1121vftintrz_l_d     0111 00101001 11100 10011 ..... .....    @vv
1122vftintrne_w_s    0111 00101001 11100 10100 ..... .....    @vv
1123vftintrne_l_d    0111 00101001 11100 10101 ..... .....    @vv
1124vftint_wu_s      0111 00101001 11100 10110 ..... .....    @vv
1125vftint_lu_d      0111 00101001 11100 10111 ..... .....    @vv
1126vftintrz_wu_s    0111 00101001 11100 11100 ..... .....    @vv
1127vftintrz_lu_d    0111 00101001 11100 11101 ..... .....    @vv
1128vftint_w_d       0111 00010100 10011 ..... ..... .....    @vvv
1129vftintrm_w_d     0111 00010100 10100 ..... ..... .....    @vvv
1130vftintrp_w_d     0111 00010100 10101 ..... ..... .....    @vvv
1131vftintrz_w_d     0111 00010100 10110 ..... ..... .....    @vvv
1132vftintrne_w_d    0111 00010100 10111 ..... ..... .....    @vvv
1133vftintl_l_s      0111 00101001 11101 00000 ..... .....    @vv
1134vftinth_l_s      0111 00101001 11101 00001 ..... .....    @vv
1135vftintrml_l_s    0111 00101001 11101 00010 ..... .....    @vv
1136vftintrmh_l_s    0111 00101001 11101 00011 ..... .....    @vv
1137vftintrpl_l_s    0111 00101001 11101 00100 ..... .....    @vv
1138vftintrph_l_s    0111 00101001 11101 00101 ..... .....    @vv
1139vftintrzl_l_s    0111 00101001 11101 00110 ..... .....    @vv
1140vftintrzh_l_s    0111 00101001 11101 00111 ..... .....    @vv
1141vftintrnel_l_s   0111 00101001 11101 01000 ..... .....    @vv
1142vftintrneh_l_s   0111 00101001 11101 01001 ..... .....    @vv
1143
1144vffint_s_w       0111 00101001 11100 00000 ..... .....    @vv
1145vffint_s_wu      0111 00101001 11100 00001 ..... .....    @vv
1146vffint_d_l       0111 00101001 11100 00010 ..... .....    @vv
1147vffint_d_lu      0111 00101001 11100 00011 ..... .....    @vv
1148vffintl_d_w      0111 00101001 11100 00100 ..... .....    @vv
1149vffinth_d_w      0111 00101001 11100 00101 ..... .....    @vv
1150vffint_s_l       0111 00010100 10000 ..... ..... .....    @vvv
1151
1152vseq_b           0111 00000000 00000 ..... ..... .....    @vvv
1153vseq_h           0111 00000000 00001 ..... ..... .....    @vvv
1154vseq_w           0111 00000000 00010 ..... ..... .....    @vvv
1155vseq_d           0111 00000000 00011 ..... ..... .....    @vvv
1156vseqi_b          0111 00101000 00000 ..... ..... .....    @vv_i5
1157vseqi_h          0111 00101000 00001 ..... ..... .....    @vv_i5
1158vseqi_w          0111 00101000 00010 ..... ..... .....    @vv_i5
1159vseqi_d          0111 00101000 00011 ..... ..... .....    @vv_i5
1160
1161vsle_b           0111 00000000 00100 ..... ..... .....    @vvv
1162vsle_h           0111 00000000 00101 ..... ..... .....    @vvv
1163vsle_w           0111 00000000 00110 ..... ..... .....    @vvv
1164vsle_d           0111 00000000 00111 ..... ..... .....    @vvv
1165vslei_b          0111 00101000 00100 ..... ..... .....    @vv_i5
1166vslei_h          0111 00101000 00101 ..... ..... .....    @vv_i5
1167vslei_w          0111 00101000 00110 ..... ..... .....    @vv_i5
1168vslei_d          0111 00101000 00111 ..... ..... .....    @vv_i5
1169vsle_bu          0111 00000000 01000 ..... ..... .....    @vvv
1170vsle_hu          0111 00000000 01001 ..... ..... .....    @vvv
1171vsle_wu          0111 00000000 01010 ..... ..... .....    @vvv
1172vsle_du          0111 00000000 01011 ..... ..... .....    @vvv
1173vslei_bu         0111 00101000 01000 ..... ..... .....    @vv_ui5
1174vslei_hu         0111 00101000 01001 ..... ..... .....    @vv_ui5
1175vslei_wu         0111 00101000 01010 ..... ..... .....    @vv_ui5
1176vslei_du         0111 00101000 01011 ..... ..... .....    @vv_ui5
1177
1178vslt_b           0111 00000000 01100 ..... ..... .....    @vvv
1179vslt_h           0111 00000000 01101 ..... ..... .....    @vvv
1180vslt_w           0111 00000000 01110 ..... ..... .....    @vvv
1181vslt_d           0111 00000000 01111 ..... ..... .....    @vvv
1182vslti_b          0111 00101000 01100 ..... ..... .....    @vv_i5
1183vslti_h          0111 00101000 01101 ..... ..... .....    @vv_i5
1184vslti_w          0111 00101000 01110 ..... ..... .....    @vv_i5
1185vslti_d          0111 00101000 01111 ..... ..... .....    @vv_i5
1186vslt_bu          0111 00000000 10000 ..... ..... .....    @vvv
1187vslt_hu          0111 00000000 10001 ..... ..... .....    @vvv
1188vslt_wu          0111 00000000 10010 ..... ..... .....    @vvv
1189vslt_du          0111 00000000 10011 ..... ..... .....    @vvv
1190vslti_bu         0111 00101000 10000 ..... ..... .....    @vv_ui5
1191vslti_hu         0111 00101000 10001 ..... ..... .....    @vv_ui5
1192vslti_wu         0111 00101000 10010 ..... ..... .....    @vv_ui5
1193vslti_du         0111 00101000 10011 ..... ..... .....    @vv_ui5
1194
1195vfcmp_cond_s     0000 11000101 ..... ..... ..... .....    @vvv_fcond
1196vfcmp_cond_d     0000 11000110 ..... ..... ..... .....    @vvv_fcond
1197
1198vbitsel_v        0000 11010001 ..... ..... ..... .....    @vvvv
1199
1200vbitseli_b       0111 00111100 01 ........ ..... .....    @vv_ui8
1201
1202vseteqz_v        0111 00101001 11001 00110 ..... 00 ...   @cv
1203vsetnez_v        0111 00101001 11001 00111 ..... 00 ...   @cv
1204vsetanyeqz_b     0111 00101001 11001 01000 ..... 00 ...   @cv
1205vsetanyeqz_h     0111 00101001 11001 01001 ..... 00 ...   @cv
1206vsetanyeqz_w     0111 00101001 11001 01010 ..... 00 ...   @cv
1207vsetanyeqz_d     0111 00101001 11001 01011 ..... 00 ...   @cv
1208vsetallnez_b     0111 00101001 11001 01100 ..... 00 ...   @cv
1209vsetallnez_h     0111 00101001 11001 01101 ..... 00 ...   @cv
1210vsetallnez_w     0111 00101001 11001 01110 ..... 00 ...   @cv
1211vsetallnez_d     0111 00101001 11001 01111 ..... 00 ...   @cv
1212
1213vinsgr2vr_b      0111 00101110 10111 0 .... ..... .....   @vr_ui4
1214vinsgr2vr_h      0111 00101110 10111 10 ... ..... .....   @vr_ui3
1215vinsgr2vr_w      0111 00101110 10111 110 .. ..... .....   @vr_ui2
1216vinsgr2vr_d      0111 00101110 10111 1110 . ..... .....   @vr_ui1
1217vpickve2gr_b     0111 00101110 11111 0 .... ..... .....   @rv_ui4
1218vpickve2gr_h     0111 00101110 11111 10 ... ..... .....   @rv_ui3
1219vpickve2gr_w     0111 00101110 11111 110 .. ..... .....   @rv_ui2
1220vpickve2gr_d     0111 00101110 11111 1110 . ..... .....   @rv_ui1
1221vpickve2gr_bu    0111 00101111 00111 0 .... ..... .....   @rv_ui4
1222vpickve2gr_hu    0111 00101111 00111 10 ... ..... .....   @rv_ui3
1223vpickve2gr_wu    0111 00101111 00111 110 .. ..... .....   @rv_ui2
1224vpickve2gr_du    0111 00101111 00111 1110 . ..... .....   @rv_ui1
1225
1226vreplgr2vr_b     0111 00101001 11110 00000 ..... .....    @vr
1227vreplgr2vr_h     0111 00101001 11110 00001 ..... .....    @vr
1228vreplgr2vr_w     0111 00101001 11110 00010 ..... .....    @vr
1229vreplgr2vr_d     0111 00101001 11110 00011 ..... .....    @vr
1230
1231vreplve_b        0111 00010010 00100 ..... ..... .....    @vvr
1232vreplve_h        0111 00010010 00101 ..... ..... .....    @vvr
1233vreplve_w        0111 00010010 00110 ..... ..... .....    @vvr
1234vreplve_d        0111 00010010 00111 ..... ..... .....    @vvr
1235vreplvei_b       0111 00101111 01111 0 .... ..... .....   @vv_ui4
1236vreplvei_h       0111 00101111 01111 10 ... ..... .....   @vv_ui3
1237vreplvei_w       0111 00101111 01111 110 .. ..... .....   @vv_ui2
1238vreplvei_d       0111 00101111 01111 1110 . ..... .....   @vv_ui1
1239
1240vbsll_v          0111 00101000 11100 ..... ..... .....    @vv_ui5
1241vbsrl_v          0111 00101000 11101 ..... ..... .....    @vv_ui5
1242
1243vpackev_b        0111 00010001 01100 ..... ..... .....    @vvv
1244vpackev_h        0111 00010001 01101 ..... ..... .....    @vvv
1245vpackev_w        0111 00010001 01110 ..... ..... .....    @vvv
1246vpackev_d        0111 00010001 01111 ..... ..... .....    @vvv
1247vpackod_b        0111 00010001 10000 ..... ..... .....    @vvv
1248vpackod_h        0111 00010001 10001 ..... ..... .....    @vvv
1249vpackod_w        0111 00010001 10010 ..... ..... .....    @vvv
1250vpackod_d        0111 00010001 10011 ..... ..... .....    @vvv
1251
1252vpickev_b        0111 00010001 11100 ..... ..... .....    @vvv
1253vpickev_h        0111 00010001 11101 ..... ..... .....    @vvv
1254vpickev_w        0111 00010001 11110 ..... ..... .....    @vvv
1255vpickev_d        0111 00010001 11111 ..... ..... .....    @vvv
1256vpickod_b        0111 00010010 00000 ..... ..... .....    @vvv
1257vpickod_h        0111 00010010 00001 ..... ..... .....    @vvv
1258vpickod_w        0111 00010010 00010 ..... ..... .....    @vvv
1259vpickod_d        0111 00010010 00011 ..... ..... .....    @vvv
1260
1261vilvl_b          0111 00010001 10100 ..... ..... .....    @vvv
1262vilvl_h          0111 00010001 10101 ..... ..... .....    @vvv
1263vilvl_w          0111 00010001 10110 ..... ..... .....    @vvv
1264vilvl_d          0111 00010001 10111 ..... ..... .....    @vvv
1265vilvh_b          0111 00010001 11000 ..... ..... .....    @vvv
1266vilvh_h          0111 00010001 11001 ..... ..... .....    @vvv
1267vilvh_w          0111 00010001 11010 ..... ..... .....    @vvv
1268vilvh_d          0111 00010001 11011 ..... ..... .....    @vvv
1269
1270vshuf_b          0000 11010101 ..... ..... ..... .....    @vvvv
1271vshuf_h          0111 00010111 10101 ..... ..... .....    @vvv
1272vshuf_w          0111 00010111 10110 ..... ..... .....    @vvv
1273vshuf_d          0111 00010111 10111 ..... ..... .....    @vvv
1274vshuf4i_b        0111 00111001 00 ........ ..... .....    @vv_ui8
1275vshuf4i_h        0111 00111001 01 ........ ..... .....    @vv_ui8
1276vshuf4i_w        0111 00111001 10 ........ ..... .....    @vv_ui8
1277vshuf4i_d        0111 00111001 11 ........ ..... .....    @vv_ui8
1278
1279vpermi_w         0111 00111110 01 ........ ..... .....    @vv_ui8
1280
1281vextrins_d       0111 00111000 00 ........ ..... .....    @vv_ui8
1282vextrins_w       0111 00111000 01 ........ ..... .....    @vv_ui8
1283vextrins_h       0111 00111000 10 ........ ..... .....    @vv_ui8
1284vextrins_b       0111 00111000 11 ........ ..... .....    @vv_ui8
1285
1286vld              0010 110000 ............ ..... .....     @vr_i12
1287vst              0010 110001 ............ ..... .....     @vr_i12
1288vldx             0011 10000100 00000 ..... ..... .....    @vrr
1289vstx             0011 10000100 01000 ..... ..... .....    @vrr
1290
1291vldrepl_d        0011 00000001 0 ......... ..... .....    @vr_i9
1292vldrepl_w        0011 00000010 .......... ..... .....     @vr_i10
1293vldrepl_h        0011 0000010 ........... ..... .....     @vr_i11
1294vldrepl_b        0011 000010 ............ ..... .....     @vr_i12
1295vstelm_d         0011 00010001 0 . ........ ..... .....   @vr_i8i1
1296vstelm_w         0011 00010010 .. ........ ..... .....    @vr_i8i2
1297vstelm_h         0011 0001010 ... ........ ..... .....    @vr_i8i3
1298vstelm_b         0011 000110 .... ........ ..... .....    @vr_i8i4
1299