# SPDX-License-Identifier: GPL-2.0-or-later
#
# LoongArch instruction decode definitions.
#
# Copyright (c) 2021 Loongson Technology Corporation Limited
#

#
# Fields
#
%i14s2     10:s14       !function=shl_2
%sa2p1     15:2         !function=plus_1
%offs21    0:s5 10:16   !function=shl_2
%offs16    10:s16       !function=shl_2
%offs26    0:s10 10:16  !function=shl_2

#
# Argument sets
#
&i            imm
&r_i          rd imm
&rr           rd rj
&rr_jk        rj rk
&rrr          rd rj rk
&rr_i         rd rj imm
&hint_r_i     hint rj imm
&rrr_sa       rd rj rk sa
&rr_ms_ls     rd rj ms ls
&ff           fd fj
&fff          fd fj fk
&ffff         fd fj fk fa
&cff_fcond    cd fj fk fcond
&fffc         fd fj fk ca
&fr           fd rj
&rf           rd fj
&fcsrd_r      fcsrd rj
&r_fcsrs      rd fcsrs
&cf           cd fj
&fc           fd cj
&cr           cd rj
&rc           rd cj
&frr          fd rj rk
&fr_i         fd rj imm
&r_offs       rj offs
&c_offs       cj offs
&offs         offs
&rr_offs      rj rd offs
&r_csr        rd csr
&rr_csr       rd rj csr
&empty
&i_rr         imm rj rk
&cop_r_i      cop rj imm
&j_i          rj imm

#
# Formats
#
@i15                       .... ........ ..... imm:15    &i
@rr               .... ........ ..... ..... rj:5 rd:5    &rr
@rr_jk            .... ........ ..... rk:5 rj:5 .....    &rr_jk
@rrr               .... ........ ..... rk:5 rj:5 rd:5    &rrr
@r_i20                          .... ... imm:s20 rd:5    &r_i
@rr_ui5           .... ........ ..... imm:5 rj:5 rd:5    &rr_i
@rr_ui6            .... ........ .... imm:6 rj:5 rd:5    &rr_i
@rr_ui8              .. ........ .... imm:8 rj:5 rd:5    &rr_i
@rr_i12                 .... ...... imm:s12 rj:5 rd:5    &rr_i
@rr_ui12                 .... ...... imm:12 rj:5 rd:5    &rr_i
@rr_i14s2         .... ....  .............. rj:5 rd:5    &rr_i imm=%i14s2
@rr_i16                     .... .. imm:s16 rj:5 rd:5    &rr_i
@rr_i16s2         .... ..  ................ rj:5 rd:5    &rr_i imm=%offs16
@hint_r_i12           .... ...... imm:s12 rj:5 hint:5    &hint_r_i
@rrr_sa2p1        .... ........ ... .. rk:5 rj:5 rd:5    &rrr_sa  sa=%sa2p1
@rrr_sa2        .... ........ ... sa:2 rk:5 rj:5 rd:5    &rrr_sa
@rrr_sa3         .... ........ .. sa:3 rk:5 rj:5 rd:5    &rrr_sa
@rr_2bw            .... ....... ms:5 . ls:5 rj:5 rd:5    &rr_ms_ls
@rr_2bd               .... ...... ms:6 ls:6 rj:5 rd:5    &rr_ms_ls
@ff               .... ........ ..... ..... fj:5 fd:5    &ff
@fff               .... ........ ..... fk:5 fj:5 fd:5    &fff
@ffff               .... ........ fa:5 fk:5 fj:5 fd:5    &ffff
@cff_fcond    .... ........ fcond:5 fk:5 fj:5 .. cd:3    &cff_fcond
@fffc            .... ........ .. ca:3 fk:5 fj:5 fd:5    &fffc
@fr               .... ........ ..... ..... rj:5 fd:5    &fr
@rf               .... ........ ..... ..... fj:5 rd:5    &rf
@fcsrd_r       .... ........ ..... ..... rj:5 fcsrd:5    &fcsrd_r
@r_fcsrs       .... ........ ..... ..... fcsrs:5 rd:5    &r_fcsrs
@cf            .... ........ ..... ..... fj:5 .. cd:3    &cf
@fc            .... ........ ..... ..... .. cj:3 fd:5    &fc
@cr            .... ........ ..... ..... rj:5 .. cd:3    &cr
@rc            .... ........ ..... ..... .. cj:3 rd:5    &rc
@frr               .... ........ ..... rk:5 rj:5 fd:5    &frr
@fr_i12                 .... ...... imm:s12 rj:5 fd:5    &fr_i
@r_offs21         .... .. ................ rj:5 .....    &r_offs      offs=%offs21
@c_offs21      .... .. ................ .. cj:3 .....    &c_offs      offs=%offs21
@offs26            .... .. ..........................    &offs        offs=%offs26
@rr_offs16         .... .. ................ rj:5 rd:5    &rr_offs     offs=%offs16
@r_csr                    .... .... csr:14 ..... rd:5    &r_csr
@rr_csr                    .... .... csr:14 rj:5 rd:5    &rr_csr
@empty          .... ........ ..... ..... ..... .....    &empty
@i_rr             ...... ...... ..... rk:5 rj:5 imm:5    &i_rr
@cop_r_i              .... ......  imm:s12 rj:5 cop:5    &cop_r_i
@j_i               .... ........ .. imm:8 rj:5 .....    &j_i

#
# Fixed point arithmetic operation instruction
#
add_w           0000 00000001 00000 ..... ..... .....    @rrr
add_d           0000 00000001 00001 ..... ..... .....    @rrr
sub_w           0000 00000001 00010 ..... ..... .....    @rrr
sub_d           0000 00000001 00011 ..... ..... .....    @rrr
slt             0000 00000001 00100 ..... ..... .....    @rrr
sltu            0000 00000001 00101 ..... ..... .....    @rrr
slti            0000 001000 ............ ..... .....     @rr_i12
sltui           0000 001001 ............ ..... .....     @rr_i12
nor             0000 00000001 01000 ..... ..... .....    @rrr
and             0000 00000001 01001 ..... ..... .....    @rrr
or              0000 00000001 01010 ..... ..... .....    @rrr
xor             0000 00000001 01011 ..... ..... .....    @rrr
orn             0000 00000001 01100 ..... ..... .....    @rrr
andn            0000 00000001 01101 ..... ..... .....    @rrr
mul_w           0000 00000001 11000 ..... ..... .....    @rrr
mulh_w          0000 00000001 11001 ..... ..... .....    @rrr
mulh_wu         0000 00000001 11010 ..... ..... .....    @rrr
mul_d           0000 00000001 11011 ..... ..... .....    @rrr
mulh_d          0000 00000001 11100 ..... ..... .....    @rrr
mulh_du         0000 00000001 11101 ..... ..... .....    @rrr
mulw_d_w        0000 00000001 11110 ..... ..... .....    @rrr
mulw_d_wu       0000 00000001 11111 ..... ..... .....    @rrr
div_w           0000 00000010 00000 ..... ..... .....    @rrr
mod_w           0000 00000010 00001 ..... ..... .....    @rrr
div_wu          0000 00000010 00010 ..... ..... .....    @rrr
mod_wu          0000 00000010 00011 ..... ..... .....    @rrr
div_d           0000 00000010 00100 ..... ..... .....    @rrr
mod_d           0000 00000010 00101 ..... ..... .....    @rrr
div_du          0000 00000010 00110 ..... ..... .....    @rrr
mod_du          0000 00000010 00111 ..... ..... .....    @rrr
alsl_w          0000 00000000 010 .. ..... ..... .....   @rrr_sa2p1
alsl_wu         0000 00000000 011 .. ..... ..... .....   @rrr_sa2p1
alsl_d          0000 00000010 110 .. ..... ..... .....   @rrr_sa2p1
lu12i_w         0001 010 .................... .....      @r_i20
lu32i_d         0001 011 .................... .....      @r_i20
lu52i_d         0000 001100 ............ ..... .....     @rr_i12
pcaddi          0001 100 .................... .....      @r_i20
pcalau12i       0001 101 .................... .....      @r_i20
pcaddu12i       0001 110 .................... .....      @r_i20
pcaddu18i       0001 111 .................... .....      @r_i20
addi_w          0000 001010 ............ ..... .....     @rr_i12
addi_d          0000 001011 ............ ..... .....     @rr_i12
addu16i_d       0001 00 ................ ..... .....     @rr_i16
andi            0000 001101 ............ ..... .....     @rr_ui12
ori             0000 001110 ............ ..... .....     @rr_ui12
xori            0000 001111 ............ ..... .....     @rr_ui12

#
# Fixed point shift operation instruction
#
sll_w           0000 00000001 01110 ..... ..... .....    @rrr
srl_w           0000 00000001 01111 ..... ..... .....    @rrr
sra_w           0000 00000001 10000 ..... ..... .....    @rrr
sll_d           0000 00000001 10001 ..... ..... .....    @rrr
srl_d           0000 00000001 10010 ..... ..... .....    @rrr
sra_d           0000 00000001 10011 ..... ..... .....    @rrr
rotr_w          0000 00000001 10110 ..... ..... .....    @rrr
rotr_d          0000 00000001 10111 ..... ..... .....    @rrr
slli_w          0000 00000100 00001 ..... ..... .....    @rr_ui5
slli_d          0000 00000100 0001 ...... ..... .....    @rr_ui6
srli_w          0000 00000100 01001 ..... ..... .....    @rr_ui5
srli_d          0000 00000100 0101 ...... ..... .....    @rr_ui6
srai_w          0000 00000100 10001 ..... ..... .....    @rr_ui5
srai_d          0000 00000100 1001 ...... ..... .....    @rr_ui6
rotri_w         0000 00000100 11001 ..... ..... .....    @rr_ui5
rotri_d         0000 00000100 1101 ...... ..... .....    @rr_ui6

#
# Fixed point bit operation instruction
#
ext_w_h         0000 00000000 00000 10110 ..... .....    @rr
ext_w_b         0000 00000000 00000 10111 ..... .....    @rr
clo_w           0000 00000000 00000 00100 ..... .....    @rr
clz_w           0000 00000000 00000 00101 ..... .....    @rr
cto_w           0000 00000000 00000 00110 ..... .....    @rr
ctz_w           0000 00000000 00000 00111 ..... .....    @rr
clo_d           0000 00000000 00000 01000 ..... .....    @rr
clz_d           0000 00000000 00000 01001 ..... .....    @rr
cto_d           0000 00000000 00000 01010 ..... .....    @rr
ctz_d           0000 00000000 00000 01011 ..... .....    @rr
revb_2h         0000 00000000 00000 01100 ..... .....    @rr
revb_4h         0000 00000000 00000 01101 ..... .....    @rr
revb_2w         0000 00000000 00000 01110 ..... .....    @rr
revb_d          0000 00000000 00000 01111 ..... .....    @rr
revh_2w         0000 00000000 00000 10000 ..... .....    @rr
revh_d          0000 00000000 00000 10001 ..... .....    @rr
bitrev_4b       0000 00000000 00000 10010 ..... .....    @rr
bitrev_8b       0000 00000000 00000 10011 ..... .....    @rr
bitrev_w        0000 00000000 00000 10100 ..... .....    @rr
bitrev_d        0000 00000000 00000 10101 ..... .....    @rr
bytepick_w      0000 00000000 100 .. ..... ..... .....   @rrr_sa2
bytepick_d      0000 00000000 11 ... ..... ..... .....   @rrr_sa3
maskeqz         0000 00000001 00110 ..... ..... .....    @rrr
masknez         0000 00000001 00111 ..... ..... .....    @rrr
bstrins_w       0000 0000011 ..... 0 ..... ..... .....   @rr_2bw
bstrpick_w      0000 0000011 ..... 1 ..... ..... .....   @rr_2bw
bstrins_d       0000 000010 ...... ...... ..... .....    @rr_2bd
bstrpick_d      0000 000011 ...... ...... ..... .....    @rr_2bd

#
# Fixed point load/store instruction
#
ld_b            0010 100000 ............ ..... .....     @rr_i12
ld_h            0010 100001 ............ ..... .....     @rr_i12
ld_w            0010 100010 ............ ..... .....     @rr_i12
ld_d            0010 100011 ............ ..... .....     @rr_i12
st_b            0010 100100 ............ ..... .....     @rr_i12
st_h            0010 100101 ............ ..... .....     @rr_i12
st_w            0010 100110 ............ ..... .....     @rr_i12
st_d            0010 100111 ............ ..... .....     @rr_i12
ld_bu           0010 101000 ............ ..... .....     @rr_i12
ld_hu           0010 101001 ............ ..... .....     @rr_i12
ld_wu           0010 101010 ............ ..... .....     @rr_i12
ldx_b           0011 10000000 00000 ..... ..... .....    @rrr
ldx_h           0011 10000000 01000 ..... ..... .....    @rrr
ldx_w           0011 10000000 10000 ..... ..... .....    @rrr
ldx_d           0011 10000000 11000 ..... ..... .....    @rrr
stx_b           0011 10000001 00000 ..... ..... .....    @rrr
stx_h           0011 10000001 01000 ..... ..... .....    @rrr
stx_w           0011 10000001 10000 ..... ..... .....    @rrr
stx_d           0011 10000001 11000 ..... ..... .....    @rrr
ldx_bu          0011 10000010 00000 ..... ..... .....    @rrr
ldx_hu          0011 10000010 01000 ..... ..... .....    @rrr
ldx_wu          0011 10000010 10000 ..... ..... .....    @rrr
preld           0010 101011 ............ ..... .....     @hint_r_i12
dbar            0011 10000111 00100 ...............      @i15
ibar            0011 10000111 00101 ...............      @i15
ldptr_w         0010 0100 .............. ..... .....     @rr_i14s2
stptr_w         0010 0101 .............. ..... .....     @rr_i14s2
ldptr_d         0010 0110 .............. ..... .....     @rr_i14s2
stptr_d         0010 0111 .............. ..... .....     @rr_i14s2
ldgt_b          0011 10000111 10000 ..... ..... .....    @rrr
ldgt_h          0011 10000111 10001 ..... ..... .....    @rrr
ldgt_w          0011 10000111 10010 ..... ..... .....    @rrr
ldgt_d          0011 10000111 10011 ..... ..... .....    @rrr
ldle_b          0011 10000111 10100 ..... ..... .....    @rrr
ldle_h          0011 10000111 10101 ..... ..... .....    @rrr
ldle_w          0011 10000111 10110 ..... ..... .....    @rrr
ldle_d          0011 10000111 10111 ..... ..... .....    @rrr
stgt_b          0011 10000111 11000 ..... ..... .....    @rrr
stgt_h          0011 10000111 11001 ..... ..... .....    @rrr
stgt_w          0011 10000111 11010 ..... ..... .....    @rrr
stgt_d          0011 10000111 11011 ..... ..... .....    @rrr
stle_b          0011 10000111 11100 ..... ..... .....    @rrr
stle_h          0011 10000111 11101 ..... ..... .....    @rrr
stle_w          0011 10000111 11110 ..... ..... .....    @rrr
stle_d          0011 10000111 11111 ..... ..... .....    @rrr

#
# Fixed point atomic instruction
#
ll_w            0010 0000 .............. ..... .....     @rr_i14s2
sc_w            0010 0001 .............. ..... .....     @rr_i14s2
ll_d            0010 0010 .............. ..... .....     @rr_i14s2
sc_d            0010 0011 .............. ..... .....     @rr_i14s2
amswap_w        0011 10000110 00000 ..... ..... .....    @rrr
amswap_d        0011 10000110 00001 ..... ..... .....    @rrr
amadd_w         0011 10000110 00010 ..... ..... .....    @rrr
amadd_d         0011 10000110 00011 ..... ..... .....    @rrr
amand_w         0011 10000110 00100 ..... ..... .....    @rrr
amand_d         0011 10000110 00101 ..... ..... .....    @rrr
amor_w          0011 10000110 00110 ..... ..... .....    @rrr
amor_d          0011 10000110 00111 ..... ..... .....    @rrr
amxor_w         0011 10000110 01000 ..... ..... .....    @rrr
amxor_d         0011 10000110 01001 ..... ..... .....    @rrr
ammax_w         0011 10000110 01010 ..... ..... .....    @rrr
ammax_d         0011 10000110 01011 ..... ..... .....    @rrr
ammin_w         0011 10000110 01100 ..... ..... .....    @rrr
ammin_d         0011 10000110 01101 ..... ..... .....    @rrr
ammax_wu        0011 10000110 01110 ..... ..... .....    @rrr
ammax_du        0011 10000110 01111 ..... ..... .....    @rrr
ammin_wu        0011 10000110 10000 ..... ..... .....    @rrr
ammin_du        0011 10000110 10001 ..... ..... .....    @rrr
amswap_db_w     0011 10000110 10010 ..... ..... .....    @rrr
amswap_db_d     0011 10000110 10011 ..... ..... .....    @rrr
amadd_db_w      0011 10000110 10100 ..... ..... .....    @rrr
amadd_db_d      0011 10000110 10101 ..... ..... .....    @rrr
amand_db_w      0011 10000110 10110 ..... ..... .....    @rrr
amand_db_d      0011 10000110 10111 ..... ..... .....    @rrr
amor_db_w       0011 10000110 11000 ..... ..... .....    @rrr
amor_db_d       0011 10000110 11001 ..... ..... .....    @rrr
amxor_db_w      0011 10000110 11010 ..... ..... .....    @rrr
amxor_db_d      0011 10000110 11011 ..... ..... .....    @rrr
ammax_db_w      0011 10000110 11100 ..... ..... .....    @rrr
ammax_db_d      0011 10000110 11101 ..... ..... .....    @rrr
ammin_db_w      0011 10000110 11110 ..... ..... .....    @rrr
ammin_db_d      0011 10000110 11111 ..... ..... .....    @rrr
ammax_db_wu     0011 10000111 00000 ..... ..... .....    @rrr
ammax_db_du     0011 10000111 00001 ..... ..... .....    @rrr
ammin_db_wu     0011 10000111 00010 ..... ..... .....    @rrr
ammin_db_du     0011 10000111 00011 ..... ..... .....    @rrr

