[newlib-cygwin] libm: ARM without HW double does not have fast FMA
Corinna Vinschen
corinna@sourceware.org
Mon Aug 10 19:06:29 GMT 2020
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=432b331c79a379ef92635fc173b4689b6d5b3feb
commit 432b331c79a379ef92635fc173b4689b6d5b3feb
Author: Keith Packard via Newlib <newlib@sourceware.org>
Date: Sat Aug 8 15:34:11 2020 -0700
libm: ARM without HW double does not have fast FMA
32-bit ARM processors with HW float (but not HW double) may define
__ARM_FEATURE_FMA, but that only means they have fast FMA for 32-bit
floats.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diff:
---
newlib/libm/common/math_config.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/newlib/libm/common/math_config.h b/newlib/libm/common/math_config.h
index 1089b0ec6..df8f8d6e4 100644
--- a/newlib/libm/common/math_config.h
+++ b/newlib/libm/common/math_config.h
@@ -72,7 +72,7 @@
/* Compiler can inline fma as a single instruction. */
#ifndef HAVE_FAST_FMA
-# if __aarch64__ || __ARM_FEATURE_FMA
+# if __aarch64__ || (__ARM_FEATURE_FMA && (__ARM_FP & 8))
# define HAVE_FAST_FMA 1
# else
# define HAVE_FAST_FMA 0
More information about the Newlib-cvs
mailing list