mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 00:33:55 -06:00
target/loongarch: Implement xvinsgr2vr xvpickve2gr
This patch includes: - XVINSGR2VR.{W/D}; - XVPICKVE2GR.{W/D}[U]. Signed-off-by: Song Gao <gaosong@loongson.cn> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20230914022645.1151356-52-gaosong@loongson.cn>
This commit is contained in:
parent
f3dfcc8b23
commit
f5ce2c8f2c
4 changed files with 76 additions and 172 deletions
|
@ -1738,6 +1738,16 @@ static void output_vv_x(DisasContext *ctx, arg_vv *a, const char *mnemonic)
|
|||
output(ctx, mnemonic, "x%d, x%d", a->vd, a->vj);
|
||||
}
|
||||
|
||||
static void output_vr_i_x(DisasContext *ctx, arg_vr_i *a, const char *mnemonic)
|
||||
{
|
||||
output(ctx, mnemonic, "x%d, r%d, 0x%x", a->vd, a->rj, a->imm);
|
||||
}
|
||||
|
||||
static void output_rv_i_x(DisasContext *ctx, arg_rv_i *a, const char *mnemonic)
|
||||
{
|
||||
output(ctx, mnemonic, "r%d, x%d, 0x%x", a->rd, a->vj, a->imm);
|
||||
}
|
||||
|
||||
INSN_LASX(xvadd_b, vvv)
|
||||
INSN_LASX(xvadd_h, vvv)
|
||||
INSN_LASX(xvadd_w, vvv)
|
||||
|
@ -2497,6 +2507,13 @@ INSN_LASX(xvsetallnez_h, cv)
|
|||
INSN_LASX(xvsetallnez_w, cv)
|
||||
INSN_LASX(xvsetallnez_d, cv)
|
||||
|
||||
INSN_LASX(xvinsgr2vr_w, vr_i)
|
||||
INSN_LASX(xvinsgr2vr_d, vr_i)
|
||||
INSN_LASX(xvpickve2gr_w, rv_i)
|
||||
INSN_LASX(xvpickve2gr_d, rv_i)
|
||||
INSN_LASX(xvpickve2gr_wu, rv_i)
|
||||
INSN_LASX(xvpickve2gr_du, rv_i)
|
||||
|
||||
INSN_LASX(xvreplgr2vr_b, vr)
|
||||
INSN_LASX(xvreplgr2vr_h, vr)
|
||||
INSN_LASX(xvreplgr2vr_w, vr)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue