[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 05/10] target-arm: Correct ABD's handling of negativ
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH 05/10] target-arm: Correct ABD's handling of negative zeroes |
Date: |
Fri, 1 Apr 2011 15:30:38 +0100 |
Implement ABD by taking the absolute value of the difference
of the operands (as the ARM ARM specifies) rather than by
flipping the order of the operands to the subtract based
on the results of a comparison. The latter approch gives
the wrong answers for some edge cases like negative zero.
Signed-off-by: Peter Maydell <address@hidden>
---
target-arm/neon_helper.c | 4 +---
1 files changed, 1 insertions(+), 3 deletions(-)
diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c
index 8eb4cef..1905545 100644
--- a/target-arm/neon_helper.c
+++ b/target-arm/neon_helper.c
@@ -1788,9 +1788,7 @@ uint32_t HELPER(neon_abd_f32)(CPUState *env, uint32_t a,
uint32_t b)
{
float32 f0 = make_float32(a);
float32 f1 = make_float32(b);
- return float32_val((float32_compare_quiet(f0, f1, NFS) == 1)
- ? float32_sub(f0, f1, NFS)
- : float32_sub(f1, f0, NFS));
+ return float32_val(float32_abs(float32_sub(f0, f1, NFS)));
}
uint32_t HELPER(neon_add_f32)(CPUState *env, uint32_t a, uint32_t b)
--
1.7.1
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, (continued)
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Blue Swirl, 2011/04/01
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Peter Maydell, 2011/04/01
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Blue Swirl, 2011/04/03
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Peter Maydell, 2011/04/03
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Blue Swirl, 2011/04/03
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Peter Maydell, 2011/04/03
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Blue Swirl, 2011/04/03
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Aurelien Jarno, 2011/04/03
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Peter Maydell, 2011/04/03
- Re: [Qemu-devel] [PATCH 01/10] target-arm: Make Neon helper routines use correct FP status, Aurelien Jarno, 2011/04/03
[Qemu-devel] [PATCH 05/10] target-arm: Correct ABD's handling of negative zeroes,
Peter Maydell <=
[Qemu-devel] [PATCH 03/10] target-arm: Return right result for Neon comparison with NaNs, Peter Maydell, 2011/04/01
[Qemu-devel] [PATCH 08/10] target-arm: Fix VLD of single element to all lanes, Peter Maydell, 2011/04/01
Re: [Qemu-devel] [PATCH 00/10] [PULL] ARM Neon fixes, Aurelien Jarno, 2011/04/03