mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-10 07:10:06 +00:00
Use libm_alias_double for i386.
Continuing the preparation for additional _FloatN / _FloatNx function aliases, this patch makes i386 libm function implementations use libm_alias_double to define function aliases. Tested with build-many-glibcs.py for all its i386 configurations that installed stripped shared libraries are unchanged by the patch, as well as running the full glibc testsuite for i686. * sysdeps/i386/fpu/s_asinh.S: Include <libm-alias-double.h>. (asinh): Define using libm_alias_double. * sysdeps/i386/fpu/s_atan.S: Include <libm-alias-double.h>. (atan): Define using libm_alias_double. * sysdeps/i386/fpu/s_cbrt.S: Include <libm-alias-double.h>. (cbrt): Define using libm_alias_double. * sysdeps/i386/fpu/s_ceil.S: Include <libm-alias-double.h>. (ceil): Define using libm_alias_double. * sysdeps/i386/fpu/s_copysign.S: Include <libm-alias-double.h>. (copysign): Define using libm_alias_double. * sysdeps/i386/fpu/s_expm1.S: Include <libm-alias-double.h>. (expm1): Define using libm_alias_double. * sysdeps/i386/fpu/s_fabs.S: Include <libm-alias-double.h>. (fabs): Define using libm_alias_double. * sysdeps/i386/fpu/s_fdim.c: Include <libm-alias-double.h>. (fdim): Define using libm_alias_double. * sysdeps/i386/fpu/s_floor.S: Include <libm-alias-double.h>. (floor): Define using libm_alias_double. * sysdeps/i386/fpu/s_fmax.S: Include <libm-alias-double.h>. (fmax): Define using libm_alias_double. * sysdeps/i386/fpu/s_fmin.S: Include <libm-alias-double.h>. (fmin): Define using libm_alias_double. * sysdeps/i386/fpu/s_frexp.S: Include <libm-alias-double.h>. (frexp): Define using libm_alias_double. * sysdeps/i386/fpu/s_llrint.S: Include <libm-alias-double.h>. (llrint): Define using libm_alias_double. * sysdeps/i386/fpu/s_logb.S: Include <libm-alias-double.h>. (logb): Define using libm_alias_double. * sysdeps/i386/fpu/s_lrint.S: Include <libm-alias-double.h>. (lrint): Define using libm_alias_double. * sysdeps/i386/fpu/s_nearbyint.S: Include <libm-alias-double.h>. (nearbyint): Define using libm_alias_double. * sysdeps/i386/fpu/s_remquo.S: Include <libm-alias-double.h>. (remquo): Define using libm_alias_double. * sysdeps/i386/fpu/s_rint.S: Include <libm-alias-double.h>. (rint): Define using libm_alias_double. * sysdeps/i386/fpu/s_trunc.S: Include <libm-alias-double.h>. (trunc): Define using libm_alias_double. * sysdeps/i386/i686/fpu/s_fmax.S: Include <libm-alias-double.h>. (fmax): Define using libm_alias_double. * sysdeps/i386/i686/fpu/s_fmin.S: Include <libm-alias-double.h>. (fmin): Define using libm_alias_double. * sysdeps/i386/i686/multiarch/s_fma.c: Include <libm-alias-double.h>. (fma): Define using libm_alias_double.
This commit is contained in:
parent
8d81ce0c6d
commit
bc4e8f9b49
47
ChangeLog
47
ChangeLog
@ -1,3 +1,50 @@
|
||||
2017-11-28 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/i386/fpu/s_asinh.S: Include <libm-alias-double.h>.
|
||||
(asinh): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_atan.S: Include <libm-alias-double.h>.
|
||||
(atan): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_cbrt.S: Include <libm-alias-double.h>.
|
||||
(cbrt): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_ceil.S: Include <libm-alias-double.h>.
|
||||
(ceil): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_copysign.S: Include <libm-alias-double.h>.
|
||||
(copysign): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_expm1.S: Include <libm-alias-double.h>.
|
||||
(expm1): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_fabs.S: Include <libm-alias-double.h>.
|
||||
(fabs): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_fdim.c: Include <libm-alias-double.h>.
|
||||
(fdim): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_floor.S: Include <libm-alias-double.h>.
|
||||
(floor): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_fmax.S: Include <libm-alias-double.h>.
|
||||
(fmax): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_fmin.S: Include <libm-alias-double.h>.
|
||||
(fmin): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_frexp.S: Include <libm-alias-double.h>.
|
||||
(frexp): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_llrint.S: Include <libm-alias-double.h>.
|
||||
(llrint): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_logb.S: Include <libm-alias-double.h>.
|
||||
(logb): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_lrint.S: Include <libm-alias-double.h>.
|
||||
(lrint): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_nearbyint.S: Include <libm-alias-double.h>.
|
||||
(nearbyint): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_remquo.S: Include <libm-alias-double.h>.
|
||||
(remquo): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_rint.S: Include <libm-alias-double.h>.
|
||||
(rint): Define using libm_alias_double.
|
||||
* sysdeps/i386/fpu/s_trunc.S: Include <libm-alias-double.h>.
|
||||
(trunc): Define using libm_alias_double.
|
||||
* sysdeps/i386/i686/fpu/s_fmax.S: Include <libm-alias-double.h>.
|
||||
(fmax): Define using libm_alias_double.
|
||||
* sysdeps/i386/i686/fpu/s_fmin.S: Include <libm-alias-double.h>.
|
||||
(fmin): Define using libm_alias_double.
|
||||
* sysdeps/i386/i686/multiarch/s_fma.c: Include <libm-alias-double.h>.
|
||||
(fma): Define using libm_alias_double.
|
||||
|
||||
2017-11-28 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
[BZ #22370]
|
||||
|
@ -18,6 +18,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.section .rodata
|
||||
|
||||
@ -136,4 +137,4 @@ ENTRY(__asinh)
|
||||
fchs
|
||||
4: ret
|
||||
END(__asinh)
|
||||
weak_alias (__asinh, asinh)
|
||||
libm_alias_double (__asinh, asinh)
|
||||
|
@ -5,6 +5,7 @@
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <i386-math-asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
RCSID("$NetBSD: s_atan.S,v 1.4 1995/05/08 23:50:41 jtc Exp $")
|
||||
|
||||
@ -27,4 +28,4 @@ ENTRY(__atan)
|
||||
DBL_CHECK_FORCE_UFLOW
|
||||
ret
|
||||
END (__atan)
|
||||
weak_alias (__atan, atan)
|
||||
libm_alias_double (__atan, atan)
|
||||
|
@ -19,6 +19,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.section .rodata
|
||||
|
||||
@ -197,4 +198,4 @@ ENTRY(__cbrt)
|
||||
1: fldl 4(%esp)
|
||||
ret
|
||||
END(__cbrt)
|
||||
weak_alias (__cbrt, cbrt)
|
||||
libm_alias_double (__cbrt, cbrt)
|
||||
|
@ -4,6 +4,7 @@
|
||||
*/
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
RCSID("$NetBSD: s_ceil.S,v 1.4 1995/05/08 23:52:13 jtc Exp $")
|
||||
|
||||
@ -31,4 +32,4 @@ ENTRY(__ceil)
|
||||
cfi_adjust_cfa_offset (-32)
|
||||
ret
|
||||
END (__ceil)
|
||||
weak_alias (__ceil, ceil)
|
||||
libm_alias_double (__ceil, ceil)
|
||||
|
@ -4,6 +4,7 @@
|
||||
*/
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
RCSID("$NetBSD: s_copysign.S,v 1.4 1995/05/08 23:53:02 jtc Exp $")
|
||||
|
||||
@ -17,4 +18,4 @@ ENTRY(__copysign)
|
||||
fldl 4(%esp)
|
||||
ret
|
||||
END (__copysign)
|
||||
weak_alias (__copysign, copysign)
|
||||
libm_alias_double (__copysign, copysign)
|
||||
|
@ -24,6 +24,7 @@
|
||||
#include <sysdep.h>
|
||||
#include <machine/asm.h>
|
||||
#include <i386-math-asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.section .rodata
|
||||
|
||||
@ -110,4 +111,4 @@ ENTRY(__expm1)
|
||||
fldl MO(minus1) // Set result to -1.0.
|
||||
3: ret
|
||||
END(__expm1)
|
||||
weak_alias (__expm1, expm1)
|
||||
libm_alias_double (__expm1, expm1)
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include <sysdep.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.text
|
||||
ENTRY(__fabs)
|
||||
@ -6,4 +7,4 @@ ENTRY(__fabs)
|
||||
fabs
|
||||
ret
|
||||
END(__fabs)
|
||||
weak_alias (__fabs, fabs)
|
||||
libm_alias_double (__fabs, fabs)
|
||||
|
@ -20,6 +20,7 @@
|
||||
#include <fpu_control.h>
|
||||
#include <math.h>
|
||||
#include <math_private.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
double
|
||||
__fdim (double x, double y)
|
||||
@ -43,8 +44,4 @@ __fdim (double x, double y)
|
||||
|
||||
return r;
|
||||
}
|
||||
weak_alias (__fdim, fdim)
|
||||
#ifdef NO_LONG_DOUBLE
|
||||
strong_alias (__fdim, __fdiml)
|
||||
weak_alias (__fdim, fdiml)
|
||||
#endif
|
||||
libm_alias_double (__fdim, fdim)
|
||||
|
@ -4,6 +4,7 @@
|
||||
*/
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
RCSID("$NetBSD: s_floor.S,v 1.4 1995/05/09 00:01:59 jtc Exp $")
|
||||
|
||||
@ -31,4 +32,4 @@ ENTRY(__floor)
|
||||
cfi_adjust_cfa_offset (-32)
|
||||
ret
|
||||
END (__floor)
|
||||
weak_alias (__floor, floor)
|
||||
libm_alias_double (__floor, floor)
|
||||
|
@ -18,6 +18,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <sysdep.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.text
|
||||
ENTRY(__fmax)
|
||||
@ -40,4 +41,4 @@ ENTRY(__fmax)
|
||||
|
||||
ret
|
||||
END(__fmax)
|
||||
weak_alias (__fmax, fmax)
|
||||
libm_alias_double (__fmax, fmax)
|
||||
|
@ -18,6 +18,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <sysdep.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.text
|
||||
ENTRY(__fmin)
|
||||
@ -40,4 +41,4 @@ ENTRY(__fmin)
|
||||
|
||||
ret
|
||||
END(__fmin)
|
||||
weak_alias (__fmin, fmin)
|
||||
libm_alias_double (__fmin, fmin)
|
||||
|
@ -18,6 +18,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.section .rodata
|
||||
|
||||
@ -80,4 +81,4 @@ ENTRY (__frexp)
|
||||
|
||||
ret
|
||||
END (__frexp)
|
||||
weak_alias (__frexp, frexp)
|
||||
libm_alias_double (__frexp, frexp)
|
||||
|
@ -19,6 +19,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <sysdep.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.text
|
||||
ENTRY(__llrint)
|
||||
@ -33,4 +34,4 @@ ENTRY(__llrint)
|
||||
cfi_adjust_cfa_offset (-4)
|
||||
ret
|
||||
END(__llrint)
|
||||
weak_alias (__llrint, llrint)
|
||||
libm_alias_double (__llrint, llrint)
|
||||
|
@ -4,6 +4,7 @@
|
||||
*/
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
RCSID("$NetBSD: s_logb.S,v 1.4 1995/05/09 00:14:30 jtc Exp $")
|
||||
|
||||
@ -13,4 +14,4 @@ ENTRY(__logb)
|
||||
fstp %st
|
||||
ret
|
||||
END (__logb)
|
||||
weak_alias (__logb, logb)
|
||||
libm_alias_double (__logb, logb)
|
||||
|
@ -19,6 +19,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <sysdep.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.text
|
||||
ENTRY(__lrint)
|
||||
@ -31,4 +32,4 @@ ENTRY(__lrint)
|
||||
cfi_adjust_cfa_offset (-4)
|
||||
ret
|
||||
END(__lrint)
|
||||
weak_alias (__lrint, lrint)
|
||||
libm_alias_double (__lrint, lrint)
|
||||
|
@ -5,6 +5,7 @@
|
||||
/* Adapted for use as nearbyint by Ulrich Drepper <drepper@cygnus.com>. */
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
ENTRY(__nearbyint)
|
||||
fldl 4(%esp)
|
||||
@ -17,4 +18,4 @@ ENTRY(__nearbyint)
|
||||
cfi_adjust_cfa_offset (-32)
|
||||
ret
|
||||
END (__nearbyint)
|
||||
weak_alias (__nearbyint, nearbyint)
|
||||
libm_alias_double (__nearbyint, nearbyint)
|
||||
|
@ -5,6 +5,7 @@
|
||||
*/
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
#define PARMS 4 /* no space for saved regs */
|
||||
#define DVDND PARMS
|
||||
@ -42,4 +43,4 @@ ENTRY (__remquo)
|
||||
|
||||
ret
|
||||
END (__remquo)
|
||||
weak_alias (__remquo, remquo)
|
||||
libm_alias_double (__remquo, remquo)
|
||||
|
@ -4,6 +4,7 @@
|
||||
*/
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
RCSID("$NetBSD: s_rint.S,v 1.4 1995/05/09 00:16:08 jtc Exp $")
|
||||
|
||||
@ -12,4 +13,4 @@ ENTRY(__rint)
|
||||
frndint
|
||||
ret
|
||||
END (__rint)
|
||||
weak_alias (__rint, rint)
|
||||
libm_alias_double (__rint, rint)
|
||||
|
@ -18,6 +18,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <machine/asm.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
ENTRY(__trunc)
|
||||
fldl 4(%esp)
|
||||
@ -34,4 +35,4 @@ ENTRY(__trunc)
|
||||
cfi_adjust_cfa_offset (-32)
|
||||
ret
|
||||
END(__trunc)
|
||||
weak_alias (__trunc, trunc)
|
||||
libm_alias_double (__trunc, trunc)
|
||||
|
@ -18,6 +18,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <sysdep.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.text
|
||||
ENTRY(__fmax)
|
||||
@ -36,4 +37,4 @@ ENTRY(__fmax)
|
||||
|
||||
ret
|
||||
END(__fmax)
|
||||
weak_alias (__fmax, fmax)
|
||||
libm_alias_double (__fmax, fmax)
|
||||
|
@ -18,6 +18,7 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <sysdep.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
.text
|
||||
ENTRY(__fmin)
|
||||
@ -34,4 +35,4 @@ ENTRY(__fmin)
|
||||
|
||||
ret
|
||||
END(__fmin)
|
||||
weak_alias (__fmin, fmin)
|
||||
libm_alias_double (__fmin, fmin)
|
||||
|
@ -21,13 +21,14 @@
|
||||
|
||||
#include <math.h>
|
||||
#include <init-arch.h>
|
||||
#include <libm-alias-double.h>
|
||||
|
||||
extern double __fma_ia32 (double x, double y, double z) attribute_hidden;
|
||||
extern double __fma_fma (double x, double y, double z) attribute_hidden;
|
||||
|
||||
libm_ifunc (__fma,
|
||||
HAS_ARCH_FEATURE (FMA_Usable) ? __fma_fma : __fma_ia32);
|
||||
weak_alias (__fma, fma)
|
||||
libm_alias_double (__fma, fma)
|
||||
|
||||
#define __fma __fma_ia32
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user