aboutsummaryrefslogtreecommitdiff
path: root/target-arm/helper.c
diff options
context:
space:
mode:
authorAndreas Färber <andreas.faerber@web.de>2011-12-13 18:19:25 +0000
committerPeter Maydell <peter.maydell@linaro.org>2011-12-13 18:19:25 +0000
commitdb8336cd1f04e658b2441d4fcfbbb3c5e42b0469 (patch)
tree1070b394cee5654f3d4e894c8058c917e404aaea /target-arm/helper.c
parent86e72db6aaa2164d96fcab7290125ce3492718c6 (diff)
target-arm: Infer VFPv3 feature from VFPv4
VFP4 => VFP3 Signed-off-by: Andreas Färber <andreas.faerber@web.de> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target-arm/helper.c')
-rw-r--r--target-arm/helper.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/target-arm/helper.c b/target-arm/helper.c
index bd5576c804..65f4fbf98e 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -164,7 +164,6 @@ static void cpu_reset_model_id(CPUARMState *env, uint32_t id)
break;
case ARM_CPUID_ANY: /* For userspace emulation. */
set_feature(env, ARM_FEATURE_V7);
- set_feature(env, ARM_FEATURE_VFP3);
set_feature(env, ARM_FEATURE_VFP4);
set_feature(env, ARM_FEATURE_VFP_FP16);
set_feature(env, ARM_FEATURE_NEON);
@@ -245,6 +244,9 @@ static void cpu_reset_model_id(CPUARMState *env, uint32_t id)
if (arm_feature(env, ARM_FEATURE_ARM_DIV)) {
set_feature(env, ARM_FEATURE_THUMB_DIV);
}
+ if (arm_feature(env, ARM_FEATURE_VFP4)) {
+ set_feature(env, ARM_FEATURE_VFP3);
+ }
if (arm_feature(env, ARM_FEATURE_VFP3)) {
set_feature(env, ARM_FEATURE_VFP);
}