[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 03/55] target/arm: Handle VPR semantics in existing code
From: |
Peter Maydell |
Subject: |
Re: [PATCH 03/55] target/arm: Handle VPR semantics in existing code |
Date: |
Thu, 10 Jun 2021 10:28:54 +0100 |
On Mon, 7 Jun 2021 at 22:19, Richard Henderson
<richard.henderson@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
- [PATCH 00/55] target/arm: First slice of MVE implementation, Peter Maydell, 2021/06/07
- [PATCH 01/55] tcg: Introduce tcg_remove_ops_after, Peter Maydell, 2021/06/07
- [PATCH 02/55] target/arm: Enable FPSCR.QC bit for MVE, Peter Maydell, 2021/06/07
- [PATCH 05/55] target/arm: Let vfp_access_check() handle late NOCP checks, Peter Maydell, 2021/06/07
- [PATCH 03/55] target/arm: Handle VPR semantics in existing code, Peter Maydell, 2021/06/07
- [PATCH 04/55] target/arm: Add handling for PSR.ECI/ICI, Peter Maydell, 2021/06/07
- [PATCH 06/55] target/arm: Implement MVE LCTP, Peter Maydell, 2021/06/07
- [PATCH 08/55] target/arm: Implement MVE DLSTP, Peter Maydell, 2021/06/07
- [PATCH 07/55] target/arm: Implement MVE WLSTP insn, Peter Maydell, 2021/06/07