On Mon, 7 Jun 2021 at 22:19, Richard Henderson <richard.hender...@linaro.org> wrote: > > On 6/7/21 9:57 AM, Peter Maydell wrote: > > @@ -410,16 +415,19 @@ void HELPER(v7m_preserve_fp_state)(CPUARMState *env) > > env->v7m.fpccr[is_secure] &= ~R_V7M_FPCCR_LSPACT_MASK; > > > > if (ts) { > > - /* Clear s0 to s31 and the FPSCR */ > > + /* Clear s0 to s31 and the FPSCR and VPR */ > > int i; > > > > for (i = 0; i < 32; i += 2) { > > *aa32_vfp_dreg(env, i / 2) = 0; > > } > > vfp_set_fpscr(env, 0); > > + if (cpu_isar_feature(aa32_mve, cpu)) { > > + env->v7m.vpr = 0; > > + } > > If the vpr does not exist without mve, is it cleaner to simply set vpr > unconditionally?
I thought about that, but in the end went for the condition, just to preserve the parallelism with the places where we do need the condition. There didn't seem to me to be much in it. -- PMM