#
# Fixed point extra instruction
#
crc_w_b_w       0000 00000010 01000 ..... ..... .....    @rrr
crc_w_h_w       0000 00000010 01001 ..... ..... .....    @rrr
crc_w_w_w       0000 00000010 01010 ..... ..... .....    @rrr
crc_w_d_w       0000 00000010 01011 ..... ..... .....    @rrr
crcc_w_b_w      0000 00000010 01100 ..... ..... .....    @rrr
crcc_w_h_w      0000 00000010 01101 ..... ..... .....    @rrr
crcc_w_w_w      0000 00000010 01110 ..... ..... .....    @rrr
crcc_w_d_w      0000 00000010 01111 ..... ..... .....    @rrr
break           0000 00000010 10100 ...............      @i15
syscall         0000 00000010 10110 ...............      @i15
asrtle_d        0000 00000000 00010 ..... ..... 00000    @rr_jk
asrtgt_d        0000 00000000 00011 ..... ..... 00000    @rr_jk
rdtimel_w       0000 00000000 00000 11000 ..... .....    @rr
rdtimeh_w       0000 00000000 00000 11001 ..... .....    @rr
rdtime_d        0000 00000000 00000 11010 ..... .....    @rr
cpucfg          0000 00000000 00000 11011 ..... .....    @rr

#
# Floating point arithmetic operation instruction
#
fadd_s          0000 00010000 00001 ..... ..... .....    @fff
fadd_d          0000 00010000 00010 ..... ..... .....    @fff
fsub_s          0000 00010000 00101 ..... ..... .....    @fff
fsub_d          0000 00010000 00110 ..... ..... .....    @fff
fmul_s          0000 00010000 01001 ..... ..... .....    @fff
fmul_d          0000 00010000 01010 ..... ..... .....    @fff
fdiv_s          0000 00010000 01101 ..... ..... .....    @fff
fdiv_d          0000 00010000 01110 ..... ..... .....    @fff
fmadd_s         0000 10000001 ..... ..... ..... .....    @ffff
fmadd_d         0000 10000010 ..... ..... ..... .....    @ffff
fmsub_s         0000 10000101 ..... ..... ..... .....    @ffff
fmsub_d         0000 10000110 ..... ..... ..... .....    @ffff
fnmadd_s        0000 10001001 ..... ..... ..... .....    @ffff
fnmadd_d        0000 10001010 ..... ..... ..... .....    @ffff
fnmsub_s        0000 10001101 ..... ..... ..... .....    @ffff
fnmsub_d        0000 10001110 ..... ..... ..... .....    @ffff
fmax_s          0000 00010000 10001 ..... ..... .....    @fff
fmax_d          0000 00010000 10010 ..... ..... .....    @fff
fmin_s          0000 00010000 10101 ..... ..... .....    @fff
fmin_d          0000 00010000 10110 ..... ..... .....    @fff
fmaxa_s         0000 00010000 11001 ..... ..... .....    @fff
fmaxa_d         0000 00010000 11010 ..... ..... .....    @fff
fmina_s         0000 00010000 11101 ..... ..... .....    @fff
fmina_d         0000 00010000 11110 ..... ..... .....    @fff
fabs_s          0000 00010001 01000 00001 ..... .....    @ff
fabs_d          0000 00010001 01000 00010 ..... .....    @ff
fneg_s          0000 00010001 01000 00101 ..... .....    @ff
fneg_d          0000 00010001 01000 00110 ..... .....    @ff
fsqrt_s         0000 00010001 01000 10001 ..... .....    @ff
fsqrt_d         0000 00010001 01000 10010 ..... .....    @ff
frecip_s        0000 00010001 01000 10101 ..... .....    @ff
frecip_d        0000 00010001 01000 10110 ..... .....    @ff
frsqrt_s        0000 00010001 01000 11001 ..... .....    @ff
frsqrt_d        0000 00010001 01000 11010 ..... .....    @ff
fscaleb_s       0000 00010001 00001 ..... ..... .....    @fff
fscaleb_d       0000 00010001 00010 ..... ..... .....    @fff
flogb_s         0000 00010001 01000 01001 ..... .....    @ff
flogb_d         0000 00010001 01000 01010 ..... .....    @ff
fcopysign_s     0000 00010001 00101 ..... ..... .....    @fff
fcopysign_d     0000 00010001 00110 ..... ..... .....    @fff
fclass_s        0000 00010001 01000 01101 ..... .....    @ff
fclass_d        0000 00010001 01000 01110 ..... .....    @ff

#
# Floating point compare instruction
#
fcmp_cond_s     0000 11000001 ..... ..... ..... 00 ...   @cff_fcond
fcmp_cond_d     0000 11000010 ..... ..... ..... 00 ...   @cff_fcond

#
# Floating point conversion instruction
#
fcvt_s_d        0000 00010001 10010 00110 ..... .....    @ff
fcvt_d_s        0000 00010001 10010 01001 ..... .....    @ff
ftintrm_w_s     0000 00010001 10100 00001 ..... .....    @ff
ftintrm_w_d     0000 00010001 10100 00010 ..... .....    @ff
ftintrm_l_s     0000 00010001 10100 01001 ..... .....    @ff
ftintrm_l_d     0000 00010001 10100 01010 ..... .....    @ff
ftintrp_w_s     0000 00010001 10100 10001 ..... .....    @ff
ftintrp_w_d     0000 00010001 10100 10010 ..... .....    @ff
ftintrp_l_s     0000 00010001 10100 11001 ..... .....    @ff
ftintrp_l_d     0000 00010001 10100 11010 ..... .....    @ff
ftintrz_w_s     0000 00010001 10101 00001 ..... .....    @ff
ftintrz_w_d     0000 00010001 10101 00010 ..... .....    @ff
ftintrz_l_s     0000 00010001 10101 01001 ..... .....    @ff
ftintrz_l_d     0000 00010001 10101 01010 ..... .....    @ff
ftintrne_w_s    0000 00010001 10101 10001 ..... .....    @ff
ftintrne_w_d    0000 00010001 10101 10010 ..... .....    @ff
ftintrne_l_s    0000 00010001 10101 11001 ..... .....    @ff
ftintrne_l_d    0000 00010001 10101 11010 ..... .....    @ff
ftint_w_s       0000 00010001 10110 00001 ..... .....    @ff
ftint_w_d       0000 00010001 10110 00010 ..... .....    @ff
ftint_l_s       0000 00010001 10110 01001 ..... .....    @ff
ftint_l_d       0000 00010001 10110 01010 ..... .....    @ff
ffint_s_w       0000 00010001 11010 00100 ..... .....    @ff
ffint_s_l       0000 00010001 11010 00110 ..... .....    @ff
ffint_d_w       0000 00010001 11010 01000 ..... .....    @ff
ffint_d_l       0000 00010001 11010 01010 ..... .....    @ff
frint_s         0000 00010001 11100 10001 ..... .....    @ff
frint_d         0000 00010001 11100 10010 ..... .....    @ff

#
# Floating point move instruction
#
fmov_s          0000 00010001 01001 00101 ..... .....    @ff
fmov_d          0000 00010001 01001 00110 ..... .....    @ff
fsel            0000 11010000 00 ... ..... ..... .....   @fffc
movgr2fr_w      0000 00010001 01001 01001 ..... .....    @fr
movgr2fr_d      0000 00010001 01001 01010 ..... .....    @fr
movgr2frh_w     0000 00010001 01001 01011 ..... .....    @fr
movfr2gr_s      0000 00010001 01001 01101 ..... .....    @rf
movfr2gr_d      0000 00010001 01001 01110 ..... .....    @rf
movfrh2gr_s     0000 00010001 01001 01111 ..... .....    @rf
movgr2fcsr      0000 00010001 01001 10000 ..... .....    @fcsrd_r
movfcsr2gr      0000 00010001 01001 10010 ..... .....    @r_fcsrs
movfr2cf        0000 00010001 01001 10100 ..... 00 ...   @cf
movcf2fr        0000 00010001 01001 10101 00 ... .....   @fc
movgr2cf        0000 00010001 01001 10110 ..... 00 ...   @cr
movcf2gr        0000 00010001 01001 10111 00 ... .....   @rc

#
# Floating point load/store instruction
#
fld_s           0010 101100 ............ ..... .....     @fr_i12
fst_s           0010 101101 ............ ..... .....     @fr_i12
fld_d           0010 101110 ............ ..... .....     @fr_i12
fst_d           0010 101111 ............ ..... .....     @fr_i12
fldx_s          0011 10000011 00000 ..... ..... .....    @frr
fldx_d          0011 10000011 01000 ..... ..... .....    @frr
fstx_s          0011 10000011 10000 ..... ..... .....    @frr
fstx_d          0011 10000011 11000 ..... ..... .....    @frr
fldgt_s         0011 10000111 01000 ..... ..... .....    @frr
fldgt_d         0011 10000111 01001 ..... ..... .....    @frr
fldle_s         0011 10000111 01010 ..... ..... .....    @frr
fldle_d         0011 10000111 01011 ..... ..... .....    @frr
fstgt_s         0011 10000111 01100 ..... ..... .....    @frr
fstgt_d         0011 10000111 01101 ..... ..... .....    @frr
fstle_s         0011 10000111 01110 ..... ..... .....    @frr
fstle_d         0011 10000111 01111 ..... ..... .....    @frr

#
# Branch instructions
#
beqz            0100 00 ................ ..... .....     @r_offs21
bnez            0100 01 ................ ..... .....     @r_offs21
bceqz           0100 10 ................ 00 ... .....    @c_offs21
bcnez           0100 10 ................ 01 ... .....    @c_offs21
jirl            0100 11 ................ ..... .....     @rr_i16s2
b               0101 00 ..........................       @offs26
bl              0101 01 ..........................       @offs26
beq             0101 10 ................ ..... .....     @rr_offs16
bne             0101 11 ................ ..... .....     @rr_offs16
blt             0110 00 ................ ..... .....     @rr_offs16
bge             0110 01 ................ ..... .....     @rr_offs16
bltu            0110 10 ................ ..... .....     @rr_offs16
bgeu            0110 11 ................ ..... .....     @rr_offs16

#
# Core instructions
#
{
  csrrd             0000 0100 .............. 00000 .....     @r_csr
  csrwr             0000 0100 .............. 00001 .....     @r_csr
  csrxchg           0000 0100 .............. ..... .....     @rr_csr
}

iocsrrd_b        0000 01100100 10000 00000 ..... .....    @rr
iocsrrd_h        0000 01100100 10000 00001 ..... .....    @rr
iocsrrd_w        0000 01100100 10000 00010 ..... .....    @rr
iocsrrd_d        0000 01100100 10000 00011 ..... .....    @rr
iocsrwr_b        0000 01100100 10000 00100 ..... .....    @rr
iocsrwr_h        0000 01100100 10000 00101 ..... .....    @rr
iocsrwr_w        0000 01100100 10000 00110 ..... .....    @rr
iocsrwr_d        0000 01100100 10000 00111 ..... .....    @rr
tlbsrch          0000 01100100 10000 01010 00000 00000    @empty
tlbrd            0000 01100100 10000 01011 00000 00000    @empty
tlbwr            0000 01100100 10000 01100 00000 00000    @empty
tlbfill          0000 01100100 10000 01101 00000 00000    @empty
tlbclr           0000 01100100 10000 01000 00000 00000    @empty
tlbflush         0000 01100100 10000 01001 00000 00000    @empty
invtlb           0000 01100100 10011 ..... ..... .....    @i_rr
cacop            0000 011000 ............ ..... .....     @cop_r_i
lddir            0000 01100100 00 ........ ..... .....    @rr_ui8
ldpte            0000 01100100 01 ........ ..... 00000    @j_i
ertn             0000 01100100 10000 01110 00000 00000    @empty
idle             0000 01100100 10001 ...............      @i15
dbcl             0000 00000010 10101 ...............      @i15

#
# LSX Fields
#

%i9s3     10:s9       !function=shl_3
%i10s2    10:s10      !function=shl_2
%i11s1    10:s11      !function=shl_1
%i8s3     10:s8       !function=shl_3
%i8s2     10:s8       !function=shl_2
%i8s1     10:s8       !function=shl_1

#
# LSX Argument sets
#

&vv           vd vj
&cv           cd vj
&vvv          vd vj vk
&vv_i         vd vj imm
&vvvv         vd vj vk va
&vvv_fcond    vd vj vk fcond
&vr_i         vd rj imm
&rv_i         rd vj imm
&vr           vd rj
&vvr          vd vj rk
&vrr          vd rj rk
&vr_ii        vd rj imm imm2
&v_i          vd imm

#
# LSX Formats
#
@vv               .... ........ ..... ..... vj:5 vd:5    &vv
@cv            .... ........ ..... ..... vj:5 .. cd:3    &cv
@vvv               .... ........ ..... vk:5 vj:5 vd:5    &vvv
@vv_ui1      .... ........ ..... .... imm:1 vj:5 vd:5    &vv_i
@vv_ui2       .... ........ ..... ... imm:2 vj:5 vd:5    &vv_i
@vv_ui3        .... ........ ..... .. imm:3 vj:5 vd:5    &vv_i
@vv_ui4         .... ........ ..... . imm:4 vj:5 vd:5    &vv_i
@vv_ui5           .... ........ ..... imm:5 vj:5 vd:5    &vv_i
@vv_ui6            .... ........ .... imm:6 vj:5 vd:5    &vv_i
@vv_ui7             .... ........ ... imm:7 vj:5 vd:5    &vv_i
@vv_ui8              .... ........ .. imm:8 vj:5 vd:5    &vv_i
@vv_i5           .... ........ ..... imm:s5 vj:5 vd:5    &vv_i
@vvvv               .... ........ va:5 vk:5 vj:5 vd:5    &vvvv
@vvv_fcond      .... ........ fcond:5  vk:5 vj:5 vd:5    &vvv_fcond
@vr_ui4         .... ........ ..... . imm:4 rj:5 vd:5    &vr_i
@vr_ui3        .... ........ ..... .. imm:3 rj:5 vd:5    &vr_i
@vr_ui2       .... ........ ..... ... imm:2 rj:5 vd:5    &vr_i
@vr_ui1      .... ........ ..... .... imm:1 rj:5 vd:5    &vr_i
@rv_ui4         .... ........ ..... . imm:4 vj:5 rd:5    &rv_i
@rv_ui3        .... ........ ..... .. imm:3 vj:5 rd:5    &rv_i
@rv_ui2       .... ........ ..... ... imm:2 vj:5 rd:5    &rv_i
@rv_ui1      .... ........ ..... .... imm:1 vj:5 rd:5    &rv_i
@vr               .... ........ ..... ..... rj:5 vd:5    &vr
@vvr               .... ........ ..... rk:5 vj:5 vd:5    &vvr
@vr_i9            .... ........ . ......... rj:5 vd:5    &vr_i imm=%i9s3
@vr_i10            .... ........ .......... rj:5 vd:5    &vr_i imm=%i10s2
@vr_i11            .... ....... ........... rj:5 vd:5    &vr_i imm=%i11s1
@vr_i12                 .... ...... imm:s12 rj:5 vd:5    &vr_i
@vr_i8i1    .... ........ . imm2:1 ........ rj:5 vd:5    &vr_ii imm=%i8s3
@vr_i8i2      .... ........ imm2:2 ........ rj:5 vd:5    &vr_ii imm=%i8s2
@vr_i8i3       .... ....... imm2:3 ........ rj:5 vd:5    &vr_ii imm=%i8s1
@vr_i8i4          .... ...... imm2:4 imm:s8 rj:5 vd:5    &vr_ii
@vr_i8i2x     .... ........ imm2:2 ........ rj:5 vd:5    &vr_ii imm=%i8s3
@vr_i8i3x      .... ....... imm2:3 ........ rj:5 vd:5    &vr_ii imm=%i8s2
@vr_i8i4x       .... ...... imm2:4 ........ rj:5 vd:5    &vr_ii imm=%i8s1
@vr_i8i5x          .... ..... imm2:5 imm:s8 rj:5 vd:5    &vr_ii
@vrr               .... ........ ..... rk:5 rj:5 vd:5    &vrr
@v_i13                   .... ........ .. imm:13 vd:5    &v_i

vadd_b           0111 00000000 10100 ..... ..... .....    @vvv
vadd_h           0111 00000000 10101 ..... ..... .....    @vvv
vadd_w           0111 00000000 10110 ..... ..... .....    @vvv
vadd_d           0111 00000000 10111 ..... ..... .....    @vvv
vadd_q           0111 00010010 11010 ..... ..... .....    @vvv
vsub_b           0111 00000000 11000 ..... ..... .....    @vvv
vsub_h           0111 00000000 11001 ..... ..... .....    @vvv
vsub_w           0111 00000000 11010 ..... ..... .....    @vvv
vsub_d           0111 00000000 11011 ..... ..... .....    @vvv
vsub_q           0111 00010010 11011 ..... ..... .....    @vvv

vaddi_bu         0111 00101000 10100 ..... ..... .....    @vv_ui5
vaddi_hu         0111 00101000 10101 ..... ..... .....    @vv_ui5
vaddi_wu         0111 00101000 10110 ..... ..... .....    @vv_ui5
vaddi_du         0111 00101000 10111 ..... ..... .....    @vv_ui5
vsubi_bu         0111 00101000 11000 ..... ..... .....    @vv_ui5
vsubi_hu         0111 00101000 11001 ..... ..... .....    @vv_ui5
vsubi_wu         0111 00101000 11010 ..... ..... .....    @vv_ui5
vsubi_du         0111 00101000 11011 ..... ..... .....    @vv_ui5

vneg_b           0111 00101001 11000 01100 ..... .....    @vv
vneg_h           0111 00101001 11000 01101 ..... .....    @vv
vneg_w           0111 00101001 11000 01110 ..... .....    @vv
vneg_d           0111 00101001 11000 01111 ..... .....    @vv

