summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandrew <andrew@FreeBSD.org>2014-03-16 09:40:05 +0000
committerandrew <andrew@FreeBSD.org>2014-03-16 09:40:05 +0000
commitafd68e7ef165dad4f558f1cac8a8b7088a498c94 (patch)
tree92df5eedceea5bf486f082b7b57519575797c011
parentdb0c4db26d2a027798264e31e09dd68d9841e346 (diff)
downloadFreeBSD-src-afd68e7ef165dad4f558f1cac8a8b7088a498c94.zip
FreeBSD-src-afd68e7ef165dad4f558f1cac8a8b7088a498c94.tar.gz
Only build the vfp/softfp switching code on armv6 as we don't support vfp
on anything earlier than this. This should fix the armeb and arm builds when using gcc.
-rw-r--r--lib/msun/arm/fenv.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/msun/arm/fenv.c b/lib/msun/arm/fenv.c
index 574b79e..2dd1933 100644
--- a/lib/msun/arm/fenv.c
+++ b/lib/msun/arm/fenv.c
@@ -30,6 +30,10 @@
#define __fenv_static
#include "fenv.h"
+#if defined(__FreeBSD_ARCH_armv6__) || (defined(__ARM_ARCH) && __ARM_ARCH >= 6)
+#define FENV_ARMv6
+#endif
+
/* When SOFTFP_ABI is defined we are using the softfp ABI. */
#if defined(__VFP_FP__) && !defined(__ARM_PCS_VFP)
#define SOFTFP_ABI
@@ -46,7 +50,7 @@ const fenv_t __fe_dfl_env = 0;
/* If this is a non-mangled softfp version special processing is required */
-#if defined(FENV_MANGLE) || !defined(SOFTFP_ABI)
+#if defined(FENV_MANGLE) || !defined(SOFTFP_ABI) || !defined(FENV_ARMv6)
/*
* The following macros map between the softfloat emulator's flags and
OpenPOWER on IntegriCloud