From: Alex Bennée <alex.ben...@linaro.org> 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....@arm.com> Signed-off-by: Alex Bennée <alex.ben...@linaro.org> Reviewed-by: Claudio Fontana <claudio.font...@huawei.com> Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> --- target-arm/translate-a64.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target-arm/translate-a64.c b/target-arm/translate-a64.c index 188287d..d86b8ff 100644 --- a/target-arm/translate-a64.c +++ b/target-arm/translate-a64.c @@ -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; } -- 1.9.1