On 4/4/25 15:35, Philippe Mathieu-Daudé wrote:
static void arm_cpu_initfn(Object *obj)
{
ARMCPU *cpu = ARM_CPU(obj);
@@ -1482,16 +1489,16 @@ static void arm_cpu_initfn(Object *obj)
QLIST_INIT(&cpu->el_change_hooks);
#ifdef CONFIG_USER_ONLY
-# ifdef TARGET_AARCH64
- /*
- * The linux kernel defaults to 512-bit for SVE, and 256-bit for SME.
- * These values were chosen to fit within the default signal frame.
- * See documentation for /proc/sys/abi/{sve,sme}_default_vector_length,
- * and our corresponding cpu property.
- */
- cpu->sve_default_vq = 4;
- cpu->sme_default_vq = 2;
-# endif
+ if (arm_cpu_is_64bit(cpu)) {
arm_feature(&cpu->env, ARM_FEATURE_AARCH64)
is a better test, but env->features is initialized by the child instance_init.
We could move this to arm_cpu_post_init, so that features is initialized.
Alternately, we could just make this unconditional, since these fields are always present
but only read from aarch64 code.
r~