[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 16/35] target/arm: Implement SVE floating-poi
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH v5 16/35] target/arm: Implement SVE floating-point compare vectors |
Date: |
Mon, 25 Jun 2018 18:20:15 +0100 |
On 21 June 2018 at 02:53, Richard Henderson
<address@hidden> wrote:
> Signed-off-by: Richard Henderson <address@hidden>
> ---
> target/arm/helper-sve.h | 49 ++++++++++++++++++++++++++++++
> target/arm/sve_helper.c | 62 ++++++++++++++++++++++++++++++++++++++
> target/arm/translate-sve.c | 40 ++++++++++++++++++++++++
> target/arm/sve.decode | 11 +++++++
> 4 files changed, 162 insertions(+)
> +#define DO_FCMGE(TYPE, X, Y, ST) TYPE##_compare(Y, X, ST) <= 0
I was expecting the RHS of this to be TYPE##_le(Y, X, ST).
This prompted me to notice that softfloat has as well as
the generic 'compare' routines also specialized _le/lt/unordered
etc functions for float64 and float32 but not float16, which is
a bit inconsistent...
> +#define DO_FCMGT(TYPE, X, Y, ST) TYPE##_compare(Y, X, ST) < 0
> +#define DO_FCMEQ(TYPE, X, Y, ST) TYPE##_compare_quiet(X, Y, ST) == 0
> +#define DO_FCMNE(TYPE, X, Y, ST) TYPE##_compare_quiet(X, Y, ST) != 0
> +#define DO_FCMUO(TYPE, X, Y, ST) \
> + TYPE##_compare_quiet(X, Y, ST) == float_relation_unordered
> +#define DO_FACGE(TYPE, X, Y, ST) \
> + TYPE##_compare(TYPE##_abs(Y), TYPE##_abs(X), ST) <= 0
> +#define DO_FACGT(TYPE, X, Y, ST) \
> + TYPE##_compare(TYPE##_abs(Y), TYPE##_abs(X), ST) < 0
Anyway,
Reviewed-by: Peter Maydell <address@hidden>
thanks
-- PMM
- Re: [Qemu-devel] [PATCH v5 13/35] target/arm: Implement SVE gather loads, (continued)
- [Qemu-devel] [PATCH v5 11/35] target/arm: Implement SVE scatter stores, Richard Henderson, 2018/06/20
- [Qemu-devel] [PATCH v5 15/35] target/arm: Implement SVE scatter store vector immediate, Richard Henderson, 2018/06/20
- [Qemu-devel] [PATCH v5 14/35] target/arm: Implement SVE first-fault gather loads, Richard Henderson, 2018/06/20
- [Qemu-devel] [PATCH v5 16/35] target/arm: Implement SVE floating-point compare vectors, Richard Henderson, 2018/06/20
- Re: [Qemu-devel] [PATCH v5 16/35] target/arm: Implement SVE floating-point compare vectors,
Peter Maydell <=
- [Qemu-devel] [PATCH v5 17/35] target/arm: Implement SVE floating-point arithmetic with immediate, Richard Henderson, 2018/06/20
- [Qemu-devel] [PATCH v5 18/35] target/arm: Implement SVE Floating Point Multiply Indexed Group, Richard Henderson, 2018/06/20
- [Qemu-devel] [PATCH v5 20/35] target/arm: Implement SVE Floating Point Unary Operations - Unpredicated Group, Richard Henderson, 2018/06/20
- [Qemu-devel] [PATCH v5 19/35] target/arm: Implement SVE FP Fast Reduction Group, Richard Henderson, 2018/06/20