vsadd_b          0111 00000100 01100 ..... ..... .....    @vvv
vsadd_h          0111 00000100 01101 ..... ..... .....    @vvv
vsadd_w          0111 00000100 01110 ..... ..... .....    @vvv
vsadd_d          0111 00000100 01111 ..... ..... .....    @vvv
vsadd_bu         0111 00000100 10100 ..... ..... .....    @vvv
vsadd_hu         0111 00000100 10101 ..... ..... .....    @vvv
vsadd_wu         0111 00000100 10110 ..... ..... .....    @vvv
vsadd_du         0111 00000100 10111 ..... ..... .....    @vvv
vssub_b          0111 00000100 10000 ..... ..... .....    @vvv
vssub_h          0111 00000100 10001 ..... ..... .....    @vvv
vssub_w          0111 00000100 10010 ..... ..... .....    @vvv
vssub_d          0111 00000100 10011 ..... ..... .....    @vvv
vssub_bu         0111 00000100 11000 ..... ..... .....    @vvv
vssub_hu         0111 00000100 11001 ..... ..... .....    @vvv
vssub_wu         0111 00000100 11010 ..... ..... .....    @vvv
vssub_du         0111 00000100 11011 ..... ..... .....    @vvv

vhaddw_h_b       0111 00000101 01000 ..... ..... .....    @vvv
vhaddw_w_h       0111 00000101 01001 ..... ..... .....    @vvv
vhaddw_d_w       0111 00000101 01010 ..... ..... .....    @vvv
vhaddw_q_d       0111 00000101 01011 ..... ..... .....    @vvv
vhaddw_hu_bu     0111 00000101 10000 ..... ..... .....    @vvv
vhaddw_wu_hu     0111 00000101 10001 ..... ..... .....    @vvv
vhaddw_du_wu     0111 00000101 10010 ..... ..... .....    @vvv
vhaddw_qu_du     0111 00000101 10011 ..... ..... .....    @vvv
vhsubw_h_b       0111 00000101 01100 ..... ..... .....    @vvv
vhsubw_w_h       0111 00000101 01101 ..... ..... .....    @vvv
vhsubw_d_w       0111 00000101 01110 ..... ..... .....    @vvv
vhsubw_q_d       0111 00000101 01111 ..... ..... .....    @vvv
vhsubw_hu_bu     0111 00000101 10100 ..... ..... .....    @vvv
vhsubw_wu_hu     0111 00000101 10101 ..... ..... .....    @vvv
vhsubw_du_wu     0111 00000101 10110 ..... ..... .....    @vvv
vhsubw_qu_du     0111 00000101 10111 ..... ..... .....    @vvv

vaddwev_h_b      0111 00000001 11100 ..... ..... .....    @vvv
vaddwev_w_h      0111 00000001 11101 ..... ..... .....    @vvv
vaddwev_d_w      0111 00000001 11110 ..... ..... .....    @vvv
vaddwev_q_d      0111 00000001 11111 ..... ..... .....    @vvv
vaddwod_h_b      0111 00000010 00100 ..... ..... .....    @vvv
vaddwod_w_h      0111 00000010 00101 ..... ..... .....    @vvv
vaddwod_d_w      0111 00000010 00110 ..... ..... .....    @vvv
vaddwod_q_d      0111 00000010 00111 ..... ..... .....    @vvv
vsubwev_h_b      0111 00000010 00000 ..... ..... .....    @vvv
vsubwev_w_h      0111 00000010 00001 ..... ..... .....    @vvv
vsubwev_d_w      0111 00000010 00010 ..... ..... .....    @vvv
vsubwev_q_d      0111 00000010 00011 ..... ..... .....    @vvv
vsubwod_h_b      0111 00000010 01000 ..... ..... .....    @vvv
vsubwod_w_h      0111 00000010 01001 ..... ..... .....    @vvv
vsubwod_d_w      0111 00000010 01010 ..... ..... .....    @vvv
vsubwod_q_d      0111 00000010 01011 ..... ..... .....    @vvv

vaddwev_h_bu     0111 00000010 11100 ..... ..... .....    @vvv
vaddwev_w_hu     0111 00000010 11101 ..... ..... .....    @vvv
vaddwev_d_wu     0111 00000010 11110 ..... ..... .....    @vvv
vaddwev_q_du     0111 00000010 11111 ..... ..... .....    @vvv
vaddwod_h_bu     0111 00000011 00100 ..... ..... .....    @vvv
vaddwod_w_hu     0111 00000011 00101 ..... ..... .....    @vvv
vaddwod_d_wu     0111 00000011 00110 ..... ..... .....    @vvv
vaddwod_q_du     0111 00000011 00111 ..... ..... .....    @vvv
vsubwev_h_bu     0111 00000011 00000 ..... ..... .....    @vvv
vsubwev_w_hu     0111 00000011 00001 ..... ..... .....    @vvv
vsubwev_d_wu     0111 00000011 00010 ..... ..... .....    @vvv
vsubwev_q_du     0111 00000011 00011 ..... ..... .....    @vvv
vsubwod_h_bu     0111 00000011 01000 ..... ..... .....    @vvv
vsubwod_w_hu     0111 00000011 01001 ..... ..... .....    @vvv
vsubwod_d_wu     0111 00000011 01010 ..... ..... .....    @vvv
vsubwod_q_du     0111 00000011 01011 ..... ..... .....    @vvv

vaddwev_h_bu_b   0111 00000011 11100 ..... ..... .....    @vvv
vaddwev_w_hu_h   0111 00000011 11101 ..... ..... .....    @vvv
vaddwev_d_wu_w   0111 00000011 11110 ..... ..... .....    @vvv
vaddwev_q_du_d   0111 00000011 11111 ..... ..... .....    @vvv
vaddwod_h_bu_b   0111 00000100 00000 ..... ..... .....    @vvv
vaddwod_w_hu_h   0111 00000100 00001 ..... ..... .....    @vvv
vaddwod_d_wu_w   0111 00000100 00010 ..... ..... .....    @vvv
vaddwod_q_du_d   0111 00000100 00011 ..... ..... .....    @vvv

vavg_b           0111 00000110 01000 ..... ..... .....    @vvv
vavg_h           0111 00000110 01001 ..... ..... .....    @vvv
vavg_w           0111 00000110 01010 ..... ..... .....    @vvv
vavg_d           0111 00000110 01011 ..... ..... .....    @vvv
vavg_bu          0111 00000110 01100 ..... ..... .....    @vvv
vavg_hu          0111 00000110 01101 ..... ..... .....    @vvv
vavg_wu          0111 00000110 01110 ..... ..... .....    @vvv
vavg_du          0111 00000110 01111 ..... ..... .....    @vvv
vavgr_b          0111 00000110 10000 ..... ..... .....    @vvv
vavgr_h          0111 00000110 10001 ..... ..... .....    @vvv
vavgr_w          0111 00000110 10010 ..... ..... .....    @vvv
vavgr_d          0111 00000110 10011 ..... ..... .....    @vvv
vavgr_bu         0111 00000110 10100 ..... ..... .....    @vvv
vavgr_hu         0111 00000110 10101 ..... ..... .....    @vvv
vavgr_wu         0111 00000110 10110 ..... ..... .....    @vvv
vavgr_du         0111 00000110 10111 ..... ..... .....    @vvv

vabsd_b          0111 00000110 00000 ..... ..... .....    @vvv
vabsd_h          0111 00000110 00001 ..... ..... .....    @vvv
vabsd_w          0111 00000110 00010 ..... ..... .....    @vvv
vabsd_d          0111 00000110 00011 ..... ..... .....    @vvv
vabsd_bu         0111 00000110 00100 ..... ..... .....    @vvv
vabsd_hu         0111 00000110 00101 ..... ..... .....    @vvv
vabsd_wu         0111 00000110 00110 ..... ..... .....    @vvv
vabsd_du         0111 00000110 00111 ..... ..... .....    @vvv

vadda_b          0111 00000101 11000 ..... ..... .....    @vvv
vadda_h          0111 00000101 11001 ..... ..... .....    @vvv
vadda_w          0111 00000101 11010 ..... ..... .....    @vvv
vadda_d          0111 00000101 11011 ..... ..... .....    @vvv

vmax_b           0111 00000111 00000 ..... ..... .....    @vvv
vmax_h           0111 00000111 00001 ..... ..... .....    @vvv
vmax_w           0111 00000111 00010 ..... ..... .....    @vvv
vmax_d           0111 00000111 00011 ..... ..... .....    @vvv
vmaxi_b          0111 00101001 00000 ..... ..... .....    @vv_i5
vmaxi_h          0111 00101001 00001 ..... ..... .....    @vv_i5
vmaxi_w          0111 00101001 00010 ..... ..... .....    @vv_i5
vmaxi_d          0111 00101001 00011 ..... ..... .....    @vv_i5
vmax_bu          0111 00000111 01000 ..... ..... .....    @vvv
vmax_hu          0111 00000111 01001 ..... ..... .....    @vvv
vmax_wu          0111 00000111 01010 ..... ..... .....    @vvv
vmax_du          0111 00000111 01011 ..... ..... .....    @vvv
vmaxi_bu         0111 00101001 01000 ..... ..... .....    @vv_ui5
vmaxi_hu         0111 00101001 01001 ..... ..... .....    @vv_ui5
vmaxi_wu         0111 00101001 01010 ..... ..... .....    @vv_ui5
vmaxi_du         0111 00101001 01011 ..... ..... .....    @vv_ui5

vmin_b           0111 00000111 00100 ..... ..... .....    @vvv
vmin_h           0111 00000111 00101 ..... ..... .....    @vvv
vmin_w           0111 00000111 00110 ..... ..... .....    @vvv
vmin_d           0111 00000111 00111 ..... ..... .....    @vvv
vmini_b          0111 00101001 00100 ..... ..... .....    @vv_i5
vmini_h          0111 00101001 00101 ..... ..... .....    @vv_i5
vmini_w          0111 00101001 00110 ..... ..... .....    @vv_i5
vmini_d          0111 00101001 00111 ..... ..... .....    @vv_i5
vmin_bu          0111 00000111 01100 ..... ..... .....    @vvv
vmin_hu          0111 00000111 01101 ..... ..... .....    @vvv
vmin_wu          0111 00000111 01110 ..... ..... .....    @vvv
vmin_du          0111 00000111 01111 ..... ..... .....    @vvv
vmini_bu         0111 00101001 01100 ..... ..... .....    @vv_ui5
vmini_hu         0111 00101001 01101 ..... ..... .....    @vv_ui5
vmini_wu         0111 00101001 01110 ..... ..... .....    @vv_ui5
vmini_du         0111 00101001 01111 ..... ..... .....    @vv_ui5

vmul_b           0111 00001000 01000 ..... ..... .....    @vvv
vmul_h           0111 00001000 01001 ..... ..... .....    @vvv
vmul_w           0111 00001000 01010 ..... ..... .....    @vvv
vmul_d           0111 00001000 01011 ..... ..... .....    @vvv
vmuh_b           0111 00001000 01100 ..... ..... .....    @vvv
vmuh_h           0111 00001000 01101 ..... ..... .....    @vvv
vmuh_w           0111 00001000 01110 ..... ..... .....    @vvv
vmuh_d           0111 00001000 01111 ..... ..... .....    @vvv
vmuh_bu          0111 00001000 10000 ..... ..... .....    @vvv
vmuh_hu          0111 00001000 10001 ..... ..... .....    @vvv
vmuh_wu          0111 00001000 10010 ..... ..... .....    @vvv
vmuh_du          0111 00001000 10011 ..... ..... .....    @vvv

vmulwev_h_b      0111 00001001 00000 ..... ..... .....    @vvv
vmulwev_w_h      0111 00001001 00001 ..... ..... .....    @vvv
vmulwev_d_w      0111 00001001 00010 ..... ..... .....    @vvv
vmulwev_q_d      0111 00001001 00011 ..... ..... .....    @vvv
vmulwod_h_b      0111 00001001 00100 ..... ..... .....    @vvv
vmulwod_w_h      0111 00001001 00101 ..... ..... .....    @vvv
vmulwod_d_w      0111 00001001 00110 ..... ..... .....    @vvv
vmulwod_q_d      0111 00001001 00111 ..... ..... .....    @vvv
vmulwev_h_bu     0111 00001001 10000 ..... ..... .....    @vvv
vmulwev_w_hu     0111 00001001 10001 ..... ..... .....    @vvv
vmulwev_d_wu     0111 00001001 10010 ..... ..... .....    @vvv
vmulwev_q_du     0111 00001001 10011 ..... ..... .....    @vvv
vmulwod_h_bu     0111 00001001 10100 ..... ..... .....    @vvv
vmulwod_w_hu     0111 00001001 10101 ..... ..... .....    @vvv
vmulwod_d_wu     0111 00001001 10110 ..... ..... .....    @vvv
vmulwod_q_du     0111 00001001 10111 ..... ..... .....    @vvv
vmulwev_h_bu_b   0111 00001010 00000 ..... ..... .....    @vvv
vmulwev_w_hu_h   0111 00001010 00001 ..... ..... .....    @vvv
vmulwev_d_wu_w   0111 00001010 00010 ..... ..... .....    @vvv
vmulwev_q_du_d   0111 00001010 00011 ..... ..... .....    @vvv
vmulwod_h_bu_b   0111 00001010 00100 ..... ..... .....    @vvv
vmulwod_w_hu_h   0111 00001010 00101 ..... ..... .....    @vvv
vmulwod_d_wu_w   0111 00001010 00110 ..... ..... .....    @vvv
vmulwod_q_du_d   0111 00001010 00111 ..... ..... .....    @vvv

vmadd_b          0111 00001010 10000 ..... ..... .....    @vvv
vmadd_h          0111 00001010 10001 ..... ..... .....    @vvv
vmadd_w          0111 00001010 10010 ..... ..... .....    @vvv
vmadd_d          0111 00001010 10011 ..... ..... .....    @vvv
vmsub_b          0111 00001010 10100 ..... ..... .....    @vvv
vmsub_h          0111 00001010 10101 ..... ..... .....    @vvv
vmsub_w          0111 00001010 10110 ..... ..... .....    @vvv
vmsub_d          0111 00001010 10111 ..... ..... .....    @vvv

vmaddwev_h_b     0111 00001010 11000 ..... ..... .....    @vvv
vmaddwev_w_h     0111 00001010 11001 ..... ..... .....    @vvv
vmaddwev_d_w     0111 00001010 11010 ..... ..... .....    @vvv
vmaddwev_q_d     0111 00001010 11011 ..... ..... .....    @vvv
vmaddwod_h_b     0111 00001010 11100 ..... ..... .....    @vvv
vmaddwod_w_h     0111 00001010 11101 ..... ..... .....    @vvv
vmaddwod_d_w     0111 00001010 11110 ..... ..... .....    @vvv
vmaddwod_q_d     0111 00001010 11111 ..... ..... .....    @vvv
vmaddwev_h_bu    0111 00001011 01000 ..... ..... .....    @vvv
vmaddwev_w_hu    0111 00001011 01001 ..... ..... .....    @vvv
vmaddwev_d_wu    0111 00001011 01010 ..... ..... .....    @vvv
vmaddwev_q_du    0111 00001011 01011 ..... ..... .....    @vvv
vmaddwod_h_bu    0111 00001011 01100 ..... ..... .....    @vvv
vmaddwod_w_hu    0111 00001011 01101 ..... ..... .....    @vvv
vmaddwod_d_wu    0111 00001011 01110 ..... ..... .....    @vvv
vmaddwod_q_du    0111 00001011 01111 ..... ..... .....    @vvv
vmaddwev_h_bu_b  0111 00001011 11000 ..... ..... .....    @vvv
vmaddwev_w_hu_h  0111 00001011 11001 ..... ..... .....    @vvv
vmaddwev_d_wu_w  0111 00001011 11010 ..... ..... .....    @vvv
vmaddwev_q_du_d  0111 00001011 11011 ..... ..... .....    @vvv
vmaddwod_h_bu_b  0111 00001011 11100 ..... ..... .....    @vvv
vmaddwod_w_hu_h  0111 00001011 11101 ..... ..... .....    @vvv
vmaddwod_d_wu_w  0111 00001011 11110 ..... ..... .....    @vvv
vmaddwod_q_du_d  0111 00001011 11111 ..... ..... .....    @vvv

vdiv_b           0111 00001110 00000 ..... ..... .....    @vvv
vdiv_h           0111 00001110 00001 ..... ..... .....    @vvv
vdiv_w           0111 00001110 00010 ..... ..... .....    @vvv
vdiv_d           0111 00001110 00011 ..... ..... .....    @vvv
vdiv_bu          0111 00001110 01000 ..... ..... .....    @vvv
vdiv_hu          0111 00001110 01001 ..... ..... .....    @vvv
vdiv_wu          0111 00001110 01010 ..... ..... .....    @vvv
vdiv_du          0111 00001110 01011 ..... ..... .....    @vvv
vmod_b           0111 00001110 00100 ..... ..... .....    @vvv
vmod_h           0111 00001110 00101 ..... ..... .....    @vvv
vmod_w           0111 00001110 00110 ..... ..... .....    @vvv
vmod_d           0111 00001110 00111 ..... ..... .....    @vvv
vmod_bu          0111 00001110 01100 ..... ..... .....    @vvv
vmod_hu          0111 00001110 01101 ..... ..... .....    @vvv
vmod_wu          0111 00001110 01110 ..... ..... .....    @vvv
vmod_du          0111 00001110 01111 ..... ..... .....    @vvv

vsat_b           0111 00110010 01000 01 ... ..... .....   @vv_ui3
vsat_h           0111 00110010 01000 1 .... ..... .....   @vv_ui4
vsat_w           0111 00110010 01001 ..... ..... .....    @vv_ui5
vsat_d           0111 00110010 0101 ...... ..... .....    @vv_ui6
vsat_bu          0111 00110010 10000 01 ... ..... .....   @vv_ui3
vsat_hu          0111 00110010 10000 1 .... ..... .....   @vv_ui4
vsat_wu          0111 00110010 10001 ..... ..... .....    @vv_ui5
vsat_du          0111 00110010 1001 ...... ..... .....    @vv_ui6

vexth_h_b        0111 00101001 11101 11000 ..... .....    @vv
vexth_w_h        0111 00101001 11101 11001 ..... .....    @vv
vexth_d_w        0111 00101001 11101 11010 ..... .....    @vv
vexth_q_d        0111 00101001 11101 11011 ..... .....    @vv
vexth_hu_bu      0111 00101001 11101 11100 ..... .....    @vv
vexth_wu_hu      0111 00101001 11101 11101 ..... .....    @vv
vexth_du_wu      0111 00101001 11101 11110 ..... .....    @vv
vexth_qu_du      0111 00101001 11101 11111 ..... .....    @vv

