Hi, I'm seeing a regression in Arm's vfp handling, giving an undefined instruction when reading mvfr1 in PL2/armv7 although the FPU is enabled. The following makes it work again for me, however this just looks like a band-aid. Thanks for taking a look.
Adam diff --git a/target/arm/translate-vfp.c.inc b/target/arm/translate-vfp.c.inc index 10766f210c..37c079fab1 100644 --- a/target/arm/translate-vfp.c.inc +++ b/target/arm/translate-vfp.c.inc @@ -120,7 +120,7 @@ static void gen_preserve_fp_state(DisasContext *s) */ static bool full_vfp_access_check(DisasContext *s, bool ignore_vfp_enabled) { - if (s->fp_excp_el) { + if (s->fp_excp_el && !ignore_vfp_enabled) { /* M-profile handled this earlier, in disas_m_nocp() */ assert (!arm_dc_feature(s, ARM_FEATURE_M)); gen_exception_insn(s, s->pc_curr, EXCP_UDEF,