aboutsummaryrefslogtreecommitdiff
path: root/target-arm
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2009-05-09 23:12:06 +0100
committerPaul Brook <paul@codesourcery.com>2009-05-09 23:12:06 +0100
commitcb76e138d361131379dbb10bd86d5aa853bf0415 (patch)
treeb864a57b16f887fc22f077e2cd88a8117dd6f5b2 /target-arm
parent009a4356a7e912d911649ce5229ccffb1bc9e6b6 (diff)
downloadqemu-cb76e138d361131379dbb10bd86d5aa853bf0415.zip
qemu-cb76e138d361131379dbb10bd86d5aa853bf0415.tar.gz
qemu-cb76e138d361131379dbb10bd86d5aa853bf0415.tar.bz2
Fixe ARM NEON vrshl.
Signed-off-by: Paul Brook <paul@codesourcery.com>
Diffstat (limited to 'target-arm')
-rw-r--r--target-arm/neon_helper.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c
index 4ee5658..35fbaf5 100644
--- a/target-arm/neon_helper.c
+++ b/target-arm/neon_helper.c
@@ -456,11 +456,11 @@ uint64_t HELPER(neon_shl_s64)(uint64_t valop, uint64_t shiftop)
if (tmp >= sizeof(src1) * 8) { \
dest = 0; \
} else if (tmp < -sizeof(src1) * 8) { \
- dest >>= sizeof(src1) * 8 - 1; \
+ dest = src1 >> (sizeof(src1) * 8 - 1); \
} else if (tmp == -sizeof(src1) * 8) { \
dest = src1 >> (tmp - 1); \
dest++; \
- src2 >>= 1; \
+ dest >>= 1; \
} else if (tmp < 0) { \
dest = (src1 + (1 << (-1 - tmp))) >> -tmp; \
} else { \