vsigncov_b       0111 00010010 11100 ..... ..... .....    @vvv
vsigncov_h       0111 00010010 11101 ..... ..... .....    @vvv
vsigncov_w       0111 00010010 11110 ..... ..... .....    @vvv
vsigncov_d       0111 00010010 11111 ..... ..... .....    @vvv

vmskltz_b        0111 00101001 11000 10000 ..... .....    @vv
vmskltz_h        0111 00101001 11000 10001 ..... .....    @vv
vmskltz_w        0111 00101001 11000 10010 ..... .....    @vv
vmskltz_d        0111 00101001 11000 10011 ..... .....    @vv
vmskgez_b        0111 00101001 11000 10100 ..... .....    @vv
vmsknz_b         0111 00101001 11000 11000 ..... .....    @vv

vldi             0111 00111110 00 ............. .....     @v_i13

vand_v           0111 00010010 01100 ..... ..... .....    @vvv
vor_v            0111 00010010 01101 ..... ..... .....    @vvv
vxor_v           0111 00010010 01110 ..... ..... .....    @vvv
vnor_v           0111 00010010 01111 ..... ..... .....    @vvv
vandn_v          0111 00010010 10000 ..... ..... .....    @vvv
vorn_v           0111 00010010 10001 ..... ..... .....    @vvv

vandi_b          0111 00111101 00 ........ ..... .....    @vv_ui8
vori_b           0111 00111101 01 ........ ..... .....    @vv_ui8
vxori_b          0111 00111101 10 ........ ..... .....    @vv_ui8
vnori_b          0111 00111101 11 ........ ..... .....    @vv_ui8

vsll_b           0111 00001110 10000 ..... ..... .....    @vvv
vsll_h           0111 00001110 10001 ..... ..... .....    @vvv
vsll_w           0111 00001110 10010 ..... ..... .....    @vvv
vsll_d           0111 00001110 10011 ..... ..... .....    @vvv
vslli_b          0111 00110010 11000 01 ... ..... .....   @vv_ui3
vslli_h          0111 00110010 11000 1 .... ..... .....   @vv_ui4
vslli_w          0111 00110010 11001 ..... ..... .....    @vv_ui5
vslli_d          0111 00110010 1101 ...... ..... .....    @vv_ui6

vsrl_b           0111 00001110 10100 ..... ..... .....    @vvv
vsrl_h           0111 00001110 10101 ..... ..... .....    @vvv
vsrl_w           0111 00001110 10110 ..... ..... .....    @vvv
vsrl_d           0111 00001110 10111 ..... ..... .....    @vvv
vsrli_b          0111 00110011 00000 01 ... ..... .....   @vv_ui3
vsrli_h          0111 00110011 00000 1 .... ..... .....   @vv_ui4
vsrli_w          0111 00110011 00001 ..... ..... .....    @vv_ui5
vsrli_d          0111 00110011 0001 ...... ..... .....    @vv_ui6

vsra_b           0111 00001110 11000 ..... ..... .....    @vvv
vsra_h           0111 00001110 11001 ..... ..... .....    @vvv
vsra_w           0111 00001110 11010 ..... ..... .....    @vvv
vsra_d           0111 00001110 11011 ..... ..... .....    @vvv
vsrai_b          0111 00110011 01000 01 ... ..... .....   @vv_ui3
vsrai_h          0111 00110011 01000 1 .... ..... .....   @vv_ui4
vsrai_w          0111 00110011 01001 ..... ..... .....    @vv_ui5
vsrai_d          0111 00110011 0101 ...... ..... .....    @vv_ui6

vrotr_b          0111 00001110 11100 ..... ..... .....    @vvv
vrotr_h          0111 00001110 11101 ..... ..... .....    @vvv
vrotr_w          0111 00001110 11110 ..... ..... .....    @vvv
vrotr_d          0111 00001110 11111 ..... ..... .....    @vvv
vrotri_b         0111 00101010 00000 01 ... ..... .....   @vv_ui3
vrotri_h         0111 00101010 00000 1 .... ..... .....   @vv_ui4
vrotri_w         0111 00101010 00001 ..... ..... .....    @vv_ui5
vrotri_d         0111 00101010 0001 ...... ..... .....    @vv_ui6

vsllwil_h_b      0111 00110000 10000 01 ... ..... .....   @vv_ui3
vsllwil_w_h      0111 00110000 10000 1 .... ..... .....   @vv_ui4
vsllwil_d_w      0111 00110000 10001 ..... ..... .....    @vv_ui5
vextl_q_d        0111 00110000 10010 00000 ..... .....    @vv
vsllwil_hu_bu    0111 00110000 11000 01 ... ..... .....   @vv_ui3
vsllwil_wu_hu    0111 00110000 11000 1 .... ..... .....   @vv_ui4
vsllwil_du_wu    0111 00110000 11001 ..... ..... .....    @vv_ui5
vextl_qu_du      0111 00110000 11010 00000 ..... .....    @vv

vsrlr_b          0111 00001111 00000 ..... ..... .....    @vvv
vsrlr_h          0111 00001111 00001 ..... ..... .....    @vvv
vsrlr_w          0111 00001111 00010 ..... ..... .....    @vvv
vsrlr_d          0111 00001111 00011 ..... ..... .....    @vvv
vsrlri_b         0111 00101010 01000 01 ... ..... .....   @vv_ui3
vsrlri_h         0111 00101010 01000 1 .... ..... .....   @vv_ui4
vsrlri_w         0111 00101010 01001 ..... ..... .....    @vv_ui5
vsrlri_d         0111 00101010 0101 ...... ..... .....    @vv_ui6

vsrar_b          0111 00001111 00100 ..... ..... .....    @vvv
vsrar_h          0111 00001111 00101 ..... ..... .....    @vvv
vsrar_w          0111 00001111 00110 ..... ..... .....    @vvv
vsrar_d          0111 00001111 00111 ..... ..... .....    @vvv
vsrari_b         0111 00101010 10000 01 ... ..... .....   @vv_ui3
vsrari_h         0111 00101010 10000 1 .... ..... .....   @vv_ui4
vsrari_w         0111 00101010 10001 ..... ..... .....    @vv_ui5
vsrari_d         0111 00101010 1001 ...... ..... .....    @vv_ui6

vsrln_b_h        0111 00001111 01001 ..... ..... .....    @vvv
vsrln_h_w        0111 00001111 01010 ..... ..... .....    @vvv
vsrln_w_d        0111 00001111 01011 ..... ..... .....    @vvv
vsran_b_h        0111 00001111 01101 ..... ..... .....    @vvv
vsran_h_w        0111 00001111 01110 ..... ..... .....    @vvv
vsran_w_d        0111 00001111 01111 ..... ..... .....    @vvv

vsrlni_b_h       0111 00110100 00000 1 .... ..... .....   @vv_ui4
vsrlni_h_w       0111 00110100 00001 ..... ..... .....    @vv_ui5
vsrlni_w_d       0111 00110100 0001 ...... ..... .....    @vv_ui6
vsrlni_d_q       0111 00110100 001 ....... ..... .....    @vv_ui7
vsrani_b_h       0111 00110101 10000 1 .... ..... .....   @vv_ui4
vsrani_h_w       0111 00110101 10001 ..... ..... .....    @vv_ui5
vsrani_w_d       0111 00110101 1001 ...... ..... .....    @vv_ui6
vsrani_d_q       0111 00110101 101 ....... ..... .....    @vv_ui7

vsrlrn_b_h       0111 00001111 10001 ..... ..... .....    @vvv
vsrlrn_h_w       0111 00001111 10010 ..... ..... .....    @vvv
vsrlrn_w_d       0111 00001111 10011 ..... ..... .....    @vvv
vsrarn_b_h       0111 00001111 10101 ..... ..... .....    @vvv
vsrarn_h_w       0111 00001111 10110 ..... ..... .....    @vvv
vsrarn_w_d       0111 00001111 10111 ..... ..... .....    @vvv

vsrlrni_b_h      0111 00110100 01000 1 .... ..... .....   @vv_ui4
vsrlrni_h_w      0111 00110100 01001 ..... ..... .....    @vv_ui5
vsrlrni_w_d      0111 00110100 0101 ...... ..... .....    @vv_ui6
vsrlrni_d_q      0111 00110100 011 ....... ..... .....    @vv_ui7
vsrarni_b_h      0111 00110101 11000 1 .... ..... .....   @vv_ui4
vsrarni_h_w      0111 00110101 11001 ..... ..... .....    @vv_ui5
vsrarni_w_d      0111 00110101 1101 ...... ..... .....    @vv_ui6
vsrarni_d_q      0111 00110101 111 ....... ..... .....    @vv_ui7

vssrln_b_h       0111 00001111 11001 ..... ..... .....    @vvv
vssrln_h_w       0111 00001111 11010 ..... ..... .....    @vvv
vssrln_w_d       0111 00001111 11011 ..... ..... .....    @vvv
vssran_b_h       0111 00001111 11101 ..... ..... .....    @vvv
vssran_h_w       0111 00001111 11110 ..... ..... .....    @vvv
vssran_w_d       0111 00001111 11111 ..... ..... .....    @vvv
vssrln_bu_h      0111 00010000 01001 ..... ..... .....    @vvv
vssrln_hu_w      0111 00010000 01010 ..... ..... .....    @vvv
vssrln_wu_d      0111 00010000 01011 ..... ..... .....    @vvv
vssran_bu_h      0111 00010000 01101 ..... ..... .....    @vvv
vssran_hu_w      0111 00010000 01110 ..... ..... .....    @vvv
vssran_wu_d      0111 00010000 01111 ..... ..... .....    @vvv

vssrlni_b_h      0111 00110100 10000 1 .... ..... .....   @vv_ui4
vssrlni_h_w      0111 00110100 10001 ..... ..... .....    @vv_ui5
vssrlni_w_d      0111 00110100 1001 ...... ..... .....    @vv_ui6
vssrlni_d_q      0111 00110100 101 ....... ..... .....    @vv_ui7
vssrani_b_h      0111 00110110 00000 1 .... ..... .....   @vv_ui4
vssrani_h_w      0111 00110110 00001 ..... ..... .....    @vv_ui5
vssrani_w_d      0111 00110110 0001 ...... ..... .....    @vv_ui6
vssrani_d_q      0111 00110110 001 ....... ..... .....    @vv_ui7
vssrlni_bu_h     0111 00110100 11000 1 .... ..... .....   @vv_ui4
vssrlni_hu_w     0111 00110100 11001 ..... ..... .....    @vv_ui5
vssrlni_wu_d     0111 00110100 1101 ...... ..... .....    @vv_ui6
vssrlni_du_q     0111 00110100 111 ....... ..... .....    @vv_ui7
vssrani_bu_h     0111 00110110 01000 1 .... ..... .....   @vv_ui4
vssrani_hu_w     0111 00110110 01001 ..... ..... .....    @vv_ui5
vssrani_wu_d     0111 00110110 0101 ...... ..... .....    @vv_ui6
vssrani_du_q     0111 00110110 011 ....... ..... .....    @vv_ui7

vssrlrn_b_h      0111 00010000 00001 ..... ..... .....    @vvv
vssrlrn_h_w      0111 00010000 00010 ..... ..... .....    @vvv
vssrlrn_w_d      0111 00010000 00011 ..... ..... .....    @vvv
vssrarn_b_h      0111 00010000 00101 ..... ..... .....    @vvv
vssrarn_h_w      0111 00010000 00110 ..... ..... .....    @vvv
vssrarn_w_d      0111 00010000 00111 ..... ..... .....    @vvv
vssrlrn_bu_h     0111 00010000 10001 ..... ..... .....    @vvv
vssrlrn_hu_w     0111 00010000 10010 ..... ..... .....    @vvv
vssrlrn_wu_d     0111 00010000 10011 ..... ..... .....    @vvv
vssrarn_bu_h     0111 00010000 10101 ..... ..... .....    @vvv
vssrarn_hu_w     0111 00010000 10110 ..... ..... .....    @vvv
vssrarn_wu_d     0111 00010000 10111 ..... ..... .....    @vvv

vssrlrni_b_h     0111 00110101 00000 1 .... ..... .....   @vv_ui4
vssrlrni_h_w     0111 00110101 00001 ..... ..... .....    @vv_ui5
vssrlrni_w_d     0111 00110101 0001 ...... ..... .....    @vv_ui6
vssrlrni_d_q     0111 00110101 001 ....... ..... .....    @vv_ui7
vssrarni_b_h     0111 00110110 10000 1 .... ..... .....   @vv_ui4
vssrarni_h_w     0111 00110110 10001 ..... ..... .....    @vv_ui5
vssrarni_w_d     0111 00110110 1001 ...... ..... .....    @vv_ui6
vssrarni_d_q     0111 00110110 101 ....... ..... .....    @vv_ui7
vssrlrni_bu_h    0111 00110101 01000 1 .... ..... .....   @vv_ui4
vssrlrni_hu_w    0111 00110101 01001 ..... ..... .....    @vv_ui5
vssrlrni_wu_d    0111 00110101 0101 ...... ..... .....    @vv_ui6
vssrlrni_du_q    0111 00110101 011 ....... ..... .....    @vv_ui7
vssrarni_bu_h    0111 00110110 11000 1 .... ..... .....   @vv_ui4
vssrarni_hu_w    0111 00110110 11001 ..... ..... .....    @vv_ui5
vssrarni_wu_d    0111 00110110 1101 ...... ..... .....    @vv_ui6
vssrarni_du_q    0111 00110110 111 ....... ..... .....    @vv_ui7

vclo_b           0111 00101001 11000 00000 ..... .....    @vv
vclo_h           0111 00101001 11000 00001 ..... .....    @vv
vclo_w           0111 00101001 11000 00010 ..... .....    @vv
vclo_d           0111 00101001 11000 00011 ..... .....    @vv
vclz_b           0111 00101001 11000 00100 ..... .....    @vv
vclz_h           0111 00101001 11000 00101 ..... .....    @vv
vclz_w           0111 00101001 11000 00110 ..... .....    @vv
vclz_d           0111 00101001 11000 00111 ..... .....    @vv

vpcnt_b          0111 00101001 11000 01000 ..... .....    @vv
vpcnt_h          0111 00101001 11000 01001 ..... .....    @vv
vpcnt_w          0111 00101001 11000 01010 ..... .....    @vv
vpcnt_d          0111 00101001 11000 01011 ..... .....    @vv

vbitclr_b        0111 00010000 11000 ..... ..... .....    @vvv
vbitclr_h        0111 00010000 11001 ..... ..... .....    @vvv
vbitclr_w        0111 00010000 11010 ..... ..... .....    @vvv
vbitclr_d        0111 00010000 11011 ..... ..... .....    @vvv
vbitclri_b       0111 00110001 00000 01 ... ..... .....   @vv_ui3
vbitclri_h       0111 00110001 00000 1 .... ..... .....   @vv_ui4
vbitclri_w       0111 00110001 00001 ..... ..... .....    @vv_ui5
vbitclri_d       0111 00110001 0001 ...... ..... .....    @vv_ui6
vbitset_b        0111 00010000 11100 ..... ..... .....    @vvv
vbitset_h        0111 00010000 11101 ..... ..... .....    @vvv
vbitset_w        0111 00010000 11110 ..... ..... .....    @vvv
vbitset_d        0111 00010000 11111 ..... ..... .....    @vvv
vbitseti_b       0111 00110001 01000 01 ... ..... .....   @vv_ui3
vbitseti_h       0111 00110001 01000 1 .... ..... .....   @vv_ui4
vbitseti_w       0111 00110001 01001 ..... ..... .....    @vv_ui5
vbitseti_d       0111 00110001 0101 ...... ..... .....    @vv_ui6
vbitrev_b        0111 00010001 00000 ..... ..... .....    @vvv
vbitrev_h        0111 00010001 00001 ..... ..... .....    @vvv
vbitrev_w        0111 00010001 00010 ..... ..... .....    @vvv
vbitrev_d        0111 00010001 00011 ..... ..... .....    @vvv
vbitrevi_b       0111 00110001 10000 01 ... ..... .....   @vv_ui3
vbitrevi_h       0111 00110001 10000 1 .... ..... .....   @vv_ui4
vbitrevi_w       0111 00110001 10001 ..... ..... .....    @vv_ui5
vbitrevi_d       0111 00110001 1001 ...... ..... .....    @vv_ui6

vfrstp_b         0111 00010010 10110 ..... ..... .....    @vvv
vfrstp_h         0111 00010010 10111 ..... ..... .....    @vvv
vfrstpi_b        0111 00101001 10100 ..... ..... .....    @vv_ui5
vfrstpi_h        0111 00101001 10101 ..... ..... .....    @vv_ui5

vfadd_s          0111 00010011 00001 ..... ..... .....    @vvv
vfadd_d          0111 00010011 00010 ..... ..... .....    @vvv
vfsub_s          0111 00010011 00101 ..... ..... .....    @vvv
vfsub_d          0111 00010011 00110 ..... ..... .....    @vvv
vfmul_s          0111 00010011 10001 ..... ..... .....    @vvv
vfmul_d          0111 00010011 10010 ..... ..... .....    @vvv
vfdiv_s          0111 00010011 10101 ..... ..... .....    @vvv
vfdiv_d          0111 00010011 10110 ..... ..... .....    @vvv

vfmadd_s         0000 10010001 ..... ..... ..... .....    @vvvv
vfmadd_d         0000 10010010 ..... ..... ..... .....    @vvvv
vfmsub_s         0000 10010101 ..... ..... ..... .....    @vvvv
vfmsub_d         0000 10010110 ..... ..... ..... .....    @vvvv
vfnmadd_s        0000 10011001 ..... ..... ..... .....    @vvvv
vfnmadd_d        0000 10011010 ..... ..... ..... .....    @vvvv
vfnmsub_s        0000 10011101 ..... ..... ..... .....    @vvvv
vfnmsub_d        0000 10011110 ..... ..... ..... .....    @vvvv

vfmax_s          0111 00010011 11001 ..... ..... .....    @vvv
vfmax_d          0111 00010011 11010 ..... ..... .....    @vvv
vfmin_s          0111 00010011 11101 ..... ..... .....    @vvv
vfmin_d          0111 00010011 11110 ..... ..... .....    @vvv

