[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 3/5] ARM: Fix VQSHL of signed 64 bit values by shift
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH 3/5] ARM: Fix VQSHL of signed 64 bit values by shift counts >= 64 |
Date: |
Tue, 7 Dec 2010 14:13:43 +0000 |
VQSHL of a signed 64 bit non-zero value by a shift count >= 64 should
saturate; return the correct value in this case.
Signed-off-by: Peter Maydell <address@hidden>
---
target-arm/neon_helper.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c
index d29b884..2dc3d96 100644
--- a/target-arm/neon_helper.c
+++ b/target-arm/neon_helper.c
@@ -608,7 +608,7 @@ uint64_t HELPER(neon_qshl_s64)(CPUState *env, uint64_t
valop, uint64_t shiftop)
if (shift >= 64) {
if (val) {
SET_QC();
- val = (val >> 63) & ~SIGNBIT64;
+ val = (val >> 63) ^ ~SIGNBIT64;
}
} else if (shift <= -64) {
val >>= 63;
--
1.6.3.3
- [Qemu-devel] [PATCH 0/5] ARM: fix VQSHL (register), Peter Maydell, 2010/12/07
- [Qemu-devel] [PATCH 4/5] ARM: remove pointless else clause in VQSHL of u64, Peter Maydell, 2010/12/07
- [Qemu-devel] [PATCH 5/5] ARM: Correct result in saturating cases for VQSHL of s8/16/32, Peter Maydell, 2010/12/07
- [Qemu-devel] [PATCH 3/5] ARM: Fix VQSHL of signed 64 bit values by shift counts >= 64,
Peter Maydell <=
- [Qemu-devel] [PATCH 2/5] ARM: Fix VQSHL of signed 64 bit values, Peter Maydell, 2010/12/07
- [Qemu-devel] [PATCH 1/5] ARM: Fix arguments passed to VQSHL helpers, Peter Maydell, 2010/12/07
- Re: [Qemu-devel] [PATCH 0/5] ARM: fix VQSHL (register), Aurelien Jarno, 2010/12/27