mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-07-10 15:17:32 +00:00
target/arm/translate-neon.c: Handle VTBL UNDEF case before VFP access check
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. Backports b6c56c8a9a4064ea783f352f43c5df6231a110fa
This commit is contained in:
parent
9623047097
commit
f991d945d3
|
@ -2916,10 +2916,6 @@ static bool trans_VTBL(DisasContext *s, arg_VTBL *a)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!vfp_access_check(s)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((a->vn + a->len + 1) > 32) {
|
if ((a->vn + a->len + 1) > 32) {
|
||||||
/*
|
/*
|
||||||
* This is UNPREDICTABLE; we choose to UNDEF to avoid the
|
* This is UNPREDICTABLE; we choose to UNDEF to avoid the
|
||||||
|
@ -2927,6 +2923,11 @@ static bool trans_VTBL(DisasContext *s, arg_VTBL *a)
|
||||||
*/
|
*/
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!vfp_access_check(s)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
desc = tcg_const_i32(tcg_ctx, (a->vn << 2) | a->len);
|
desc = tcg_const_i32(tcg_ctx, (a->vn << 2) | a->len);
|
||||||
def = tcg_temp_new_i64(tcg_ctx);
|
def = tcg_temp_new_i64(tcg_ctx);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue