From f85a176f3f411b7478c2b8cb2708973e8668e7fb Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 6 Oct 2017 20:23:58 +0000 Subject: Use libm_alias_double in ldbl-128, ldbl-96 fma. This patch makes the ldbl-128 and ldbl-96 implementations of fma use libm_alias_double. Tested for x86_64, and tested with build-many-glibcs.py that installed stripped shared libraries are unchanged by the patch. * sysdeps/ieee754/ldbl-128/s_fma.c: Include . [!__fma] (fma): Define using libm_alias_double. * sysdeps/ieee754/ldbl-96/s_fma.c: Include . [!__fma] (fma): Define using libm_alias_double. --- ChangeLog | 5 +++++ sysdeps/ieee754/ldbl-128/s_fma.c | 3 ++- sysdeps/ieee754/ldbl-96/s_fma.c | 3 ++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6aaf10d4a1..deec63d1a8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2017-10-06 Joseph Myers + * sysdeps/ieee754/ldbl-128/s_fma.c: Include . + [!__fma] (fma): Define using libm_alias_double. + * sysdeps/ieee754/ldbl-96/s_fma.c: Include . + [!__fma] (fma): Define using libm_alias_double. + * sysdeps/ieee754/float128/float128_private.h: Include and . (libm_alias_ldouble_r): Undefine and redefine. diff --git a/sysdeps/ieee754/ldbl-128/s_fma.c b/sysdeps/ieee754/ldbl-128/s_fma.c index 13da2904f4..0f7ecabdbd 100644 --- a/sysdeps/ieee754/ldbl-128/s_fma.c +++ b/sysdeps/ieee754/ldbl-128/s_fma.c @@ -20,6 +20,7 @@ #include #include #include +#include /* This implementation relies on long double being more than twice as precise as double and uses rounding to odd in order to avoid problems @@ -51,5 +52,5 @@ __fma (double x, double y, double z) return (double) u.d; } #ifndef __fma -weak_alias (__fma, fma) +libm_alias_double (__fma, fma) #endif diff --git a/sysdeps/ieee754/ldbl-96/s_fma.c b/sysdeps/ieee754/ldbl-96/s_fma.c index 370592074e..e573c711ef 100644 --- a/sysdeps/ieee754/ldbl-96/s_fma.c +++ b/sysdeps/ieee754/ldbl-96/s_fma.c @@ -22,6 +22,7 @@ #include #include #include +#include /* This implementation uses rounding to odd to avoid problems with double rounding. See a paper by Boldo and Melquiond: @@ -97,5 +98,5 @@ __fma (double x, double y, double z) return u.d; } #ifndef __fma -weak_alias (__fma, fma) +libm_alias_double (__fma, fma) #endif -- cgit v1.2.3