summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2016-02-18 23:53:03 +0000
committerRich Felker <dalias@aerifal.cx>2016-02-18 23:53:03 +0000
commited97dfd979c054b8c598875410529077dad84c02 (patch)
tree79665a0f659ceffec8fe6ec3156b3664b4d61978
parent790580b2fc47bc20e613336cb937a120422a770c (diff)
downloadmusl-ed97dfd979c054b8c598875410529077dad84c02.tar.gz
improve macro logic for enabling arm math asm
in order to take advantage of the fpu in -mfloat-abi=softfp mode, the __VFP_FP__ (presence of vfp fpu) was checked instead of checking for __ARM_PCS_VFP (hardfloat EABI variant). however, the latter macro is the one that's actually specified by the ABI documents rather than being compiler-specific, and should also be checked in case __VFP_FP__ is not defined on some compilers or some configurations.
-rw-r--r--src/math/arm/sqrt.c2
-rw-r--r--src/math/arm/sqrtf.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/math/arm/sqrt.c b/src/math/arm/sqrt.c
index c9c00083..874af960 100644
--- a/src/math/arm/sqrt.c
+++ b/src/math/arm/sqrt.c
@@ -1,6 +1,6 @@
#include <math.h>
-#if __VFP_FP__ && !__SOFTFP__
+#if __ARM_PCS_VFP || (__VFP_FP__ && !__SOFTFP__)
double sqrt(double x)
{
diff --git a/src/math/arm/sqrtf.c b/src/math/arm/sqrtf.c
index e6576655..98858ecd 100644
--- a/src/math/arm/sqrtf.c
+++ b/src/math/arm/sqrtf.c
@@ -1,6 +1,6 @@
#include <math.h>
-#if __VFP_FP__ && !__SOFTFP__
+#if __ARM_PCS_VFP || (__VFP_FP__ && !__SOFTFP__)
float sqrtf(float x)
{