[PATCH 2/3] libm: Detect fast fmaf support

Keith Packard keithp@keithp.com
Sat Aug 8 22:34:12 GMT 2020


Anything with fast FMA is assumed to have fast FMAF, along with
32-bit arms that advertise 32-bit FP support and __ARM_FEATURE_FMA

Signed-off-by: Keith Packard <keithp@keithp.com>
---
 newlib/libm/common/math_config.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/newlib/libm/common/math_config.h b/newlib/libm/common/math_config.h
index df8f8d6e4..e7a8bb7fe 100644
--- a/newlib/libm/common/math_config.h
+++ b/newlib/libm/common/math_config.h
@@ -79,6 +79,14 @@
 # endif
 #endif
 
+#ifndef HAVE_FAST_FMAF
+# if HAVE_FAST_FMA || (__ARM_FEATURE_FMA && (__ARM_FP & 4))
+#  define HAVE_FAST_FMAF 1
+# else
+#  define HAVE_FAST_FMAF 0
+# endif
+#endif
+
 #if HAVE_FAST_ROUND
 /* When set, the roundtoint and converttoint functions are provided with
    the semantics documented below.  */
-- 
2.28.0



More information about the Newlib mailing list