[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 6/6] target-arm: fix decoding of Neon 64 bit shi
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH 6/6] target-arm: fix decoding of Neon 64 bit shifts. |
Date: |
Mon, 14 Feb 2011 17:53:22 +0000 |
On 11 February 2011 15:11, <address@hidden> wrote:
> From: Christophe Lyon <address@hidden>
>
> Fix decoding of 64 bits variants of VSHRN, VRSHRN, VQSHRN, VQSHRUN, VQRSHRN,
> VQRSHRUN, taking into account whether inputs are unsigned or not.
>
> Signed-off-by: Christophe Lyon <address@hidden>
Mostly OK (gives correct answers). Style issues:
> tmp = neon_load_reg(rm + pass, 0);
> - gen_neon_shift_narrow(size, tmp, tmp2, q, u);
> + gen_neon_shift_narrow(size, tmp, tmp2, q,
> input_unsigned);
> tmp3 = neon_load_reg(rm + pass, 1);
> - gen_neon_shift_narrow(size, tmp3, tmp2, q, u);
> + gen_neon_shift_narrow(size, tmp3, tmp2, q,
> input_unsigned);
These lines are >80 chars now.
> } else {
> - if (op == 8)
> + if (u) { /* VQSHRN / VQRSHRN */
> + gen_neon_narrow_satu(size - 1, tmp, cpu_V0);
> + } else { /* VQSHRN / VQRSHRN */
Missing indentation.
The other problem with this area of the code is that it is not
correctly handling the case where pass 1 wants to read a
register which is the target for pass 2. I have a patch to fix
this which I'll post in a moment.
-- PMM