Use libm_alias_double for dbl-64 atan, tan.

This patch makes the dbl-64 atan and tan implementations use
libm_alias_double, removing the corresponding ldbl-opt wrappers.

Tested for x86_64, and with build-many-glibcs.py.  Installed stripped
shared libraries are unchanged on non-ldbl-opt platforms.  For
ldbl-opt configurations, the patch has the effect of causing
compat_symbol to define atanl and tanl in terms of __atan and __tan
instead of in terms of atan and tan, which is enough to change the
installed stripped libm.so.

	* sysdeps/ieee754/dbl-64/s_atan.c: Include <libm-alias-double.h>.
	(atan): Define using libm_alias_double.
	* sysdeps/ieee754/dbl-64/s_tan.c: Include <libm-alias-double.h>.
	(tan): Define using libm_alias_double.
	* sysdeps/ieee754/ldbl-opt/s_atan.c: Remove file.
	* sysdeps/ieee754/ldbl-opt/s_tan.c: Likewise.
This commit is contained in:
Joseph Myers 2017-10-02 23:16:56 +00:00
parent 527cd19c3d
commit 38722448c6
5 changed files with 11 additions and 20 deletions

View File

@ -1,5 +1,12 @@
2017-10-02 Joseph Myers <joseph@codesourcery.com>
* sysdeps/ieee754/dbl-64/s_atan.c: Include <libm-alias-double.h>.
(atan): Define using libm_alias_double.
* sysdeps/ieee754/dbl-64/s_tan.c: Include <libm-alias-double.h>.
(tan): Define using libm_alias_double.
* sysdeps/ieee754/ldbl-opt/s_atan.c: Remove file.
* sysdeps/ieee754/ldbl-opt/s_tan.c: Likewise.
* 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].

View File

@ -43,6 +43,7 @@
#include "atnat.h"
#include <fenv.h>
#include <float.h>
#include <libm-alias-double.h>
#include <math.h>
#include <math_private.h>
#include <stap-probe.h>
@ -324,9 +325,5 @@ atanMp (double x, const int pr[])
}
#ifndef __atan
weak_alias (__atan, atan)
# ifdef NO_LONG_DOUBLE
strong_alias (__atan, __atanl)
weak_alias (__atanl, atanl)
# endif
libm_alias_double (__atan, atan)
#endif

View File

@ -41,6 +41,7 @@
#include "MathLib.h"
#include <math.h>
#include <math_private.h>
#include <libm-alias-double.h>
#include <fenv.h>
#include <stap-probe.h>
@ -844,9 +845,5 @@ tanMp (double x)
}
#ifndef __tan
weak_alias (__tan, tan)
# ifdef NO_LONG_DOUBLE
strong_alias (__tan, __tanl)
weak_alias (__tanl, tanl)
# endif
libm_alias_double (__tan, tan)
#endif

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#include <sysdeps/ieee754/dbl-64/s_atan.c>
#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
compat_symbol (libm, atan, atanl, GLIBC_2_0);
#endif

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#include <sysdeps/ieee754/dbl-64/s_tan.c>
#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
compat_symbol (libm, tan, tanl, GLIBC_2_0);
#endif