diff options
author | Rich Felker <dalias@aerifal.cx> | 2016-02-19 01:20:07 +0000 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2016-02-19 01:20:07 +0000 |
commit | 71c334f951d9ffa4d8bdc71bdd49628e5ae4512b (patch) | |
tree | ae0fd157e6551124df126e73a4be47330479e8f0 /src/math | |
parent | ed97dfd979c054b8c598875410529077dad84c02 (diff) | |
download | musl-71c334f951d9ffa4d8bdc71bdd49628e5ae4512b.tar.gz musl-71c334f951d9ffa4d8bdc71bdd49628e5ae4512b.tar.bz2 musl-71c334f951d9ffa4d8bdc71bdd49628e5ae4512b.tar.xz musl-71c334f951d9ffa4d8bdc71bdd49628e5ae4512b.zip |
work around regression building for armhf with clang (compiler bug)
commit e4355bd6bec89688e8c739cd7b4c76e675643dca moved the math asm
from external source files to inline asm, but unfortunately, all
current releases of clang use the wrong inline asm constraint codes
for float and double ("w" and "P" instead of "t" and "w",
respectively). this patch adds detection for the bug in configure,
and, for now, just disables the affected asm on broken clang versions.
Diffstat (limited to 'src/math')
-rw-r--r-- | src/math/arm/fabsf.c | 2 | ||||
-rw-r--r-- | src/math/arm/sqrtf.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/math/arm/fabsf.c b/src/math/arm/fabsf.c index 28153a61..4a217c98 100644 --- a/src/math/arm/fabsf.c +++ b/src/math/arm/fabsf.c @@ -1,6 +1,6 @@ #include <math.h> -#if __ARM_PCS_VFP +#if __ARM_PCS_VFP && !BROKEN_VFP_ASM float fabsf(float x) { diff --git a/src/math/arm/sqrtf.c b/src/math/arm/sqrtf.c index 98858ecd..32693293 100644 --- a/src/math/arm/sqrtf.c +++ b/src/math/arm/sqrtf.c @@ -1,6 +1,6 @@ #include <math.h> -#if __ARM_PCS_VFP || (__VFP_FP__ && !__SOFTFP__) +#if (__ARM_PCS_VFP || (__VFP_FP__ && !__SOFTFP__)) && !BROKEN_VFP_ASM float sqrtf(float x) { |