[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 17/25] target/arm: Generalize cpu_arm_{get, set}_default_vec_len
From: |
Peter Maydell |
Subject: |
[PULL 17/25] target/arm: Generalize cpu_arm_{get, set}_default_vec_len |
Date: |
Mon, 27 Jun 2022 11:22:28 +0100 |
From: Richard Henderson <richard.henderson@linaro.org>
Rename from cpu_arm_{get,set}_sve_default_vec_len,
and take the pointer to default_vq from opaque.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220620175235.60881-15-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target/arm/cpu64.c | 27 ++++++++++++++-------------
1 file changed, 14 insertions(+), 13 deletions(-)
diff --git a/target/arm/cpu64.c b/target/arm/cpu64.c
index 1a3cb953bf0..b15a0d398ad 100644
--- a/target/arm/cpu64.c
+++ b/target/arm/cpu64.c
@@ -638,11 +638,11 @@ static void cpu_arm_set_sve(Object *obj, bool value,
Error **errp)
#ifdef CONFIG_USER_ONLY
/* Mirror linux /proc/sys/abi/sve_default_vector_length. */
-static void cpu_arm_set_sve_default_vec_len(Object *obj, Visitor *v,
- const char *name, void *opaque,
- Error **errp)
+static void cpu_arm_set_default_vec_len(Object *obj, Visitor *v,
+ const char *name, void *opaque,
+ Error **errp)
{
- ARMCPU *cpu = ARM_CPU(obj);
+ uint32_t *ptr_default_vq = opaque;
int32_t default_len, default_vq, remainder;
if (!visit_type_int32(v, name, &default_len, errp)) {
@@ -651,7 +651,7 @@ static void cpu_arm_set_sve_default_vec_len(Object *obj,
Visitor *v,
/* Undocumented, but the kernel allows -1 to indicate "maximum". */
if (default_len == -1) {
- cpu->sve_default_vq = ARM_MAX_VQ;
+ *ptr_default_vq = ARM_MAX_VQ;
return;
}
@@ -675,15 +675,15 @@ static void cpu_arm_set_sve_default_vec_len(Object *obj,
Visitor *v,
return;
}
- cpu->sve_default_vq = default_vq;
+ *ptr_default_vq = default_vq;
}
-static void cpu_arm_get_sve_default_vec_len(Object *obj, Visitor *v,
- const char *name, void *opaque,
- Error **errp)
+static void cpu_arm_get_default_vec_len(Object *obj, Visitor *v,
+ const char *name, void *opaque,
+ Error **errp)
{
- ARMCPU *cpu = ARM_CPU(obj);
- int32_t value = cpu->sve_default_vq * 16;
+ uint32_t *ptr_default_vq = opaque;
+ int32_t value = *ptr_default_vq * 16;
visit_type_int32(v, name, &value, errp);
}
@@ -706,8 +706,9 @@ void aarch64_add_sve_properties(Object *obj)
#ifdef CONFIG_USER_ONLY
/* Mirror linux /proc/sys/abi/sve_default_vector_length. */
object_property_add(obj, "sve-default-vector-length", "int32",
- cpu_arm_get_sve_default_vec_len,
- cpu_arm_set_sve_default_vec_len, NULL, NULL);
+ cpu_arm_get_default_vec_len,
+ cpu_arm_set_default_vec_len, NULL,
+ &cpu->sve_default_vq);
#endif
}
--
2.25.1
- [PULL 10/25] target/arm: Add SMIDR_EL1, SMPRI_EL1, SMPRIMAP_EL2, (continued)
- [PULL 10/25] target/arm: Add SMIDR_EL1, SMPRI_EL1, SMPRIMAP_EL2, Peter Maydell, 2022/06/27
- [PULL 04/25] target/arm: Implement TPIDR2_EL0, Peter Maydell, 2022/06/27
- [PULL 06/25] target/arm: Add syn_smetrap, Peter Maydell, 2022/06/27
- [PULL 11/25] target/arm: Add PSTATE.{SM,ZA} to TB flags, Peter Maydell, 2022/06/27
- [PULL 12/25] target/arm: Add the SME ZA storage to CPUARMState, Peter Maydell, 2022/06/27
- [PULL 16/25] target/arm: Generalize cpu_arm_{get,set}_vq, Peter Maydell, 2022/06/27
- [PULL 15/25] target/arm: Create ARMVQMap, Peter Maydell, 2022/06/27
- [PULL 05/25] target/arm: Add SMEEXC_EL to TB flags, Peter Maydell, 2022/06/27
- [PULL 09/25] target/arm: Add SMCR_ELx, Peter Maydell, 2022/06/27
- [PULL 13/25] target/arm: Implement SMSTART, SMSTOP, Peter Maydell, 2022/06/27
- [PULL 17/25] target/arm: Generalize cpu_arm_{get, set}_default_vec_len,
Peter Maydell <=
- [PULL 01/25] sphinx: change default language to 'en', Peter Maydell, 2022/06/27
- [PULL 18/25] target/arm: Move arm_cpu_*_finalize to internals.h, Peter Maydell, 2022/06/27
- [PULL 19/25] target/arm: Unexport aarch64_add_*_properties, Peter Maydell, 2022/06/27
- [PULL 21/25] target/arm: Introduce sve_vqm1_for_el_sm, Peter Maydell, 2022/06/27
- [PULL 20/25] target/arm: Add cpu properties for SME, Peter Maydell, 2022/06/27
- [PULL 23/25] target/arm: Move pred_{full, gvec}_reg_{offset, size} to translate-a64.h, Peter Maydell, 2022/06/27
- [PULL 25/25] target/arm: Check V7VE as well as LPAE in arm_pamax, Peter Maydell, 2022/06/27
- [PULL 03/25] target/arm: Catch invalid kvm state also for hvf, Peter Maydell, 2022/06/27
- [PULL 08/25] target/arm: Add SVCR, Peter Maydell, 2022/06/27
- [PULL 22/25] target/arm: Add SVL to TB flags, Peter Maydell, 2022/06/27