[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] target/arm/translate-neon.c: Handle VTBL UNDEF case before VFP a
From: |
Peter Maydell |
Subject: |
[PATCH] target/arm/translate-neon.c: Handle VTBL UNDEF case before VFP access check |
Date: |
Mon, 9 Nov 2020 14:53:24 +0000 |
Checks for UNDEF cases should go before the "is VFP enabled?" access
check, except in special cases. Move a stray UNDEF check in the VTBL
trans function up above the access check.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
Based-on: 20201105171126.88014-1-richard.henderson@linaro.org
("target/arm: Fix neon VTBL/VTBX for len > 1")
---
target/arm/translate-neon.c.inc | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/target/arm/translate-neon.c.inc b/target/arm/translate-neon.c.inc
index 0ae95cb8df8..2403825d15f 100644
--- a/target/arm/translate-neon.c.inc
+++ b/target/arm/translate-neon.c.inc
@@ -2874,10 +2874,6 @@ static bool trans_VTBL(DisasContext *s, arg_VTBL *a)
return false;
}
- if (!vfp_access_check(s)) {
- return true;
- }
-
if ((a->vn + a->len + 1) > 32) {
/*
* This is UNPREDICTABLE; we choose to UNDEF to avoid the
@@ -2886,6 +2882,10 @@ static bool trans_VTBL(DisasContext *s, arg_VTBL *a)
return false;
}
+ if (!vfp_access_check(s)) {
+ return true;
+ }
+
desc = tcg_const_i32((a->vn << 2) | a->len);
def = tcg_temp_new_i64();
if (a->op) {
--
2.20.1
- [PATCH] target/arm/translate-neon.c: Handle VTBL UNDEF case before VFP access check,
Peter Maydell <=