vfmaxa_s         0111 00010100 00001 ..... ..... .....    @vvv
vfmaxa_d         0111 00010100 00010 ..... ..... .....    @vvv
vfmina_s         0111 00010100 00101 ..... ..... .....    @vvv
vfmina_d         0111 00010100 00110 ..... ..... .....    @vvv

vflogb_s         0111 00101001 11001 10001 ..... .....    @vv
vflogb_d         0111 00101001 11001 10010 ..... .....    @vv

vfclass_s        0111 00101001 11001 10101 ..... .....    @vv
vfclass_d        0111 00101001 11001 10110 ..... .....    @vv

vfsqrt_s         0111 00101001 11001 11001 ..... .....    @vv
vfsqrt_d         0111 00101001 11001 11010 ..... .....    @vv
vfrecip_s        0111 00101001 11001 11101 ..... .....    @vv
vfrecip_d        0111 00101001 11001 11110 ..... .....    @vv
vfrsqrt_s        0111 00101001 11010 00001 ..... .....    @vv
vfrsqrt_d        0111 00101001 11010 00010 ..... .....    @vv

vfcvtl_s_h       0111 00101001 11011 11010 ..... .....    @vv
vfcvth_s_h       0111 00101001 11011 11011 ..... .....    @vv
vfcvtl_d_s       0111 00101001 11011 11100 ..... .....    @vv
vfcvth_d_s       0111 00101001 11011 11101 ..... .....    @vv
vfcvt_h_s        0111 00010100 01100 ..... ..... .....    @vvv
vfcvt_s_d        0111 00010100 01101 ..... ..... .....    @vvv

vfrint_s         0111 00101001 11010 01101 ..... .....    @vv
vfrint_d         0111 00101001 11010 01110 ..... .....    @vv
vfrintrm_s       0111 00101001 11010 10001 ..... .....    @vv
vfrintrm_d       0111 00101001 11010 10010 ..... .....    @vv
vfrintrp_s       0111 00101001 11010 10101 ..... .....    @vv
vfrintrp_d       0111 00101001 11010 10110 ..... .....    @vv
vfrintrz_s       0111 00101001 11010 11001 ..... .....    @vv
vfrintrz_d       0111 00101001 11010 11010 ..... .....    @vv
vfrintrne_s      0111 00101001 11010 11101 ..... .....    @vv
vfrintrne_d      0111 00101001 11010 11110 ..... .....    @vv

vftint_w_s       0111 00101001 11100 01100 ..... .....    @vv
vftint_l_d       0111 00101001 11100 01101 ..... .....    @vv
vftintrm_w_s     0111 00101001 11100 01110 ..... .....    @vv
vftintrm_l_d     0111 00101001 11100 01111 ..... .....    @vv
vftintrp_w_s     0111 00101001 11100 10000 ..... .....    @vv
vftintrp_l_d     0111 00101001 11100 10001 ..... .....    @vv
vftintrz_w_s     0111 00101001 11100 10010 ..... .....    @vv
vftintrz_l_d     0111 00101001 11100 10011 ..... .....    @vv
vftintrne_w_s    0111 00101001 11100 10100 ..... .....    @vv
vftintrne_l_d    0111 00101001 11100 10101 ..... .....    @vv
vftint_wu_s      0111 00101001 11100 10110 ..... .....    @vv
vftint_lu_d      0111 00101001 11100 10111 ..... .....    @vv
vftintrz_wu_s    0111 00101001 11100 11100 ..... .....    @vv
vftintrz_lu_d    0111 00101001 11100 11101 ..... .....    @vv
vftint_w_d       0111 00010100 10011 ..... ..... .....    @vvv
vftintrm_w_d     0111 00010100 10100 ..... ..... .....    @vvv
vftintrp_w_d     0111 00010100 10101 ..... ..... .....    @vvv
vftintrz_w_d     0111 00010100 10110 ..... ..... .....    @vvv
vftintrne_w_d    0111 00010100 10111 ..... ..... .....    @vvv
vftintl_l_s      0111 00101001 11101 00000 ..... .....    @vv
vftinth_l_s      0111 00101001 11101 00001 ..... .....    @vv
vftintrml_l_s    0111 00101001 11101 00010 ..... .....    @vv
vftintrmh_l_s    0111 00101001 11101 00011 ..... .....    @vv
vftintrpl_l_s    0111 00101001 11101 00100 ..... .....    @vv
vftintrph_l_s    0111 00101001 11101 00101 ..... .....    @vv
vftintrzl_l_s    0111 00101001 11101 00110 ..... .....    @vv
vftintrzh_l_s    0111 00101001 11101 00111 ..... .....    @vv
vftintrnel_l_s   0111 00101001 11101 01000 ..... .....    @vv
vftintrneh_l_s   0111 00101001 11101 01001 ..... .....    @vv

vffint_s_w       0111 00101001 11100 00000 ..... .....    @vv
vffint_s_wu      0111 00101001 11100 00001 ..... .....    @vv
vffint_d_l       0111 00101001 11100 00010 ..... .....    @vv
vffint_d_lu      0111 00101001 11100 00011 ..... .....    @vv
vffintl_d_w      0111 00101001 11100 00100 ..... .....    @vv
vffinth_d_w      0111 00101001 11100 00101 ..... .....    @vv
vffint_s_l       0111 00010100 10000 ..... ..... .....    @vvv

vseq_b           0111 00000000 00000 ..... ..... .....    @vvv
vseq_h           0111 00000000 00001 ..... ..... .....    @vvv
vseq_w           0111 00000000 00010 ..... ..... .....    @vvv
vseq_d           0111 00000000 00011 ..... ..... .....    @vvv
vseqi_b          0111 00101000 00000 ..... ..... .....    @vv_i5
vseqi_h          0111 00101000 00001 ..... ..... .....    @vv_i5
vseqi_w          0111 00101000 00010 ..... ..... .....    @vv_i5
vseqi_d          0111 00101000 00011 ..... ..... .....    @vv_i5

vsle_b           0111 00000000 00100 ..... ..... .....    @vvv
vsle_h           0111 00000000 00101 ..... ..... .....    @vvv
vsle_w           0111 00000000 00110 ..... ..... .....    @vvv
vsle_d           0111 00000000 00111 ..... ..... .....    @vvv
vslei_b          0111 00101000 00100 ..... ..... .....    @vv_i5
vslei_h          0111 00101000 00101 ..... ..... .....    @vv_i5
vslei_w          0111 00101000 00110 ..... ..... .....    @vv_i5
vslei_d          0111 00101000 00111 ..... ..... .....    @vv_i5
vsle_bu          0111 00000000 01000 ..... ..... .....    @vvv
vsle_hu          0111 00000000 01001 ..... ..... .....    @vvv
vsle_wu          0111 00000000 01010 ..... ..... .....    @vvv
vsle_du          0111 00000000 01011 ..... ..... .....    @vvv
vslei_bu         0111 00101000 01000 ..... ..... .....    @vv_ui5
vslei_hu         0111 00101000 01001 ..... ..... .....    @vv_ui5
vslei_wu         0111 00101000 01010 ..... ..... .....    @vv_ui5
vslei_du         0111 00101000 01011 ..... ..... .....    @vv_ui5

vslt_b           0111 00000000 01100 ..... ..... .....    @vvv
vslt_h           0111 00000000 01101 ..... ..... .....    @vvv
vslt_w           0111 00000000 01110 ..... ..... .....    @vvv
vslt_d           0111 00000000 01111 ..... ..... .....    @vvv
vslti_b          0111 00101000 01100 ..... ..... .....    @vv_i5
vslti_h          0111 00101000 01101 ..... ..... .....    @vv_i5
vslti_w          0111 00101000 01110 ..... ..... .....    @vv_i5
vslti_d          0111 00101000 01111 ..... ..... .....    @vv_i5
vslt_bu          0111 00000000 10000 ..... ..... .....    @vvv
vslt_hu          0111 00000000 10001 ..... ..... .....    @vvv
vslt_wu          0111 00000000 10010 ..... ..... .....    @vvv
vslt_du          0111 00000000 10011 ..... ..... .....    @vvv
vslti_bu         0111 00101000 10000 ..... ..... .....    @vv_ui5
vslti_hu         0111 00101000 10001 ..... ..... .....    @vv_ui5
vslti_wu         0111 00101000 10010 ..... ..... .....    @vv_ui5
vslti_du         0111 00101000 10011 ..... ..... .....    @vv_ui5

vfcmp_cond_s     0000 11000101 ..... ..... ..... .....    @vvv_fcond
vfcmp_cond_d     0000 11000110 ..... ..... ..... .....    @vvv_fcond

vbitsel_v        0000 11010001 ..... ..... ..... .....    @vvvv

vbitseli_b       0111 00111100 01 ........ ..... .....    @vv_ui8

vseteqz_v        0111 00101001 11001 00110 ..... 00 ...   @cv
vsetnez_v        0111 00101001 11001 00111 ..... 00 ...   @cv
vsetanyeqz_b     0111 00101001 11001 01000 ..... 00 ...   @cv
vsetanyeqz_h     0111 00101001 11001 01001 ..... 00 ...   @cv
vsetanyeqz_w     0111 00101001 11001 01010 ..... 00 ...   @cv
vsetanyeqz_d     0111 00101001 11001 01011 ..... 00 ...   @cv
vsetallnez_b     0111 00101001 11001 01100 ..... 00 ...   @cv
vsetallnez_h     0111 00101001 11001 01101 ..... 00 ...   @cv
vsetallnez_w     0111 00101001 11001 01110 ..... 00 ...   @cv
vsetallnez_d     0111 00101001 11001 01111 ..... 00 ...   @cv

vinsgr2vr_b      0111 00101110 10111 0 .... ..... .....   @vr_ui4
vinsgr2vr_h      0111 00101110 10111 10 ... ..... .....   @vr_ui3
vinsgr2vr_w      0111 00101110 10111 110 .. ..... .....   @vr_ui2
vinsgr2vr_d      0111 00101110 10111 1110 . ..... .....   @vr_ui1
vpickve2gr_b     0111 00101110 11111 0 .... ..... .....   @rv_ui4
vpickve2gr_h     0111 00101110 11111 10 ... ..... .....   @rv_ui3
vpickve2gr_w     0111 00101110 11111 110 .. ..... .....   @rv_ui2
vpickve2gr_d     0111 00101110 11111 1110 . ..... .....   @rv_ui1
vpickve2gr_bu    0111 00101111 00111 0 .... ..... .....   @rv_ui4
vpickve2gr_hu    0111 00101111 00111 10 ... ..... .....   @rv_ui3
vpickve2gr_wu    0111 00101111 00111 110 .. ..... .....   @rv_ui2
vpickve2gr_du    0111 00101111 00111 1110 . ..... .....   @rv_ui1

vreplgr2vr_b     0111 00101001 11110 00000 ..... .....    @vr
vreplgr2vr_h     0111 00101001 11110 00001 ..... .....    @vr
vreplgr2vr_w     0111 00101001 11110 00010 ..... .....    @vr
vreplgr2vr_d     0111 00101001 11110 00011 ..... .....    @vr

vreplve_b        0111 00010010 00100 ..... ..... .....    @vvr
vreplve_h        0111 00010010 00101 ..... ..... .....    @vvr
vreplve_w        0111 00010010 00110 ..... ..... .....    @vvr
vreplve_d        0111 00010010 00111 ..... ..... .....    @vvr
vreplvei_b       0111 00101111 01111 0 .... ..... .....   @vv_ui4
vreplvei_h       0111 00101111 01111 10 ... ..... .....   @vv_ui3
vreplvei_w       0111 00101111 01111 110 .. ..... .....   @vv_ui2
vreplvei_d       0111 00101111 01111 1110 . ..... .....   @vv_ui1

vbsll_v          0111 00101000 11100 ..... ..... .....    @vv_ui5
vbsrl_v          0111 00101000 11101 ..... ..... .....    @vv_ui5

vpackev_b        0111 00010001 01100 ..... ..... .....    @vvv
vpackev_h        0111 00010001 01101 ..... ..... .....    @vvv
vpackev_w        0111 00010001 01110 ..... ..... .....    @vvv
vpackev_d        0111 00010001 01111 ..... ..... .....    @vvv
vpackod_b        0111 00010001 10000 ..... ..... .....    @vvv
vpackod_h        0111 00010001 10001 ..... ..... .....    @vvv
vpackod_w        0111 00010001 10010 ..... ..... .....    @vvv
vpackod_d        0111 00010001 10011 ..... ..... .....    @vvv

vpickev_b        0111 00010001 11100 ..... ..... .....    @vvv
vpickev_h        0111 00010001 11101 ..... ..... .....    @vvv
vpickev_w        0111 00010001 11110 ..... ..... .....    @vvv
vpickev_d        0111 00010001 11111 ..... ..... .....    @vvv
vpickod_b        0111 00010010 00000 ..... ..... .....    @vvv
vpickod_h        0111 00010010 00001 ..... ..... .....    @vvv
vpickod_w        0111 00010010 00010 ..... ..... .....    @vvv
vpickod_d        0111 00010010 00011 ..... ..... .....    @vvv

vilvl_b          0111 00010001 10100 ..... ..... .....    @vvv
vilvl_h          0111 00010001 10101 ..... ..... .....    @vvv
vilvl_w          0111 00010001 10110 ..... ..... .....    @vvv
vilvl_d          0111 00010001 10111 ..... ..... .....    @vvv
vilvh_b          0111 00010001 11000 ..... ..... .....    @vvv
vilvh_h          0111 00010001 11001 ..... ..... .....    @vvv
vilvh_w          0111 00010001 11010 ..... ..... .....    @vvv
vilvh_d          0111 00010001 11011 ..... ..... .....    @vvv

vshuf_b          0000 11010101 ..... ..... ..... .....    @vvvv
vshuf_h          0111 00010111 10101 ..... ..... .....    @vvv
vshuf_w          0111 00010111 10110 ..... ..... .....    @vvv
vshuf_d          0111 00010111 10111 ..... ..... .....    @vvv
vshuf4i_b        0111 00111001 00 ........ ..... .....    @vv_ui8
vshuf4i_h        0111 00111001 01 ........ ..... .....    @vv_ui8
vshuf4i_w        0111 00111001 10 ........ ..... .....    @vv_ui8
vshuf4i_d        0111 00111001 11 ........ ..... .....    @vv_ui8

vpermi_w         0111 00111110 01 ........ ..... .....    @vv_ui8

vextrins_d       0111 00111000 00 ........ ..... .....    @vv_ui8
vextrins_w       0111 00111000 01 ........ ..... .....    @vv_ui8
vextrins_h       0111 00111000 10 ........ ..... .....    @vv_ui8
vextrins_b       0111 00111000 11 ........ ..... .....    @vv_ui8

vld              0010 110000 ............ ..... .....     @vr_i12
vst              0010 110001 ............ ..... .....     @vr_i12
vldx             0011 10000100 00000 ..... ..... .....    @vrr
vstx             0011 10000100 01000 ..... ..... .....    @vrr

vldrepl_d        0011 00000001 0 ......... ..... .....    @vr_i9
vldrepl_w        0011 00000010 .......... ..... .....     @vr_i10
vldrepl_h        0011 0000010 ........... ..... .....     @vr_i11
vldrepl_b        0011 000010 ............ ..... .....     @vr_i12
vstelm_d         0011 00010001 0 . ........ ..... .....   @vr_i8i1
vstelm_w         0011 00010010 .. ........ ..... .....    @vr_i8i2
vstelm_h         0011 0001010 ... ........ ..... .....    @vr_i8i3
vstelm_b         0011 000110 .... ........ ..... .....    @vr_i8i4

#
# LoongArch LASX instructions
#
xvadd_b          0111 01000000 10100 ..... ..... .....    @vvv
xvadd_h          0111 01000000 10101 ..... ..... .....    @vvv
xvadd_w          0111 01000000 10110 ..... ..... .....    @vvv
xvadd_d          0111 01000000 10111 ..... ..... .....    @vvv
xvadd_q          0111 01010010 11010 ..... ..... .....    @vvv
xvsub_b          0111 01000000 11000 ..... ..... .....    @vvv
xvsub_h          0111 01000000 11001 ..... ..... .....    @vvv
xvsub_w          0111 01000000 11010 ..... ..... .....    @vvv
xvsub_d          0111 01000000 11011 ..... ..... .....    @vvv
xvsub_q          0111 01010010 11011 ..... ..... .....    @vvv

xvaddi_bu        0111 01101000 10100 ..... ..... .....    @vv_ui5
xvaddi_hu        0111 01101000 10101 ..... ..... .....    @vv_ui5
xvaddi_wu        0111 01101000 10110 ..... ..... .....    @vv_ui5
xvaddi_du        0111 01101000 10111 ..... ..... .....    @vv_ui5
xvsubi_bu        0111 01101000 11000 ..... ..... .....    @vv_ui5
xvsubi_hu        0111 01101000 11001 ..... ..... .....    @vv_ui5
xvsubi_wu        0111 01101000 11010 ..... ..... .....    @vv_ui5
xvsubi_du        0111 01101000 11011 ..... ..... .....    @vv_ui5

xvneg_b          0111 01101001 11000 01100 ..... .....    @vv
xvneg_h          0111 01101001 11000 01101 ..... .....    @vv
xvneg_w          0111 01101001 11000 01110 ..... .....    @vv
xvneg_d          0111 01101001 11000 01111 ..... .....    @vv

xvsadd_b         0111 01000100 01100 ..... ..... .....    @vvv
xvsadd_h         0111 01000100 01101 ..... ..... .....    @vvv
xvsadd_w         0111 01000100 01110 ..... ..... .....    @vvv
xvsadd_d         0111 01000100 01111 ..... ..... .....    @vvv
xvsadd_bu        0111 01000100 10100 ..... ..... .....    @vvv
xvsadd_hu        0111 01000100 10101 ..... ..... .....    @vvv
xvsadd_wu        0111 01000100 10110 ..... ..... .....    @vvv
xvsadd_du        0111 01000100 10111 ..... ..... .....    @vvv

