target/loongarch: Implement xvbitclr xvbitset xvbitrev

This patch includes:
- XVBITCLR[I].{B/H/W/D};
- XVBITSET[I].{B/H/W/D};
- XVBITREV[I].{B/H/W/D}.

Signed-off-by: Song Gao <gaosong@loongson.cn>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230914022645.1151356-45-gaosong@loongson.cn>
This commit is contained in:
Song Gao 2023-09-14 10:26:32 +08:00
parent 956dec74b7
commit 1b3e242f72
No known key found for this signature in database
GPG key ID: 40A2FFF239263EDF
4 changed files with 99 additions and 21 deletions

View file

@ -2210,6 +2210,31 @@ INSN_LASX(xvpcnt_h, vv)
INSN_LASX(xvpcnt_w, vv)
INSN_LASX(xvpcnt_d, vv)
INSN_LASX(xvbitclr_b, vvv)
INSN_LASX(xvbitclr_h, vvv)
INSN_LASX(xvbitclr_w, vvv)
INSN_LASX(xvbitclr_d, vvv)
INSN_LASX(xvbitclri_b, vv_i)
INSN_LASX(xvbitclri_h, vv_i)
INSN_LASX(xvbitclri_w, vv_i)
INSN_LASX(xvbitclri_d, vv_i)
INSN_LASX(xvbitset_b, vvv)
INSN_LASX(xvbitset_h, vvv)
INSN_LASX(xvbitset_w, vvv)
INSN_LASX(xvbitset_d, vvv)
INSN_LASX(xvbitseti_b, vv_i)
INSN_LASX(xvbitseti_h, vv_i)
INSN_LASX(xvbitseti_w, vv_i)
INSN_LASX(xvbitseti_d, vv_i)
INSN_LASX(xvbitrev_b, vvv)
INSN_LASX(xvbitrev_h, vvv)
INSN_LASX(xvbitrev_w, vvv)
INSN_LASX(xvbitrev_d, vvv)
INSN_LASX(xvbitrevi_b, vv_i)
INSN_LASX(xvbitrevi_h, vv_i)
INSN_LASX(xvbitrevi_w, vv_i)
INSN_LASX(xvbitrevi_d, vv_i)
INSN_LASX(xvreplgr2vr_b, vr)
INSN_LASX(xvreplgr2vr_h, vr)
INSN_LASX(xvreplgr2vr_w, vr)