[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 47/48] target-arm: fix neon vshll (shift < max)
From: |
Riku Voipio |
Subject: |
[Qemu-devel] [PATCH 47/48] target-arm: fix neon vshll (shift < max) |
Date: |
Fri, 26 Mar 2010 16:07:07 +0000 |
From: Juha Riihimäki <address@hidden>
Signed-Off-By: Riku Voipio <address@hidden>
Signed-off-by: Juha Riihimäki <address@hidden>
---
target-arm/neon_helper.c | 1 -
target-arm/translate.c | 4 ++--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c
index 7cef783..d75cb47 100644
--- a/target-arm/neon_helper.c
+++ b/target-arm/neon_helper.c
@@ -1484,7 +1484,6 @@ uint64_t HELPER(neon_negl_u16)(uint64_t x)
return result;
}
-#include <stdio.h>
uint64_t HELPER(neon_negl_u32)(uint64_t x)
{
uint32_t low = -x;
diff --git a/target-arm/translate.c b/target-arm/translate.c
index fd3a72e..cd9dbce 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -4855,7 +4855,7 @@ static int disas_neon_data_insn(CPUState * env,
DisasContext *s, uint32_t insn)
/* The shift is less than the width of the source
type, so we can just shift the whole register. */
tcg_gen_shli_i64(cpu_V0, cpu_V0, shift);
- if (size < 2 || !u) {
+ if (size < 2) {
uint64_t imm64;
if (size == 0) {
imm = (0xffu >> (8 - shift));
@@ -4864,7 +4864,7 @@ static int disas_neon_data_insn(CPUState * env,
DisasContext *s, uint32_t insn)
imm = 0xffff >> (16 - shift);
}
imm64 = imm | (((uint64_t)imm) << 32);
- tcg_gen_andi_i64(cpu_V0, cpu_V0, imm64);
+ tcg_gen_andi_i64(cpu_V0, cpu_V0, ~imm64);
}
}
neon_store_reg64(cpu_V0, rd + pass);
--
1.6.5
- [Qemu-devel] [PATCH 15/48] fix function signature of qemu_chr_open_pty on !linux, (continued)
- [Qemu-devel] [PATCH 15/48] fix function signature of qemu_chr_open_pty on !linux, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 08/48] Cortex-A8 R2 support and trustzone, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 06/48] Get rid of AREG1 and AREG2., Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 07/48] Shrink tb_jmp_offset to two entries, the other two are never used., Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 17/48] add multi-sd support, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 23/48] multi-mmc support in init call, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 01/48] arm-dis debug helper, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 18/48] make cursor grab optional, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 47/48] target-arm: fix neon vshll (shift < max),
Riku Voipio <=
- [Qemu-devel] [PATCH 38/48] target-arm: fix neon vrshl instruction, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 40/48] target-arm: fix neon v(r)sra instructions, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 39/48] target-arm: fix neon vrshr instruction, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 25/48] blizzard: fix for non-32bpp host displays, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 09/48] console change headers, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 48/48] usb: fix -usbdevice option handling with no parameters, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 46/48] target-arm: fix neon vrsqrts instruction, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 45/48] target-arm: fix neon vcvt fixed-point, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 43/48] target-arm: fix neon vq(r)dmulh.s16 instructions, Riku Voipio, 2010/03/26