xvssub_b         0111 01000100 10000 ..... ..... .....    @vvv
xvssub_h         0111 01000100 10001 ..... ..... .....    @vvv
xvssub_w         0111 01000100 10010 ..... ..... .....    @vvv
xvssub_d         0111 01000100 10011 ..... ..... .....    @vvv
xvssub_bu        0111 01000100 11000 ..... ..... .....    @vvv
xvssub_hu        0111 01000100 11001 ..... ..... .....    @vvv
xvssub_wu        0111 01000100 11010 ..... ..... .....    @vvv
xvssub_du        0111 01000100 11011 ..... ..... .....    @vvv

xvhaddw_h_b      0111 01000101 01000 ..... ..... .....    @vvv
xvhaddw_w_h      0111 01000101 01001 ..... ..... .....    @vvv
xvhaddw_d_w      0111 01000101 01010 ..... ..... .....    @vvv
xvhaddw_q_d      0111 01000101 01011 ..... ..... .....    @vvv
xvhaddw_hu_bu    0111 01000101 10000 ..... ..... .....    @vvv
xvhaddw_wu_hu    0111 01000101 10001 ..... ..... .....    @vvv
xvhaddw_du_wu    0111 01000101 10010 ..... ..... .....    @vvv
xvhaddw_qu_du    0111 01000101 10011 ..... ..... .....    @vvv

xvhsubw_h_b      0111 01000101 01100 ..... ..... .....    @vvv
xvhsubw_w_h      0111 01000101 01101 ..... ..... .....    @vvv
xvhsubw_d_w      0111 01000101 01110 ..... ..... .....    @vvv
xvhsubw_q_d      0111 01000101 01111 ..... ..... .....    @vvv
xvhsubw_hu_bu    0111 01000101 10100 ..... ..... .....    @vvv
xvhsubw_wu_hu    0111 01000101 10101 ..... ..... .....    @vvv
xvhsubw_du_wu    0111 01000101 10110 ..... ..... .....    @vvv
xvhsubw_qu_du    0111 01000101 10111 ..... ..... .....    @vvv

xvaddwev_h_b     0111 01000001 11100 ..... ..... .....    @vvv
xvaddwev_w_h     0111 01000001 11101 ..... ..... .....    @vvv
xvaddwev_d_w     0111 01000001 11110 ..... ..... .....    @vvv
xvaddwev_q_d     0111 01000001 11111 ..... ..... .....    @vvv
xvaddwod_h_b     0111 01000010 00100 ..... ..... .....    @vvv
xvaddwod_w_h     0111 01000010 00101 ..... ..... .....    @vvv
xvaddwod_d_w     0111 01000010 00110 ..... ..... .....    @vvv
xvaddwod_q_d     0111 01000010 00111 ..... ..... .....    @vvv

xvsubwev_h_b     0111 01000010 00000 ..... ..... .....    @vvv
xvsubwev_w_h     0111 01000010 00001 ..... ..... .....    @vvv
xvsubwev_d_w     0111 01000010 00010 ..... ..... .....    @vvv
xvsubwev_q_d     0111 01000010 00011 ..... ..... .....    @vvv
xvsubwod_h_b     0111 01000010 01000 ..... ..... .....    @vvv
xvsubwod_w_h     0111 01000010 01001 ..... ..... .....    @vvv
xvsubwod_d_w     0111 01000010 01010 ..... ..... .....    @vvv
xvsubwod_q_d     0111 01000010 01011 ..... ..... .....    @vvv

xvaddwev_h_bu    0111 01000010 11100 ..... ..... .....    @vvv
xvaddwev_w_hu    0111 01000010 11101 ..... ..... .....    @vvv
xvaddwev_d_wu    0111 01000010 11110 ..... ..... .....    @vvv
xvaddwev_q_du    0111 01000010 11111 ..... ..... .....    @vvv
xvaddwod_h_bu    0111 01000011 00100 ..... ..... .....    @vvv
xvaddwod_w_hu    0111 01000011 00101 ..... ..... .....    @vvv
xvaddwod_d_wu    0111 01000011 00110 ..... ..... .....    @vvv
xvaddwod_q_du    0111 01000011 00111 ..... ..... .....    @vvv

xvsubwev_h_bu    0111 01000011 00000 ..... ..... .....    @vvv
xvsubwev_w_hu    0111 01000011 00001 ..... ..... .....    @vvv
xvsubwev_d_wu    0111 01000011 00010 ..... ..... .....    @vvv
xvsubwev_q_du    0111 01000011 00011 ..... ..... .....    @vvv
xvsubwod_h_bu    0111 01000011 01000 ..... ..... .....    @vvv
xvsubwod_w_hu    0111 01000011 01001 ..... ..... .....    @vvv
xvsubwod_d_wu    0111 01000011 01010 ..... ..... .....    @vvv
xvsubwod_q_du    0111 01000011 01011 ..... ..... .....    @vvv

xvaddwev_h_bu_b  0111 01000011 11100 ..... ..... .....    @vvv
xvaddwev_w_hu_h  0111 01000011 11101 ..... ..... .....    @vvv
xvaddwev_d_wu_w  0111 01000011 11110 ..... ..... .....    @vvv
xvaddwev_q_du_d  0111 01000011 11111 ..... ..... .....    @vvv
xvaddwod_h_bu_b  0111 01000100 00000 ..... ..... .....    @vvv
xvaddwod_w_hu_h  0111 01000100 00001 ..... ..... .....    @vvv
xvaddwod_d_wu_w  0111 01000100 00010 ..... ..... .....    @vvv
xvaddwod_q_du_d  0111 01000100 00011 ..... ..... .....    @vvv

xvavg_b          0111 01000110 01000 ..... ..... .....    @vvv
xvavg_h          0111 01000110 01001 ..... ..... .....    @vvv
xvavg_w          0111 01000110 01010 ..... ..... .....    @vvv
xvavg_d          0111 01000110 01011 ..... ..... .....    @vvv
xvavg_bu         0111 01000110 01100 ..... ..... .....    @vvv
xvavg_hu         0111 01000110 01101 ..... ..... .....    @vvv
xvavg_wu         0111 01000110 01110 ..... ..... .....    @vvv
xvavg_du         0111 01000110 01111 ..... ..... .....    @vvv
xvavgr_b         0111 01000110 10000 ..... ..... .....    @vvv
xvavgr_h         0111 01000110 10001 ..... ..... .....    @vvv
xvavgr_w         0111 01000110 10010 ..... ..... .....    @vvv
xvavgr_d         0111 01000110 10011 ..... ..... .....    @vvv
xvavgr_bu        0111 01000110 10100 ..... ..... .....    @vvv
xvavgr_hu        0111 01000110 10101 ..... ..... .....    @vvv
xvavgr_wu        0111 01000110 10110 ..... ..... .....    @vvv
xvavgr_du        0111 01000110 10111 ..... ..... .....    @vvv

xvabsd_b         0111 01000110 00000 ..... ..... .....    @vvv
xvabsd_h         0111 01000110 00001 ..... ..... .....    @vvv
xvabsd_w         0111 01000110 00010 ..... ..... .....    @vvv
xvabsd_d         0111 01000110 00011 ..... ..... .....    @vvv
xvabsd_bu        0111 01000110 00100 ..... ..... .....    @vvv
xvabsd_hu        0111 01000110 00101 ..... ..... .....    @vvv
xvabsd_wu        0111 01000110 00110 ..... ..... .....    @vvv
xvabsd_du        0111 01000110 00111 ..... ..... .....    @vvv

xvadda_b         0111 01000101 11000 ..... ..... .....    @vvv
xvadda_h         0111 01000101 11001 ..... ..... .....    @vvv
xvadda_w         0111 01000101 11010 ..... ..... .....    @vvv
xvadda_d         0111 01000101 11011 ..... ..... .....    @vvv

xvmax_b          0111 01000111 00000 ..... ..... .....    @vvv
xvmax_h          0111 01000111 00001 ..... ..... .....    @vvv
xvmax_w          0111 01000111 00010 ..... ..... .....    @vvv
xvmax_d          0111 01000111 00011 ..... ..... .....    @vvv
xvmax_bu         0111 01000111 01000 ..... ..... .....    @vvv
xvmax_hu         0111 01000111 01001 ..... ..... .....    @vvv
xvmax_wu         0111 01000111 01010 ..... ..... .....    @vvv
xvmax_du         0111 01000111 01011 ..... ..... .....    @vvv

xvmaxi_b         0111 01101001 00000 ..... ..... .....    @vv_i5
xvmaxi_h         0111 01101001 00001 ..... ..... .....    @vv_i5
xvmaxi_w         0111 01101001 00010 ..... ..... .....    @vv_i5
xvmaxi_d         0111 01101001 00011 ..... ..... .....    @vv_i5
xvmaxi_bu        0111 01101001 01000 ..... ..... .....    @vv_ui5
xvmaxi_hu        0111 01101001 01001 ..... ..... .....    @vv_ui5
xvmaxi_wu        0111 01101001 01010 ..... ..... .....    @vv_ui5
xvmaxi_du        0111 01101001 01011 ..... ..... .....    @vv_ui5

xvmin_b          0111 01000111 00100 ..... ..... .....    @vvv
xvmin_h          0111 01000111 00101 ..... ..... .....    @vvv
xvmin_w          0111 01000111 00110 ..... ..... .....    @vvv
xvmin_d          0111 01000111 00111 ..... ..... .....    @vvv
xvmin_bu         0111 01000111 01100 ..... ..... .....    @vvv
xvmin_hu         0111 01000111 01101 ..... ..... .....    @vvv
xvmin_wu         0111 01000111 01110 ..... ..... .....    @vvv
xvmin_du         0111 01000111 01111 ..... ..... .....    @vvv

xvmini_b         0111 01101001 00100 ..... ..... .....    @vv_i5
xvmini_h         0111 01101001 00101 ..... ..... .....    @vv_i5
xvmini_w         0111 01101001 00110 ..... ..... .....    @vv_i5
xvmini_d         0111 01101001 00111 ..... ..... .....    @vv_i5
xvmini_bu        0111 01101001 01100 ..... ..... .....    @vv_ui5
xvmini_hu        0111 01101001 01101 ..... ..... .....    @vv_ui5
xvmini_wu        0111 01101001 01110 ..... ..... .....    @vv_ui5
xvmini_du        0111 01101001 01111 ..... ..... .....    @vv_ui5

xvmul_b          0111 01001000 01000 ..... ..... .....    @vvv
xvmul_h          0111 01001000 01001 ..... ..... .....    @vvv
xvmul_w          0111 01001000 01010 ..... ..... .....    @vvv
xvmul_d          0111 01001000 01011 ..... ..... .....    @vvv
xvmuh_b          0111 01001000 01100 ..... ..... .....    @vvv
xvmuh_h          0111 01001000 01101 ..... ..... .....    @vvv
xvmuh_w          0111 01001000 01110 ..... ..... .....    @vvv
xvmuh_d          0111 01001000 01111 ..... ..... .....    @vvv
xvmuh_bu         0111 01001000 10000 ..... ..... .....    @vvv
xvmuh_hu         0111 01001000 10001 ..... ..... .....    @vvv
xvmuh_wu         0111 01001000 10010 ..... ..... .....    @vvv
xvmuh_du         0111 01001000 10011 ..... ..... .....    @vvv

xvmulwev_h_b     0111 01001001 00000 ..... ..... .....    @vvv
xvmulwev_w_h     0111 01001001 00001 ..... ..... .....    @vvv
xvmulwev_d_w     0111 01001001 00010 ..... ..... .....    @vvv
xvmulwev_q_d     0111 01001001 00011 ..... ..... .....    @vvv
xvmulwod_h_b     0111 01001001 00100 ..... ..... .....    @vvv
xvmulwod_w_h     0111 01001001 00101 ..... ..... .....    @vvv
xvmulwod_d_w     0111 01001001 00110 ..... ..... .....    @vvv
xvmulwod_q_d     0111 01001001 00111 ..... ..... .....    @vvv
xvmulwev_h_bu    0111 01001001 10000 ..... ..... .....    @vvv
xvmulwev_w_hu    0111 01001001 10001 ..... ..... .....    @vvv
xvmulwev_d_wu    0111 01001001 10010 ..... ..... .....    @vvv
xvmulwev_q_du    0111 01001001 10011 ..... ..... .....    @vvv
xvmulwod_h_bu    0111 01001001 10100 ..... ..... .....    @vvv
xvmulwod_w_hu    0111 01001001 10101 ..... ..... .....    @vvv
xvmulwod_d_wu    0111 01001001 10110 ..... ..... .....    @vvv
xvmulwod_q_du    0111 01001001 10111 ..... ..... .....    @vvv
xvmulwev_h_bu_b  0111 01001010 00000 ..... ..... .....    @vvv
xvmulwev_w_hu_h  0111 01001010 00001 ..... ..... .....    @vvv
xvmulwev_d_wu_w  0111 01001010 00010 ..... ..... .....    @vvv
xvmulwev_q_du_d  0111 01001010 00011 ..... ..... .....    @vvv
xvmulwod_h_bu_b  0111 01001010 00100 ..... ..... .....    @vvv
xvmulwod_w_hu_h  0111 01001010 00101 ..... ..... .....    @vvv
xvmulwod_d_wu_w  0111 01001010 00110 ..... ..... .....    @vvv
xvmulwod_q_du_d  0111 01001010 00111 ..... ..... .....    @vvv

xvmadd_b         0111 01001010 10000 ..... ..... .....    @vvv
xvmadd_h         0111 01001010 10001 ..... ..... .....    @vvv
xvmadd_w         0111 01001010 10010 ..... ..... .....    @vvv
xvmadd_d         0111 01001010 10011 ..... ..... .....    @vvv
xvmsub_b         0111 01001010 10100 ..... ..... .....    @vvv
xvmsub_h         0111 01001010 10101 ..... ..... .....    @vvv
xvmsub_w         0111 01001010 10110 ..... ..... .....    @vvv
xvmsub_d         0111 01001010 10111 ..... ..... .....    @vvv

xvmaddwev_h_b    0111 01001010 11000 ..... ..... .....    @vvv
xvmaddwev_w_h    0111 01001010 11001 ..... ..... .....    @vvv
xvmaddwev_d_w    0111 01001010 11010 ..... ..... .....    @vvv
xvmaddwev_q_d    0111 01001010 11011 ..... ..... .....    @vvv
xvmaddwod_h_b    0111 01001010 11100 ..... ..... .....    @vvv
xvmaddwod_w_h    0111 01001010 11101 ..... ..... .....    @vvv
xvmaddwod_d_w    0111 01001010 11110 ..... ..... .....    @vvv
xvmaddwod_q_d    0111 01001010 11111 ..... ..... .....    @vvv
xvmaddwev_h_bu   0111 01001011 01000 ..... ..... .....    @vvv
xvmaddwev_w_hu   0111 01001011 01001 ..... ..... .....    @vvv
xvmaddwev_d_wu   0111 01001011 01010 ..... ..... .....    @vvv
xvmaddwev_q_du   0111 01001011 01011 ..... ..... .....    @vvv
xvmaddwod_h_bu   0111 01001011 01100 ..... ..... .....    @vvv
xvmaddwod_w_hu   0111 01001011 01101 ..... ..... .....    @vvv
xvmaddwod_d_wu   0111 01001011 01110 ..... ..... .....    @vvv
xvmaddwod_q_du   0111 01001011 01111 ..... ..... .....    @vvv
xvmaddwev_h_bu_b 0111 01001011 11000 ..... ..... .....    @vvv
xvmaddwev_w_hu_h 0111 01001011 11001 ..... ..... .....    @vvv
xvmaddwev_d_wu_w 0111 01001011 11010 ..... ..... .....    @vvv
xvmaddwev_q_du_d 0111 01001011 11011 ..... ..... .....    @vvv
xvmaddwod_h_bu_b 0111 01001011 11100 ..... ..... .....    @vvv
xvmaddwod_w_hu_h 0111 01001011 11101 ..... ..... .....    @vvv
xvmaddwod_d_wu_w 0111 01001011 11110 ..... ..... .....    @vvv
xvmaddwod_q_du_d 0111 01001011 11111 ..... ..... .....    @vvv

xvdiv_b          0111 01001110 00000 ..... ..... .....    @vvv
xvdiv_h          0111 01001110 00001 ..... ..... .....    @vvv
xvdiv_w          0111 01001110 00010 ..... ..... .....    @vvv
xvdiv_d          0111 01001110 00011 ..... ..... .....    @vvv
xvmod_b          0111 01001110 00100 ..... ..... .....    @vvv
xvmod_h          0111 01001110 00101 ..... ..... .....    @vvv
xvmod_w          0111 01001110 00110 ..... ..... .....    @vvv
xvmod_d          0111 01001110 00111 ..... ..... .....    @vvv
xvdiv_bu         0111 01001110 01000 ..... ..... .....    @vvv
xvdiv_hu         0111 01001110 01001 ..... ..... .....    @vvv
xvdiv_wu         0111 01001110 01010 ..... ..... .....    @vvv
xvdiv_du         0111 01001110 01011 ..... ..... .....    @vvv
xvmod_bu         0111 01001110 01100 ..... ..... .....    @vvv
xvmod_hu         0111 01001110 01101 ..... ..... .....    @vvv
xvmod_wu         0111 01001110 01110 ..... ..... .....    @vvv
xvmod_du         0111 01001110 01111 ..... ..... .....    @vvv

xvsat_b          0111 01110010 01000 01 ... ..... .....   @vv_ui3
xvsat_h          0111 01110010 01000 1 .... ..... .....   @vv_ui4
xvsat_w          0111 01110010 01001 ..... ..... .....    @vv_ui5
xvsat_d          0111 01110010 0101 ...... ..... .....    @vv_ui6
xvsat_bu         0111 01110010 10000 01 ... ..... .....   @vv_ui3
xvsat_hu         0111 01110010 10000 1 .... ..... .....   @vv_ui4
xvsat_wu         0111 01110010 10001 ..... ..... .....    @vv_ui5
xvsat_du         0111 01110010 1001 ...... ..... .....    @vv_ui6

xvexth_h_b       0111 01101001 11101 11000 ..... .....    @vv
xvexth_w_h       0111 01101001 11101 11001 ..... .....    @vv
xvexth_d_w       0111 01101001 11101 11010 ..... .....    @vv
xvexth_q_d       0111 01101001 11101 11011 ..... .....    @vv
xvexth_hu_bu     0111 01101001 11101 11100 ..... .....    @vv
xvexth_wu_hu     0111 01101001 11101 11101 ..... .....    @vv
xvexth_du_wu     0111 01101001 11101 11110 ..... .....    @vv
xvexth_qu_du     0111 01101001 11101 11111 ..... .....    @vv

