[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 39/71] target/arm: Add SVL to TB flags
From: |
Peter Maydell |
Subject: |
Re: [PATCH 39/71] target/arm: Add SVL to TB flags |
Date: |
Tue, 7 Jun 2022 10:58:26 +0100 |
On Thu, 2 Jun 2022 at 23:18, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> We need SVL separate from VL for RDSVL at al, as well as
"et al"
> ZA storage loads and stores, which do not require PSTATE.SM.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> target/arm/cpu.h | 12 ++++++++++++
> target/arm/translate.h | 1 +
> target/arm/helper.c | 8 +++++++-
> target/arm/translate-a64.c | 1 +
> 4 files changed, 21 insertions(+), 1 deletion(-)
>
> diff --git a/target/arm/cpu.h b/target/arm/cpu.h
> index e41a75a3a3..0c32c3afaa 100644
> --- a/target/arm/cpu.h
> +++ b/target/arm/cpu.h
> @@ -3292,6 +3292,7 @@ FIELD(TBFLAG_A64, MTE0_ACTIVE, 19, 1)
> FIELD(TBFLAG_A64, SMEEXC_EL, 20, 2)
> FIELD(TBFLAG_A64, PSTATE_SM, 22, 1)
> FIELD(TBFLAG_A64, PSTATE_ZA, 23, 1)
> +FIELD(TBFLAG_A64, SVL, 24, 4)
Given that both SVE and SME start with an 'S', maybe
"SME_VL" would be less prone to confusion? On the other hand,
SVL is the architectural name, so maybe that's best.
> /*
> * Helpers for using the above.
> @@ -3337,6 +3338,17 @@ static inline int sve_vq_cached(CPUARMState *env)
> return EX_TBFLAG_A64(env->hflags, VL) + 1;
> }
>
> +/**
> + * sme_vq_cached
> + * @env: the cpu context
> + *
> + * Return the SVL cached within env->hflags, in units of quadwords.
> + */
> +static inline int sme_vq_cached(CPUARMState *env)
Same remark as earlier about not needing to put "cached" in the function name.
Otherwise
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
thanks
-- PMM
- Re: [PATCH 31/71] target/arm: Move error for sve%d property to arm_cpu_sve_finalize, (continued)
- [PATCH 32/71] target/arm: Create ARMVQMap, Richard Henderson, 2022/06/02
- [PATCH 35/71] target/arm: Move arm_cpu_*_finalize to internals.h, Richard Henderson, 2022/06/02
- [PATCH 36/71] target/arm: Unexport aarch64_add_*_properties, Richard Henderson, 2022/06/02
- [PATCH 34/71] target/arm: Generalize cpu_arm_{get, set}_default_vec_len, Richard Henderson, 2022/06/02
- [PATCH 39/71] target/arm: Add SVL to TB flags, Richard Henderson, 2022/06/02
- Re: [PATCH 39/71] target/arm: Add SVL to TB flags,
Peter Maydell <=
- [PATCH 26/71] target/arm: Add SMCR_ELx, Richard Henderson, 2022/06/02
- [PATCH 38/71] target/arm: Introduce sve_vqm1_for_el_sm, Richard Henderson, 2022/06/02
- [PATCH 37/71] target/arm: Add cpu properties for SME, Richard Henderson, 2022/06/02
- [PATCH 40/71] target/arm: Move pred_{full, gvec}_reg_{offset, size} to translate-a64.h, Richard Henderson, 2022/06/02