target-arm: A64: fix unallocated test of scalar SQXTUN
authorAlex Bennée <alex.bennee@linaro.org>
Wed, 16 Apr 2014 11:29:39 +0000 (12:29 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Thu, 17 Apr 2014 20:34:07 +0000 (21:34 +0100)
The test for the U bit was incorrectly inverted in the scalar case of SQXTUN.
This doesn't affect the vector case as the U bit is used to select XTN(2).

Reported-by: Hao Liu <hao.liu@arm.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Claudio Fontana <claudio.fontana@huawei.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-stable@nongnu.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target-arm/translate-a64.c

index 188287d031f100ea4d396d4d37e0be98fdc43446..d86b8ffa55cb8035bfe9157d178f2939f3574140 100644 (file)
@@ -7708,7 +7708,7 @@ static void disas_simd_scalar_two_reg_misc(DisasContext *s, uint32_t insn)
         }
         break;
     case 0x12: /* SQXTUN */
-        if (u) {
+        if (!u) {
             unallocated_encoding(s);
             return;
         }