vext2xv_h_b      0111 01101001 11110 00100 ..... .....    @vv
vext2xv_w_b      0111 01101001 11110 00101 ..... .....    @vv
vext2xv_d_b      0111 01101001 11110 00110 ..... .....    @vv
vext2xv_w_h      0111 01101001 11110 00111 ..... .....    @vv
vext2xv_d_h      0111 01101001 11110 01000 ..... .....    @vv
vext2xv_d_w      0111 01101001 11110 01001 ..... .....    @vv
vext2xv_hu_bu    0111 01101001 11110 01010 ..... .....    @vv
vext2xv_wu_bu    0111 01101001 11110 01011 ..... .....    @vv
vext2xv_du_bu    0111 01101001 11110 01100 ..... .....    @vv
vext2xv_wu_hu    0111 01101001 11110 01101 ..... .....    @vv
vext2xv_du_hu    0111 01101001 11110 01110 ..... .....    @vv
vext2xv_du_wu    0111 01101001 11110 01111 ..... .....    @vv

xvsigncov_b      0111 01010010 11100 ..... ..... .....    @vvv
xvsigncov_h      0111 01010010 11101 ..... ..... .....    @vvv
xvsigncov_w      0111 01010010 11110 ..... ..... .....    @vvv
xvsigncov_d      0111 01010010 11111 ..... ..... .....    @vvv

xvmskltz_b       0111 01101001 11000 10000 ..... .....    @vv
xvmskltz_h       0111 01101001 11000 10001 ..... .....    @vv
xvmskltz_w       0111 01101001 11000 10010 ..... .....    @vv
xvmskltz_d       0111 01101001 11000 10011 ..... .....    @vv
xvmskgez_b       0111 01101001 11000 10100 ..... .....    @vv
xvmsknz_b        0111 01101001 11000 11000 ..... .....    @vv

xvldi            0111 01111110 00 ............. .....     @v_i13

xvand_v          0111 01010010 01100 ..... ..... .....    @vvv
xvor_v           0111 01010010 01101 ..... ..... .....    @vvv
xvxor_v          0111 01010010 01110 ..... ..... .....    @vvv
xvnor_v          0111 01010010 01111 ..... ..... .....    @vvv
xvandn_v         0111 01010010 10000 ..... ..... .....    @vvv
xvorn_v          0111 01010010 10001 ..... ..... .....    @vvv

xvandi_b         0111 01111101 00 ........ ..... .....    @vv_ui8
xvori_b          0111 01111101 01 ........ ..... .....    @vv_ui8
xvxori_b         0111 01111101 10 ........ ..... .....    @vv_ui8
xvnori_b         0111 01111101 11 ........ ..... .....    @vv_ui8

xvsll_b          0111 01001110 10000 ..... ..... .....    @vvv
xvsll_h          0111 01001110 10001 ..... ..... .....    @vvv
xvsll_w          0111 01001110 10010 ..... ..... .....    @vvv
xvsll_d          0111 01001110 10011 ..... ..... .....    @vvv
xvslli_b         0111 01110010 11000 01 ... ..... .....   @vv_ui3
xvslli_h         0111 01110010 11000 1 .... ..... .....   @vv_ui4
xvslli_w         0111 01110010 11001 ..... ..... .....    @vv_ui5
xvslli_d         0111 01110010 1101 ...... ..... .....    @vv_ui6
xvsrl_b          0111 01001110 10100 ..... ..... .....    @vvv
xvsrl_h          0111 01001110 10101 ..... ..... .....    @vvv
xvsrl_w          0111 01001110 10110 ..... ..... .....    @vvv
xvsrl_d          0111 01001110 10111 ..... ..... .....    @vvv
xvsrli_b         0111 01110011 00000 01 ... ..... .....   @vv_ui3
xvsrli_h         0111 01110011 00000 1 .... ..... .....   @vv_ui4
xvsrli_w         0111 01110011 00001 ..... ..... .....    @vv_ui5
xvsrli_d         0111 01110011 0001 ...... ..... .....    @vv_ui6
xvsra_b          0111 01001110 11000 ..... ..... .....    @vvv
xvsra_h          0111 01001110 11001 ..... ..... .....    @vvv
xvsra_w          0111 01001110 11010 ..... ..... .....    @vvv
xvsra_d          0111 01001110 11011 ..... ..... .....    @vvv
xvsrai_b         0111 01110011 01000 01 ... ..... .....   @vv_ui3
xvsrai_h         0111 01110011 01000 1 .... ..... .....   @vv_ui4
xvsrai_w         0111 01110011 01001 ..... ..... .....    @vv_ui5
xvsrai_d         0111 01110011 0101 ...... ..... .....    @vv_ui6
xvrotr_b         0111 01001110 11100 ..... ..... .....    @vvv
xvrotr_h         0111 01001110 11101 ..... ..... .....    @vvv
xvrotr_w         0111 01001110 11110 ..... ..... .....    @vvv
xvrotr_d         0111 01001110 11111 ..... ..... .....    @vvv
xvrotri_b        0111 01101010 00000 01 ... ..... .....   @vv_ui3
xvrotri_h        0111 01101010 00000 1 .... ..... .....   @vv_ui4
xvrotri_w        0111 01101010 00001 ..... ..... .....    @vv_ui5
xvrotri_d        0111 01101010 0001 ...... ..... .....    @vv_ui6

xvsllwil_h_b     0111 01110000 10000 01 ... ..... .....   @vv_ui3
xvsllwil_w_h     0111 01110000 10000 1 .... ..... .....   @vv_ui4
xvsllwil_d_w     0111 01110000 10001 ..... ..... .....    @vv_ui5
xvextl_q_d       0111 01110000 10010 00000 ..... .....    @vv
xvsllwil_hu_bu   0111 01110000 11000 01 ... ..... .....   @vv_ui3
xvsllwil_wu_hu   0111 01110000 11000 1 .... ..... .....   @vv_ui4
xvsllwil_du_wu   0111 01110000 11001 ..... ..... .....    @vv_ui5
xvextl_qu_du     0111 01110000 11010 00000 ..... .....    @vv

xvsrlr_b         0111 01001111 00000 ..... ..... .....    @vvv
xvsrlr_h         0111 01001111 00001 ..... ..... .....    @vvv
xvsrlr_w         0111 01001111 00010 ..... ..... .....    @vvv
xvsrlr_d         0111 01001111 00011 ..... ..... .....    @vvv
xvsrlri_b        0111 01101010 01000 01 ... ..... .....   @vv_ui3
xvsrlri_h        0111 01101010 01000 1 .... ..... .....   @vv_ui4
xvsrlri_w        0111 01101010 01001 ..... ..... .....    @vv_ui5
xvsrlri_d        0111 01101010 0101 ...... ..... .....    @vv_ui6
xvsrar_b         0111 01001111 00100 ..... ..... .....    @vvv
xvsrar_h         0111 01001111 00101 ..... ..... .....    @vvv
xvsrar_w         0111 01001111 00110 ..... ..... .....    @vvv
xvsrar_d         0111 01001111 00111 ..... ..... .....    @vvv
xvsrari_b        0111 01101010 10000 01 ... ..... .....   @vv_ui3
xvsrari_h        0111 01101010 10000 1 .... ..... .....   @vv_ui4
xvsrari_w        0111 01101010 10001 ..... ..... .....    @vv_ui5
xvsrari_d        0111 01101010 1001 ...... ..... .....    @vv_ui6

xvsrln_b_h       0111 01001111 01001 ..... ..... .....    @vvv
xvsrln_h_w       0111 01001111 01010 ..... ..... .....    @vvv
xvsrln_w_d       0111 01001111 01011 ..... ..... .....    @vvv
xvsran_b_h       0111 01001111 01101 ..... ..... .....    @vvv
xvsran_h_w       0111 01001111 01110 ..... ..... .....    @vvv
xvsran_w_d       0111 01001111 01111 ..... ..... .....    @vvv

xvsrlni_b_h      0111 01110100 00000 1 .... ..... .....   @vv_ui4
xvsrlni_h_w      0111 01110100 00001 ..... ..... .....    @vv_ui5
xvsrlni_w_d      0111 01110100 0001 ...... ..... .....    @vv_ui6
xvsrlni_d_q      0111 01110100 001 ....... ..... .....    @vv_ui7
xvsrani_b_h      0111 01110101 10000 1 .... ..... .....   @vv_ui4
xvsrani_h_w      0111 01110101 10001 ..... ..... .....    @vv_ui5
xvsrani_w_d      0111 01110101 1001 ...... ..... .....    @vv_ui6
xvsrani_d_q      0111 01110101 101 ....... ..... .....    @vv_ui7

xvsrlrn_b_h      0111 01001111 10001 ..... ..... .....    @vvv
xvsrlrn_h_w      0111 01001111 10010 ..... ..... .....    @vvv
xvsrlrn_w_d      0111 01001111 10011 ..... ..... .....    @vvv
xvsrarn_b_h      0111 01001111 10101 ..... ..... .....    @vvv
xvsrarn_h_w      0111 01001111 10110 ..... ..... .....    @vvv
xvsrarn_w_d      0111 01001111 10111 ..... ..... .....    @vvv

xvsrlrni_b_h     0111 01110100 01000 1 .... ..... .....   @vv_ui4
xvsrlrni_h_w     0111 01110100 01001 ..... ..... .....    @vv_ui5
xvsrlrni_w_d     0111 01110100 0101 ...... ..... .....    @vv_ui6
xvsrlrni_d_q     0111 01110100 011 ....... ..... .....    @vv_ui7
xvsrarni_b_h     0111 01110101 11000 1 .... ..... .....   @vv_ui4
xvsrarni_h_w     0111 01110101 11001 ..... ..... .....    @vv_ui5
xvsrarni_w_d     0111 01110101 1101 ...... ..... .....    @vv_ui6
xvsrarni_d_q     0111 01110101 111 ....... ..... .....    @vv_ui7

xvssrln_b_h      0111 01001111 11001 ..... ..... .....    @vvv
xvssrln_h_w      0111 01001111 11010 ..... ..... .....    @vvv
xvssrln_w_d      0111 01001111 11011 ..... ..... .....    @vvv
xvssran_b_h      0111 01001111 11101 ..... ..... .....    @vvv
xvssran_h_w      0111 01001111 11110 ..... ..... .....    @vvv
xvssran_w_d      0111 01001111 11111 ..... ..... .....    @vvv
xvssrln_bu_h     0111 01010000 01001 ..... ..... .....    @vvv
xvssrln_hu_w     0111 01010000 01010 ..... ..... .....    @vvv
xvssrln_wu_d     0111 01010000 01011 ..... ..... .....    @vvv
xvssran_bu_h     0111 01010000 01101 ..... ..... .....    @vvv
xvssran_hu_w     0111 01010000 01110 ..... ..... .....    @vvv
xvssran_wu_d     0111 01010000 01111 ..... ..... .....    @vvv

xvssrlni_b_h     0111 01110100 10000 1 .... ..... .....   @vv_ui4
xvssrlni_h_w     0111 01110100 10001 ..... ..... .....    @vv_ui5
xvssrlni_w_d     0111 01110100 1001 ...... ..... .....    @vv_ui6
xvssrlni_d_q     0111 01110100 101 ....... ..... .....    @vv_ui7
xvssrani_b_h     0111 01110110 00000 1 .... ..... .....   @vv_ui4
xvssrani_h_w     0111 01110110 00001 ..... ..... .....    @vv_ui5
xvssrani_w_d     0111 01110110 0001 ...... ..... .....    @vv_ui6
xvssrani_d_q     0111 01110110 001 ....... ..... .....    @vv_ui7
xvssrlni_bu_h    0111 01110100 11000 1 .... ..... .....   @vv_ui4
xvssrlni_hu_w    0111 01110100 11001 ..... ..... .....    @vv_ui5
xvssrlni_wu_d    0111 01110100 1101 ...... ..... .....    @vv_ui6
xvssrlni_du_q    0111 01110100 111 ....... ..... .....    @vv_ui7
xvssrani_bu_h    0111 01110110 01000 1 .... ..... .....   @vv_ui4
xvssrani_hu_w    0111 01110110 01001 ..... ..... .....    @vv_ui5
xvssrani_wu_d    0111 01110110 0101 ...... ..... .....    @vv_ui6
xvssrani_du_q    0111 01110110 011 ....... ..... .....    @vv_ui7

xvssrlrn_b_h     0111 01010000 00001 ..... ..... .....    @vvv
xvssrlrn_h_w     0111 01010000 00010 ..... ..... .....    @vvv
xvssrlrn_w_d     0111 01010000 00011 ..... ..... .....    @vvv
xvssrarn_b_h     0111 01010000 00101 ..... ..... .....    @vvv
xvssrarn_h_w     0111 01010000 00110 ..... ..... .....    @vvv
xvssrarn_w_d     0111 01010000 00111 ..... ..... .....    @vvv
xvssrlrn_bu_h    0111 01010000 10001 ..... ..... .....    @vvv
xvssrlrn_hu_w    0111 01010000 10010 ..... ..... .....    @vvv
xvssrlrn_wu_d    0111 01010000 10011 ..... ..... .....    @vvv
xvssrarn_bu_h    0111 01010000 10101 ..... ..... .....    @vvv
xvssrarn_hu_w    0111 01010000 10110 ..... ..... .....    @vvv
xvssrarn_wu_d    0111 01010000 10111 ..... ..... .....    @vvv

xvssrlrni_b_h    0111 01110101 00000 1 .... ..... .....   @vv_ui4
xvssrlrni_h_w    0111 01110101 00001 ..... ..... .....    @vv_ui5
xvssrlrni_w_d    0111 01110101 0001 ...... ..... .....    @vv_ui6
xvssrlrni_d_q    0111 01110101 001 ....... ..... .....    @vv_ui7
xvssrarni_b_h    0111 01110110 10000 1 .... ..... .....   @vv_ui4
xvssrarni_h_w    0111 01110110 10001 ..... ..... .....    @vv_ui5
xvssrarni_w_d    0111 01110110 1001 ...... ..... .....    @vv_ui6
xvssrarni_d_q    0111 01110110 101 ....... ..... .....    @vv_ui7
xvssrlrni_bu_h   0111 01110101 01000 1 .... ..... .....   @vv_ui4
xvssrlrni_hu_w   0111 01110101 01001 ..... ..... .....    @vv_ui5
xvssrlrni_wu_d   0111 01110101 0101 ...... ..... .....    @vv_ui6
xvssrlrni_du_q   0111 01110101 011 ....... ..... .....    @vv_ui7
xvssrarni_bu_h   0111 01110110 11000 1 .... ..... .....   @vv_ui4
xvssrarni_hu_w   0111 01110110 11001 ..... ..... .....    @vv_ui5
xvssrarni_wu_d   0111 01110110 1101 ...... ..... .....    @vv_ui6
xvssrarni_du_q   0111 01110110 111 ....... ..... .....    @vv_ui7

xvclo_b          0111 01101001 11000 00000 ..... .....    @vv
xvclo_h          0111 01101001 11000 00001 ..... .....    @vv
xvclo_w          0111 01101001 11000 00010 ..... .....    @vv
xvclo_d          0111 01101001 11000 00011 ..... .....    @vv
xvclz_b          0111 01101001 11000 00100 ..... .....    @vv
xvclz_h          0111 01101001 11000 00101 ..... .....    @vv
xvclz_w          0111 01101001 11000 00110 ..... .....    @vv
xvclz_d          0111 01101001 11000 00111 ..... .....    @vv

xvpcnt_b         0111 01101001 11000 01000 ..... .....    @vv
xvpcnt_h         0111 01101001 11000 01001 ..... .....    @vv
xvpcnt_w         0111 01101001 11000 01010 ..... .....    @vv
xvpcnt_d         0111 01101001 11000 01011 ..... .....    @vv

xvbitclr_b       0111 01010000 11000 ..... ..... .....    @vvv
xvbitclr_h       0111 01010000 11001 ..... ..... .....    @vvv
xvbitclr_w       0111 01010000 11010 ..... ..... .....    @vvv
xvbitclr_d       0111 01010000 11011 ..... ..... .....    @vvv
xvbitclri_b      0111 01110001 00000 01 ... ..... .....   @vv_ui3
xvbitclri_h      0111 01110001 00000 1 .... ..... .....   @vv_ui4
xvbitclri_w      0111 01110001 00001 ..... ..... .....    @vv_ui5
xvbitclri_d      0111 01110001 0001 ...... ..... .....    @vv_ui6

xvbitset_b       0111 01010000 11100 ..... ..... .....    @vvv
xvbitset_h       0111 01010000 11101 ..... ..... .....    @vvv
xvbitset_w       0111 01010000 11110 ..... ..... .....    @vvv
xvbitset_d       0111 01010000 11111 ..... ..... .....    @vvv
xvbitseti_b      0111 01110001 01000 01 ... ..... .....   @vv_ui3
xvbitseti_h      0111 01110001 01000 1 .... ..... .....   @vv_ui4
xvbitseti_w      0111 01110001 01001 ..... ..... .....    @vv_ui5
xvbitseti_d      0111 01110001 0101 ...... ..... .....    @vv_ui6

xvbitrev_b       0111 01010001 00000 ..... ..... .....    @vvv
xvbitrev_h       0111 01010001 00001 ..... ..... .....    @vvv
xvbitrev_w       0111 01010001 00010 ..... ..... .....    @vvv
xvbitrev_d       0111 01010001 00011 ..... ..... .....    @vvv
xvbitrevi_b      0111 01110001 10000 01 ... ..... .....   @vv_ui3
xvbitrevi_h      0111 01110001 10000 1 .... ..... .....   @vv_ui4
xvbitrevi_w      0111 01110001 10001 ..... ..... .....    @vv_ui5
xvbitrevi_d      0111 01110001 1001 ...... ..... .....    @vv_ui6

xvfrstp_b        0111 01010010 10110 ..... ..... .....    @vvv
xvfrstp_h        0111 01010010 10111 ..... ..... .....    @vvv
xvfrstpi_b       0111 01101001 10100 ..... ..... .....    @vv_ui5
xvfrstpi_h       0111 01101001 10101 ..... ..... .....    @vv_ui5

