On Fri, 30 Apr 2021 at 22:19, Richard Henderson
<richard.hender...@linaro.org> wrote:
>
> From: Stephen Long <stepl...@quicinc.com>
>
> Implements both vectored and indexed FMLALB, FMLALT, FMLSLB, FMLSLT
>
> Signed-off-by: Stephen Long <stepl...@quicinc.com>
> Message-Id: <20200504171240.11220-1-stepl...@quicinc.com>
> [rth: Rearrange to use float16_to_float32_by_bits.]
> Signed-off-by: Richard Henderson <richard.hender...@linaro.org>
> ---
>  target/arm/helper.h        |  5 +++
>  target/arm/sve.decode      | 14 +++++++
>  target/arm/translate-sve.c | 75 ++++++++++++++++++++++++++++++++++++++
>  target/arm/vec_helper.c    | 51 ++++++++++++++++++++++++++
>  4 files changed, 145 insertions(+)
>

> diff --git a/target/arm/vec_helper.c b/target/arm/vec_helper.c
> index 9b2a4d5b7e..ea08b15c55 100644
> --- a/target/arm/vec_helper.c
> +++ b/target/arm/vec_helper.c
> @@ -29,10 +29,14 @@
>     so addressing units smaller than that needs a host-endian fixup.  */
>  #ifdef HOST_WORDS_BIGENDIAN
>  #define H1(x)  ((x) ^ 7)
> +#define H1_2(x) ((x) ^ 6)
> +#define H1_4(x) ((x) ^ 4)
>  #define H2(x)  ((x) ^ 3)
>  #define H4(x)  ((x) ^ 1)
>  #else
>  #define H1(x)  (x)
> +#define H1_2(x) (x)
> +#define H1_4(x) (x)
>  #define H2(x)  (x)
>  #define H4(x)  (x)
>  #endif

We now have a full set of these macros in vec_helper.c and sve_helper.c,
and I'm going to need them in the MVE mve_helper.c too. This seems like
a good point to pull them out into a suitable header file and add a
documentation comment that makes it clear what they're for (cf comment
on previous patch).

Otherwise
Reviewed-by: Peter Maydell <peter.mayd...@linaro.org>

thanks
-- PMM

Reply via email to