mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
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 <libm-alias-double.h>. [!__fma] (fma): Define using libm_alias_double. * sysdeps/ieee754/ldbl-96/s_fma.c: Include <libm-alias-double.h>. [!__fma] (fma): Define using libm_alias_double.
This commit is contained in:
parent
fd3b4e7c8a
commit
f85a176f3f
@ -1,5 +1,10 @@
|
||||
2017-10-06 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/ieee754/ldbl-128/s_fma.c: Include <libm-alias-double.h>.
|
||||
[!__fma] (fma): Define using libm_alias_double.
|
||||
* sysdeps/ieee754/ldbl-96/s_fma.c: Include <libm-alias-double.h>.
|
||||
[!__fma] (fma): Define using libm_alias_double.
|
||||
|
||||
* sysdeps/ieee754/float128/float128_private.h: Include
|
||||
<libm-alias-ldouble.h> and <libm-alias-float128.h>.
|
||||
(libm_alias_ldouble_r): Undefine and redefine.
|
||||
|
@ -20,6 +20,7 @@
|
||||
#include <math.h>
|
||||
#include <fenv.h>
|
||||
#include <ieee754.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
/* 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
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include <fenv.h>
|
||||
#include <ieee754.h>
|
||||
#include <math_private.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
/* 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
|
||||
|
Loading…
Reference in New Issue
Block a user