[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 4/4] target/arm: Fix tcg_gen_gvec_dup_imm vs DUP (indexed)
From: |
Laurent Desnogues |
Subject: |
Re: [PATCH v2 4/4] target/arm: Fix tcg_gen_gvec_dup_imm vs DUP (indexed) |
Date: |
Thu, 7 May 2020 20:06:19 +0200 |
On Thu, May 7, 2020 at 7:23 PM Richard Henderson
<address@hidden> wrote:
>
> DUP (indexed) can duplicate 128-bit elements, so using esz
> unconditionally can assert in tcg_gen_gvec_dup_imm.
>
> Fixes: 8711e71f9cbb
> Reported-by: Laurent Desnogues <address@hidden>
> Signed-off-by: Richard Henderson <address@hidden>
Reviewed-by: Laurent Desnogues <address@hidden>
Tested-by: Laurent Desnogues <address@hidden>
I had the same fix locally.
Thanks,
Laurent
> ---
> target/arm/translate-sve.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/target/arm/translate-sve.c b/target/arm/translate-sve.c
> index c8649283be..83614e9e70 100644
> --- a/target/arm/translate-sve.c
> +++ b/target/arm/translate-sve.c
> @@ -2044,7 +2044,11 @@ static bool trans_DUP_x(DisasContext *s, arg_DUP_x *a)
> unsigned nofs = vec_reg_offset(s, a->rn, index, esz);
> tcg_gen_gvec_dup_mem(esz, dofs, nofs, vsz, vsz);
> } else {
> - tcg_gen_gvec_dup_imm(esz, dofs, vsz, vsz, 0);
> + /*
> + * While dup_mem handles 128-bit elements, dup_imm does not.
> + * Thankfully element size doesn't matter for splatting zero.
> + */
> + tcg_gen_gvec_dup_imm(MO_64, dofs, vsz, vsz, 0);
> }
> }
> return true;
> --
> 2.20.1
>
- [PATCH v2 0/4] target/arm: Misc cleanups, Richard Henderson, 2020/05/07
- [PATCH v2 2/4] target/arm: Use tcg_gen_gvec_mov for clear_vec_high, Richard Henderson, 2020/05/07
- [PATCH v2 1/4] target/arm: Use tcg_gen_gvec_5_ptr for sve FMLA/FCMLA, Richard Henderson, 2020/05/07
- [PATCH v2 3/4] target/arm: Use clear_vec_high more effectively, Richard Henderson, 2020/05/07
- [PATCH v2 4/4] target/arm: Fix tcg_gen_gvec_dup_imm vs DUP (indexed), Richard Henderson, 2020/05/07
- Re: [PATCH v2 4/4] target/arm: Fix tcg_gen_gvec_dup_imm vs DUP (indexed),
Laurent Desnogues <=
- Re: [PATCH v2 0/4] target/arm: Misc cleanups, Richard Henderson, 2020/05/07
- Re: [PATCH v2 0/4] target/arm: Misc cleanups, Peter Maydell, 2020/05/11