Make drem an alias of remainder (bug 16171).
commit5ce8f125063cfd8660710a80243cb705e66f0626
authorJoseph Myers <joseph@codesourcery.com>
Thu, 29 Oct 2015 22:29:21 +0000 (29 22:29 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Thu, 29 Oct 2015 22:29:21 +0000 (29 22:29 +0000)
tree84bc49dcfb91eea8279fa1243f0b24e6a41d2a18
parent91bcb95ad4454ea878e7a2eac5c4a0eeb6fb4de6
Make drem an alias of remainder (bug 16171).

The libm drem functions just call the corresponding __remainder
functions.  This patch removes the unnecessary wrappers by making them
into weak aliases at the ELF level.

Tested for x86_64, x86, mips64 and powerpc.

[BZ #16171]
* math/w_remainder.c (drem): Define as weak alias of __remainder.
[NO_LONG_DOUBLE] (dreml): Define as weak alias of __remainder.
* math/w_remainderf.c (dremf): Define as weak alias of
__remainderf.
* math/w_remainderl.c (dreml): Define as weak alias of
__remainderl.
* sysdeps/ia64/fpu/e_remainder.S (drem): Define as weak alias of
__remainder.
* sysdeps/ia64/fpu/e_remainderf.S (dremf): Define as weak alias of
__remainderf.
* sysdeps/ia64/fpu/e_remainderl.S (dreml): Define as weak alias of
__remainderl.
* sysdeps/ieee754/ldbl-opt/nldbl-remainder.c (dreml): Define as
weak alias of remainderl.
* sysdeps/ieee754/ldbl-opt/w_remainder.c
[LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)] (__drem): Define as strong
alias of __remainder.
[LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)] (dreml): Use compat_symbol.
* sysdeps/ieee754/ldbl-opt/w_remainderl.c (__dreml): Define as
strong alias of __remainderl.
(dreml): Use long_double_symbol.
* math/Makefile (libm-calls): Remove w_drem.
* sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Remove drem.
(CFLAGS-nldbl-drem.c): Remove variable.
(CFLAGS-nldbl-remainder.c): Add -fno-builtin-dreml.
* math/w_drem.c: Remove file.
* math/w_dremf.c: Likewise.
* math/w_dreml.c: Likewise.
* sysdeps/ieee754/ldbl-opt/nldbl-drem.c: Likewise.
* sysdeps/ieee754/ldbl-opt/w_drem.c: Likewise.
* sysdeps/ieee754/ldbl-opt/w_dreml.c: Likewise.
19 files changed:
ChangeLog
NEWS
math/Makefile
math/w_drem.c [deleted file]
math/w_dremf.c [deleted file]
math/w_dreml.c [deleted file]
math/w_remainder.c
math/w_remainderf.c
math/w_remainderl.c
sysdeps/ia64/fpu/e_remainder.S
sysdeps/ia64/fpu/e_remainderf.S
sysdeps/ia64/fpu/e_remainderl.S
sysdeps/ieee754/ldbl-opt/Makefile
sysdeps/ieee754/ldbl-opt/nldbl-drem.c [deleted file]
sysdeps/ieee754/ldbl-opt/nldbl-remainder.c
sysdeps/ieee754/ldbl-opt/w_drem.c [deleted file]
sysdeps/ieee754/ldbl-opt/w_dreml.c [deleted file]
sysdeps/ieee754/ldbl-opt/w_remainder.c
sysdeps/ieee754/ldbl-opt/w_remainderl.c