Use libm_alias_double for s390.

Continuing the preparation for additional _FloatN / _FloatNx function
aliases, this patch makes s390 libm function implementations use
libm_alias_double to define function aliases.  This allows
sysdeps/unix/sysv/linux/s390/fpu/s_fma.c to be removed, as
libm_alias_double handles symbol versioning for long double compat
symbols.

Tested with build-many-glibcs.py for s390-linux-gnu and
s390x-linux-gnu that installed stripped shared libraries are unchanged
by the patch.

	* sysdeps/s390/fpu/s_fma.c: Include <libm-alias-double.h>.
	[!__fma] (fma): Define using libm_alias_double.
	* sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: Remove.
This commit is contained in:
Joseph Myers 2017-11-28 17:18:20 +00:00
parent 22c69b6ad6
commit 6940bd966b
3 changed files with 8 additions and 11 deletions

View File

@ -1,3 +1,9 @@
2017-11-28 Joseph Myers <joseph@codesourcery.com>
* sysdeps/s390/fpu/s_fma.c: Include <libm-alias-double.h>.
[!__fma] (fma): Define using libm_alias_double.
* sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: Remove.
2017-11-28 Mike FABIAN <mfabian@redhat.com>
[BZ #22336]

View File

@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <math.h>
#include <libm-alias-double.h>
double
__fma (double x, double y, double z)
@ -27,10 +28,5 @@ __fma (double x, double y, double z)
return r;
}
#ifndef __fma
weak_alias (__fma, fma)
#endif
#ifdef NO_LONG_DOUBLE
strong_alias (__fma, __fmal)
weak_alias (__fmal, fmal)
libm_alias_double (__fma, fma)
#endif

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#include <sysdeps/s390/fpu/s_fma.c>
#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
compat_symbol (libm, __fma, fmal, GLIBC_2_1);
#endif