xvfadd_s         0111 01010011 00001 ..... ..... .....    @vvv
xvfadd_d         0111 01010011 00010 ..... ..... .....    @vvv
xvfsub_s         0111 01010011 00101 ..... ..... .....    @vvv
xvfsub_d         0111 01010011 00110 ..... ..... .....    @vvv
xvfmul_s         0111 01010011 10001 ..... ..... .....    @vvv
xvfmul_d         0111 01010011 10010 ..... ..... .....    @vvv
xvfdiv_s         0111 01010011 10101 ..... ..... .....    @vvv
xvfdiv_d         0111 01010011 10110 ..... ..... .....    @vvv

xvfmadd_s        0000 10100001 ..... ..... ..... .....    @vvvv
xvfmadd_d        0000 10100010 ..... ..... ..... .....    @vvvv
xvfmsub_s        0000 10100101 ..... ..... ..... .....    @vvvv
xvfmsub_d        0000 10100110 ..... ..... ..... .....    @vvvv
xvfnmadd_s       0000 10101001 ..... ..... ..... .....    @vvvv
xvfnmadd_d       0000 10101010 ..... ..... ..... .....    @vvvv
xvfnmsub_s       0000 10101101 ..... ..... ..... .....    @vvvv
xvfnmsub_d       0000 10101110 ..... ..... ..... .....    @vvvv

xvfmax_s         0111 01010011 11001 ..... ..... .....    @vvv
xvfmax_d         0111 01010011 11010 ..... ..... .....    @vvv
xvfmin_s         0111 01010011 11101 ..... ..... .....    @vvv
xvfmin_d         0111 01010011 11110 ..... ..... .....    @vvv

xvfmaxa_s        0111 01010100 00001 ..... ..... .....    @vvv
xvfmaxa_d        0111 01010100 00010 ..... ..... .....    @vvv
xvfmina_s        0111 01010100 00101 ..... ..... .....    @vvv
xvfmina_d        0111 01010100 00110 ..... ..... .....    @vvv

xvflogb_s        0111 01101001 11001 10001 ..... .....    @vv
xvflogb_d        0111 01101001 11001 10010 ..... .....    @vv

xvfclass_s       0111 01101001 11001 10101 ..... .....    @vv
xvfclass_d       0111 01101001 11001 10110 ..... .....    @vv

xvfsqrt_s        0111 01101001 11001 11001 ..... .....    @vv
xvfsqrt_d        0111 01101001 11001 11010 ..... .....    @vv
xvfrecip_s       0111 01101001 11001 11101 ..... .....    @vv
xvfrecip_d       0111 01101001 11001 11110 ..... .....    @vv
xvfrsqrt_s       0111 01101001 11010 00001 ..... .....    @vv
xvfrsqrt_d       0111 01101001 11010 00010 ..... .....    @vv

xvfcvtl_s_h      0111 01101001 11011 11010 ..... .....    @vv
xvfcvth_s_h      0111 01101001 11011 11011 ..... .....    @vv
xvfcvtl_d_s      0111 01101001 11011 11100 ..... .....    @vv
xvfcvth_d_s      0111 01101001 11011 11101 ..... .....    @vv
xvfcvt_h_s       0111 01010100 01100 ..... ..... .....    @vvv
xvfcvt_s_d       0111 01010100 01101 ..... ..... .....    @vvv

xvfrintrne_s     0111 01101001 11010 11101 ..... .....    @vv
xvfrintrne_d     0111 01101001 11010 11110 ..... .....    @vv
xvfrintrz_s      0111 01101001 11010 11001 ..... .....    @vv
xvfrintrz_d      0111 01101001 11010 11010 ..... .....    @vv
xvfrintrp_s      0111 01101001 11010 10101 ..... .....    @vv
xvfrintrp_d      0111 01101001 11010 10110 ..... .....    @vv
xvfrintrm_s      0111 01101001 11010 10001 ..... .....    @vv
xvfrintrm_d      0111 01101001 11010 10010 ..... .....    @vv
xvfrint_s        0111 01101001 11010 01101 ..... .....    @vv
xvfrint_d        0111 01101001 11010 01110 ..... .....    @vv

xvftintrne_w_s   0111 01101001 11100 10100 ..... .....    @vv
xvftintrne_l_d   0111 01101001 11100 10101 ..... .....    @vv
xvftintrz_w_s    0111 01101001 11100 10010 ..... .....    @vv
xvftintrz_l_d    0111 01101001 11100 10011 ..... .....    @vv
xvftintrp_w_s    0111 01101001 11100 10000 ..... .....    @vv
xvftintrp_l_d    0111 01101001 11100 10001 ..... .....    @vv
xvftintrm_w_s    0111 01101001 11100 01110 ..... .....    @vv
xvftintrm_l_d    0111 01101001 11100 01111 ..... .....    @vv
xvftint_w_s      0111 01101001 11100 01100 ..... .....    @vv
xvftint_l_d      0111 01101001 11100 01101 ..... .....    @vv
xvftintrz_wu_s   0111 01101001 11100 11100 ..... .....    @vv
xvftintrz_lu_d   0111 01101001 11100 11101 ..... .....    @vv
xvftint_wu_s     0111 01101001 11100 10110 ..... .....    @vv
xvftint_lu_d     0111 01101001 11100 10111 ..... .....    @vv

xvftintrne_w_d   0111 01010100 10111 ..... ..... .....    @vvv
xvftintrz_w_d    0111 01010100 10110 ..... ..... .....    @vvv
xvftintrp_w_d    0111 01010100 10101 ..... ..... .....    @vvv
xvftintrm_w_d    0111 01010100 10100 ..... ..... .....    @vvv
xvftint_w_d      0111 01010100 10011 ..... ..... .....    @vvv

xvftintrnel_l_s  0111 01101001 11101 01000 ..... .....    @vv
xvftintrneh_l_s  0111 01101001 11101 01001 ..... .....    @vv
xvftintrzl_l_s   0111 01101001 11101 00110 ..... .....    @vv
xvftintrzh_l_s   0111 01101001 11101 00111 ..... .....    @vv
xvftintrpl_l_s   0111 01101001 11101 00100 ..... .....    @vv
xvftintrph_l_s   0111 01101001 11101 00101 ..... .....    @vv
xvftintrml_l_s   0111 01101001 11101 00010 ..... .....    @vv
xvftintrmh_l_s   0111 01101001 11101 00011 ..... .....    @vv
xvftintl_l_s     0111 01101001 11101 00000 ..... .....    @vv
xvftinth_l_s     0111 01101001 11101 00001 ..... .....    @vv

xvffint_s_w      0111 01101001 11100 00000 ..... .....    @vv
xvffint_d_l      0111 01101001 11100 00010 ..... .....    @vv
xvffint_s_wu     0111 01101001 11100 00001 ..... .....    @vv
xvffint_d_lu     0111 01101001 11100 00011 ..... .....    @vv
xvffintl_d_w     0111 01101001 11100 00100 ..... .....    @vv
xvffinth_d_w     0111 01101001 11100 00101 ..... .....    @vv
xvffint_s_l      0111 01010100 10000 ..... ..... .....    @vvv

xvseq_b          0111 01000000 00000 ..... ..... .....    @vvv
xvseq_h          0111 01000000 00001 ..... ..... .....    @vvv
xvseq_w          0111 01000000 00010 ..... ..... .....    @vvv
xvseq_d          0111 01000000 00011 ..... ..... .....    @vvv
xvseqi_b         0111 01101000 00000 ..... ..... .....    @vv_i5
xvseqi_h         0111 01101000 00001 ..... ..... .....    @vv_i5
xvseqi_w         0111 01101000 00010 ..... ..... .....    @vv_i5
xvseqi_d         0111 01101000 00011 ..... ..... .....    @vv_i5

xvsle_b          0111 01000000 00100 ..... ..... .....    @vvv
xvsle_h          0111 01000000 00101 ..... ..... .....    @vvv
xvsle_w          0111 01000000 00110 ..... ..... .....    @vvv
xvsle_d          0111 01000000 00111 ..... ..... .....    @vvv
xvslei_b         0111 01101000 00100 ..... ..... .....    @vv_i5
xvslei_h         0111 01101000 00101 ..... ..... .....    @vv_i5
xvslei_w         0111 01101000 00110 ..... ..... .....    @vv_i5
xvslei_d         0111 01101000 00111 ..... ..... .....    @vv_i5
xvsle_bu         0111 01000000 01000 ..... ..... .....    @vvv
xvsle_hu         0111 01000000 01001 ..... ..... .....    @vvv
xvsle_wu         0111 01000000 01010 ..... ..... .....    @vvv
xvsle_du         0111 01000000 01011 ..... ..... .....    @vvv
xvslei_bu        0111 01101000 01000 ..... ..... .....    @vv_ui5
xvslei_hu        0111 01101000 01001 ..... ..... .....    @vv_ui5
xvslei_wu        0111 01101000 01010 ..... ..... .....    @vv_ui5
xvslei_du        0111 01101000 01011 ..... ..... .....    @vv_ui5

xvslt_b          0111 01000000 01100 ..... ..... .....    @vvv
xvslt_h          0111 01000000 01101 ..... ..... .....    @vvv
xvslt_w          0111 01000000 01110 ..... ..... .....    @vvv
xvslt_d          0111 01000000 01111 ..... ..... .....    @vvv
xvslti_b         0111 01101000 01100 ..... ..... .....    @vv_i5
xvslti_h         0111 01101000 01101 ..... ..... .....    @vv_i5
xvslti_w         0111 01101000 01110 ..... ..... .....    @vv_i5
xvslti_d         0111 01101000 01111 ..... ..... .....    @vv_i5
xvslt_bu         0111 01000000 10000 ..... ..... .....    @vvv
xvslt_hu         0111 01000000 10001 ..... ..... .....    @vvv
xvslt_wu         0111 01000000 10010 ..... ..... .....    @vvv
xvslt_du         0111 01000000 10011 ..... ..... .....    @vvv
xvslti_bu        0111 01101000 10000 ..... ..... .....    @vv_ui5
xvslti_hu        0111 01101000 10001 ..... ..... .....    @vv_ui5
xvslti_wu        0111 01101000 10010 ..... ..... .....    @vv_ui5
xvslti_du        0111 01101000 10011 ..... ..... .....    @vv_ui5

xvfcmp_cond_s    0000 11001001 ..... ..... ..... .....    @vvv_fcond
xvfcmp_cond_d    0000 11001010 ..... ..... ..... .....    @vvv_fcond

xvbitsel_v       0000 11010010 ..... ..... ..... .....    @vvvv

xvbitseli_b      0111 01111100 01 ........ ..... .....    @vv_ui8

xvseteqz_v       0111 01101001 11001 00110 ..... 00 ...   @cv
xvsetnez_v       0111 01101001 11001 00111 ..... 00 ...   @cv
xvsetanyeqz_b    0111 01101001 11001 01000 ..... 00 ...   @cv
xvsetanyeqz_h    0111 01101001 11001 01001 ..... 00 ...   @cv
xvsetanyeqz_w    0111 01101001 11001 01010 ..... 00 ...   @cv
xvsetanyeqz_d    0111 01101001 11001 01011 ..... 00 ...   @cv
xvsetallnez_b    0111 01101001 11001 01100 ..... 00 ...   @cv
xvsetallnez_h    0111 01101001 11001 01101 ..... 00 ...   @cv
xvsetallnez_w    0111 01101001 11001 01110 ..... 00 ...   @cv
xvsetallnez_d    0111 01101001 11001 01111 ..... 00 ...   @cv

xvinsgr2vr_w     0111 01101110 10111 10 ... ..... .....   @vr_ui3
xvinsgr2vr_d     0111 01101110 10111 110 .. ..... .....   @vr_ui2
xvpickve2gr_w    0111 01101110 11111 10 ... ..... .....   @rv_ui3
xvpickve2gr_d    0111 01101110 11111 110 .. ..... .....   @rv_ui2
xvpickve2gr_wu   0111 01101111 00111 10 ... ..... .....   @rv_ui3
xvpickve2gr_du   0111 01101111 00111 110 .. ..... .....   @rv_ui2

xvreplgr2vr_b    0111 01101001 11110 00000 ..... .....    @vr
xvreplgr2vr_h    0111 01101001 11110 00001 ..... .....    @vr
xvreplgr2vr_w    0111 01101001 11110 00010 ..... .....    @vr
xvreplgr2vr_d    0111 01101001 11110 00011 ..... .....    @vr

xvreplve_b       0111 01010010 00100 ..... ..... .....    @vvr
xvreplve_h       0111 01010010 00101 ..... ..... .....    @vvr
xvreplve_w       0111 01010010 00110 ..... ..... .....    @vvr
xvreplve_d       0111 01010010 00111 ..... ..... .....    @vvr

xvrepl128vei_b   0111 01101111 01111 0 .... ..... .....   @vv_ui4
xvrepl128vei_h   0111 01101111 01111 10 ... ..... .....   @vv_ui3
xvrepl128vei_w   0111 01101111 01111 110 .. ..... .....   @vv_ui2
xvrepl128vei_d   0111 01101111 01111 1110 . ..... .....   @vv_ui1

xvreplve0_b      0111 01110000 01110 00000 ..... .....    @vv
xvreplve0_h      0111 01110000 01111 00000 ..... .....    @vv
xvreplve0_w      0111 01110000 01111 10000 ..... .....    @vv
xvreplve0_d      0111 01110000 01111 11000 ..... .....    @vv
xvreplve0_q      0111 01110000 01111 11100 ..... .....    @vv

xvinsve0_w       0111 01101111 11111 10 ... ..... .....   @vv_ui3
xvinsve0_d       0111 01101111 11111 110 .. ..... .....   @vv_ui2

xvpickve_w       0111 01110000 00111 10 ... ..... .....   @vv_ui3
xvpickve_d       0111 01110000 00111 110 .. ..... .....   @vv_ui2

xvbsll_v         0111 01101000 11100 ..... ..... .....    @vv_ui5
xvbsrl_v         0111 01101000 11101 ..... ..... .....    @vv_ui5

xvpackev_b       0111 01010001 01100 ..... ..... .....    @vvv
xvpackev_h       0111 01010001 01101 ..... ..... .....    @vvv
xvpackev_w       0111 01010001 01110 ..... ..... .....    @vvv
xvpackev_d       0111 01010001 01111 ..... ..... .....    @vvv
xvpackod_b       0111 01010001 10000 ..... ..... .....    @vvv
xvpackod_h       0111 01010001 10001 ..... ..... .....    @vvv
xvpackod_w       0111 01010001 10010 ..... ..... .....    @vvv
xvpackod_d       0111 01010001 10011 ..... ..... .....    @vvv

xvpickev_b       0111 01010001 11100 ..... ..... .....    @vvv
xvpickev_h       0111 01010001 11101 ..... ..... .....    @vvv
xvpickev_w       0111 01010001 11110 ..... ..... .....    @vvv
xvpickev_d       0111 01010001 11111 ..... ..... .....    @vvv
xvpickod_b       0111 01010010 00000 ..... ..... .....    @vvv
xvpickod_h       0111 01010010 00001 ..... ..... .....    @vvv
xvpickod_w       0111 01010010 00010 ..... ..... .....    @vvv
xvpickod_d       0111 01010010 00011 ..... ..... .....    @vvv

xvilvl_b         0111 01010001 10100 ..... ..... .....    @vvv
xvilvl_h         0111 01010001 10101 ..... ..... .....    @vvv
xvilvl_w         0111 01010001 10110 ..... ..... .....    @vvv
xvilvl_d         0111 01010001 10111 ..... ..... .....    @vvv
xvilvh_b         0111 01010001 11000 ..... ..... .....    @vvv
xvilvh_h         0111 01010001 11001 ..... ..... .....    @vvv
xvilvh_w         0111 01010001 11010 ..... ..... .....    @vvv
xvilvh_d         0111 01010001 11011 ..... ..... .....    @vvv

xvshuf_b         0000 11010110 ..... ..... ..... .....    @vvvv
xvshuf_h         0111 01010111 10101 ..... ..... .....    @vvv
xvshuf_w         0111 01010111 10110 ..... ..... .....    @vvv
xvshuf_d         0111 01010111 10111 ..... ..... .....    @vvv

xvperm_w         0111 01010111 11010 ..... ..... .....    @vvv

xvshuf4i_b       0111 01111001 00 ........ ..... .....    @vv_ui8
xvshuf4i_h       0111 01111001 01 ........ ..... .....    @vv_ui8
xvshuf4i_w       0111 01111001 10 ........ ..... .....    @vv_ui8
xvshuf4i_d       0111 01111001 11 ........ ..... .....    @vv_ui8

xvpermi_w        0111 01111110 01 ........ ..... .....    @vv_ui8
xvpermi_d        0111 01111110 10 ........ ..... .....    @vv_ui8
xvpermi_q        0111 01111110 11 ........ ..... .....    @vv_ui8

xvextrins_d      0111 01111000 00 ........ ..... .....    @vv_ui8
xvextrins_w      0111 01111000 01 ........ ..... .....    @vv_ui8
xvextrins_h      0111 01111000 10 ........ ..... .....    @vv_ui8
xvextrins_b      0111 01111000 11 ........ ..... .....    @vv_ui8

xvld             0010 110010 ............ ..... .....     @vr_i12
xvst             0010 110011 ............ ..... .....     @vr_i12
xvldx            0011 10000100 10000 ..... ..... .....    @vrr
xvstx            0011 10000100 11000 ..... ..... .....    @vrr

xvldrepl_d       0011 00100001 0 ......... ..... .....    @vr_i9
xvldrepl_w       0011 00100010 .......... ..... .....     @vr_i10
xvldrepl_h       0011 0010010 ........... ..... .....     @vr_i11
xvldrepl_b       0011 001010 ............ ..... .....     @vr_i12
xvstelm_d        0011 00110001 .. ........ ..... .....    @vr_i8i2x
xvstelm_w        0011 0011001 ... ........ ..... .....    @vr_i8i3x
xvstelm_h        0011 001101 .... ........ ..... .....    @vr_i8i4x
xvstelm_b        0011 00111 ..... ........ ..... .....    @vr_i8i5x