diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-10-02 20:20:52 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-10-02 20:20:52 +0000 |
commit | 527cd19c3d39288ae170fe09de87c05a27f4e12b (patch) | |
tree | 69fff3a2dca2c69df65eff598d6a963de0a079ac /sysdeps/ieee754/dbl-64/s_atan.c | |
parent | bdc5c59214a9e4bd9a299deead29c04ddf141256 (diff) | |
download | glibc-527cd19c3d39288ae170fe09de87c05a27f4e12b.tar.gz glibc-527cd19c3d39288ae170fe09de87c05a27f4e12b.tar.xz glibc-527cd19c3d39288ae170fe09de87c05a27f4e12b.zip |
Make dbl-64 atan and tan into weak aliases.
This patch converts the dbl-64 implementations of atan and tan into weak aliases of __atan and __tan, in preparation for making them use libm_alias_double. Consequent changes are made to the x86_64 multiarch versions wrapping round them (with the dbl-64 functions, like other such functions, being made not to define their aliases at all if __atan or __tan are defined as macros by an including file). Tested for x86_64, and with build-many-glibcs.py. * sysdeps/ieee754/dbl-64/s_atan.c (atan): Rename to __atan and define as weak alias of __atan. Do not define any aliases if [__atan]. [NO_LONG_DOUBLE] (__atanl): Define as strong alias of __atan. [NO_LONG_DOUBLE] (atanl): Define as weak alias of __atanl. * sysdeps/ieee754/dbl-64/s_tan.c (tan): Rename to __tan and define as weak alias of __tan. Do not define any aliases if [__tan]. [NO_LONG_DOUBLE] (__tanl): Define as strong alias of __tan. [NO_LONG_DOUBLE] (tanl): Define as weak alias of __tanl. * sysdeps/x86_64/fpu/multiarch/s_atan-avx.c (atan): Rename to __atan. * sysdeps/x86_64/fpu/multiarch/s_atan-fma.c (atan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c (atan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_atan.c (atan): Rename to __atan and define as weak alias of __atan. * sysdeps/x86_64/fpu/multiarch/s_tan-avx.c (tan): Rename to __atan. * sysdeps/x86_64/fpu/multiarch/s_tan-fma.c (tan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c (tan): Likewise. * sysdeps/x86_64/fpu/multiarch/s_tan.c (tan): Rename to __tan and define as weak alias of __tan.
Diffstat (limited to 'sysdeps/ieee754/dbl-64/s_atan.c')
-rw-r--r-- | sysdeps/ieee754/dbl-64/s_atan.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sysdeps/ieee754/dbl-64/s_atan.c b/sysdeps/ieee754/dbl-64/s_atan.c index 3641a35ce1..fdc3bf7e25 100644 --- a/sysdeps/ieee754/dbl-64/s_atan.c +++ b/sysdeps/ieee754/dbl-64/s_atan.c @@ -61,7 +61,7 @@ __signArctan (double x, double y) /* An ultimate atan() routine. Given an IEEE double machine number x, */ /* routine computes the correctly rounded (to nearest) value of atan(x). */ double -atan (double x) +__atan (double x) { double cor, s1, ss1, s2, ss2, t1, t2, t3, t7, t8, t9, t10, u, u2, u3, v, vv, w, ww, y, yy, z, zz; @@ -323,6 +323,10 @@ atanMp (double x, const int pr[]) return y1; /*if impossible to do exact computing */ } -#ifdef NO_LONG_DOUBLE -weak_alias (atan, atanl) +#ifndef __atan +weak_alias (__atan, atan) +# ifdef NO_LONG_DOUBLE +strong_alias (__atan, __atanl) +weak_alias (__atanl, atanl) +# endif #endif |