[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 13/16] target/arm: Pass pointer to qc to qrdmla/qrdmls
From: |
Peter Maydell |
Subject: |
Re: [PATCH v3 13/16] target/arm: Pass pointer to qc to qrdmla/qrdmls |
Date: |
Tue, 12 May 2020 15:28:20 +0100 |
On Fri, 8 May 2020 at 16:22, Richard Henderson
<address@hidden> wrote:
>
> Pass a pointer directly to env->vfp.qc[0], rather than env.
> This will allow SVE2, which does not modify QC, to pass a
> pointer to dummy storage.
>
> Signed-off-by: Richard Henderson <address@hidden>
> ---
> /* Signed saturating rounding doubling multiply-accumulate high half, 16-bit
> */
> -static uint16_t inl_qrdmlah_s16(CPUARMState *env, int16_t src1,
> - int16_t src2, int16_t src3)
> +static int16_t inl_qrdmlah_s16(int16_t src1, int16_t src2,
> + int16_t src3, uint32_t *sat)
Why has the return type changed here ? The new type does make
more sense (there's no behaviour change since the return value
is always assigned to either an int16_t or uint16_t lvalue),
but it also doesn't seem related to the passing-of-QC that
this patch is doing.
> {
> /* Simplify:
> * = ((a3 << 16) + ((e1 * e2) << 1) + (1 << 15)) >> 16
> /* Signed saturating rounding doubling multiply-subtract high half, 16-bit */
> -static uint16_t inl_qrdmlsh_s16(CPUARMState *env, int16_t src1,
> - int16_t src2, int16_t src3)
> +static int16_t inl_qrdmlsh_s16(int16_t src1, int16_t src2,
> + int16_t src3, uint32_t *sat)
Ditto.
Otherwise
Reviewed-by: Peter Maydell <address@hidden>
thanks
-- PMM
- Re: [PATCH v3 03/16] target/arm: Create gen_gvec_{sri,sli}, (continued)
- [PATCH v3 04/16] target/arm: Remove unnecessary range check for VSHL, Richard Henderson, 2020/05/08
- [PATCH v3 05/16] target/arm: Tidy handle_vec_simd_shri, Richard Henderson, 2020/05/08
- [PATCH v3 08/16] target/arm: Swap argument order for VSHL during decode, Richard Henderson, 2020/05/08
- [PATCH v3 07/16] target/arm: Create gen_gvec_{mla,mls}, Richard Henderson, 2020/05/08
- [PATCH v3 13/16] target/arm: Pass pointer to qc to qrdmla/qrdmls, Richard Henderson, 2020/05/08
- Re: [PATCH v3 13/16] target/arm: Pass pointer to qc to qrdmla/qrdmls,
Peter Maydell <=
- [PATCH v3 14/16] target/arm: Clear tail in gvec_fmul_idx_*, gvec_fmla_idx_*, Richard Henderson, 2020/05/08
- [PATCH v3 15/16] target/arm: Vectorize SABD/UABD, Richard Henderson, 2020/05/08
- [PATCH v3 10/16] target/arm: Create gen_gvec_{uqadd, sqadd, uqsub, sqsub}, Richard Henderson, 2020/05/08
- [PATCH v3 06/16] target/arm: Create gen_gvec_{ceq,clt,cle,cgt,cge}0, Richard Henderson, 2020/05/08
- [PATCH v3 09/16] target/arm: Create gen_gvec_{cmtst,ushl,sshl}, Richard Henderson, 2020/05/08