[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 38/48] target-arm: fix neon vrshl instruction
From: |
Nathan Froyd |
Subject: |
Re: [Qemu-devel] [PATCH 38/48] target-arm: fix neon vrshl instruction |
Date: |
Fri, 26 Mar 2010 10:26:05 -0700 |
User-agent: |
Mutt/1.5.17+20080114 (2008-01-14) |
On Fri, Mar 26, 2010 at 04:06:58PM +0000, Riku Voipio wrote:
> +uint32_t HELPER(neon_rshl_u32)(uint32_t val, uint32_t shiftop)
> +{
> + int8_t shift = (int8_t)shiftop;
> + if (shift >= 32 || shift < -32) {
> + val = 0;
> + } else if (shift == -32) {
> + val >>= shift - 1;
^^^^^^^^^^^^^^^^^
This looks wrong. Compare the equivalent case for 64-bit:
> uint64_t HELPER(neon_rshl_u64)(uint64_t val, uint64_t shiftop)
> } else if (shift == -64) {
> /* Rounding a 1-bit result just preserves that bit. */
> val >>= 63;
Bonus points for factoring out the duplicated 32/64-bit code.
-Nathan
- [Qemu-devel] [PATCH 06/48] Get rid of AREG1 and AREG2., (continued)
- [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, 2010/03/26
- [Qemu-devel] [PATCH 38/48] target-arm: fix neon vrshl instruction, Riku Voipio, 2010/03/26
- Re: [Qemu-devel] [PATCH 38/48] target-arm: fix neon vrshl instruction,
Nathan Froyd <=
- [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
- [Qemu-devel] [PATCH 42/48] target-arm: fix signed narrow 64->32 operation, Riku Voipio, 2010/03/26
- [Qemu-devel] [PATCH 41/48] target-arm: fix neon vld1 single element to all lanes, Riku Voipio, 2010/03/26