On Sat, 25 May 2024 at 00:27, Richard Henderson
<richard.hender...@linaro.org> wrote:
>
> Signed-off-by: Richard Henderson <richard.hender...@linaro.org>
> ---
>  target/arm/helper.h             | 10 +++++++++
>  target/arm/tcg/translate.h      |  4 ++++
>  target/arm/tcg/neon-dp.decode   | 10 ++-------
>  target/arm/tcg/gengvec.c        | 22 +++++++++++++++++++
>  target/arm/tcg/neon_helper.c    | 38 ++++++++++++++++++++++++++++++++-
>  target/arm/tcg/translate-a64.c  | 17 ++++++---------
>  target/arm/tcg/translate-neon.c |  6 ++----
>  7 files changed, 84 insertions(+), 23 deletions(-)


>  uint32_t HELPER(glue(neon_,name))(CPUARMState *env, uint32_t arg1, uint32_t 
> arg2) \
>  NEON_VOP_BODY(vtype, n)
>
> +#define NEON_GVEC_VOP2(name, vtype) \
> +void HELPER(name)(void *vd, void *vn, void *vm, uint32_t desc) \
> +{                                                               \
> +    intptr_t i, opr_sz = simd_oprsz(desc);                      \
> +    vtype *d = vd, *n = vn, *m = vm;                            \
> +    for (i = 0; i < opr_sz / sizeof(vtype); i++) {              \
> +        NEON_FN(d[i], n[i], m[i]);                              \

Does this need H macros for the bigendian case ? It looks
like we use it for smaller-than-64-bit element cases.


> +    }                                                           \
> +    clear_tail(d, opr_sz, simd_maxsz(desc));                    \
> +}
> +

thanks
-- PMM

Reply via email to