From 93adaa7de21670ac3ba4d35a729cf8cef3cff980 Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Thu, 13 Jun 2019 16:38:00 -0400 Subject: [PATCH] target/arm: Explicitly enable VFP short-vectors for aarch32 -cpu max At the moment our -cpu max for AArch32 supports VFP short-vectors because we always implement them, even for CPUs which should not have them. The following commits are going to switch to using the correct ID-register-check to enable or disable short vector support, so we need to turn it on explicitly for -cpu max, because Cortex-A15 doesn't implement it. We don't enable this for the AArch64 -cpu max, because the v8A architecture never supports short-vectors. Backports commit 973751fd798d41402d34f9f705c0c6d1633d0cda from qemu --- qemu/target/arm/cpu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/qemu/target/arm/cpu.c b/qemu/target/arm/cpu.c index a01c7d1b..2fcdfccb 100644 --- a/qemu/target/arm/cpu.c +++ b/qemu/target/arm/cpu.c @@ -1715,9 +1715,9 @@ static void arm_max_initfn(struct uc_struct *uc, Object *obj, void *opaque) ARMCPU *cpu = ARM_CPU(uc, obj); cortex_a15_initfn(uc, obj, opaque); - /* In future we might add feature bits here even if the - * real-world A15 doesn't implement them. - */ + + /* old-style VFP short-vector support */ + cpu->isar.mvfr0 = FIELD_DP32(cpu->isar.mvfr0, MVFR0, FPSHVEC, 1); // Unicorn: We lie and enable them anyway. /* We don't set these in system emulation mode for the moment,