diff options
author | Joseph Myers <joseph@codesourcery.com> | 2015-10-29 22:29:21 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2015-10-29 22:29:21 +0000 |
commit | 5ce8f125063cfd8660710a80243cb705e66f0626 (patch) | |
tree | 84bc49dcfb91eea8279fa1243f0b24e6a41d2a18 /sysdeps/ia64/fpu | |
parent | 91bcb95ad4454ea878e7a2eac5c4a0eeb6fb4de6 (diff) | |
download | glibc-5ce8f125063cfd8660710a80243cb705e66f0626.tar.gz glibc-5ce8f125063cfd8660710a80243cb705e66f0626.tar.xz glibc-5ce8f125063cfd8660710a80243cb705e66f0626.zip |
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.
Diffstat (limited to 'sysdeps/ia64/fpu')
-rw-r--r-- | sysdeps/ia64/fpu/e_remainder.S | 1 | ||||
-rw-r--r-- | sysdeps/ia64/fpu/e_remainderf.S | 1 | ||||
-rw-r--r-- | sysdeps/ia64/fpu/e_remainderl.S | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/sysdeps/ia64/fpu/e_remainder.S b/sysdeps/ia64/fpu/e_remainder.S index 3e065171b3..3cd5aac578 100644 --- a/sysdeps/ia64/fpu/e_remainder.S +++ b/sysdeps/ia64/fpu/e_remainder.S @@ -529,6 +529,7 @@ EXP_ERROR_RETURN: } GLOBAL_IEEE754_END(remainder) +weak_alias (__remainder, drem) diff --git a/sysdeps/ia64/fpu/e_remainderf.S b/sysdeps/ia64/fpu/e_remainderf.S index 2d7385d568..df4cfdddc8 100644 --- a/sysdeps/ia64/fpu/e_remainderf.S +++ b/sysdeps/ia64/fpu/e_remainderf.S @@ -548,6 +548,7 @@ EXP_ERROR_RETURN: } GLOBAL_IEEE754_END(remainderf) +weak_alias (__remainderf, dremf) diff --git a/sysdeps/ia64/fpu/e_remainderl.S b/sysdeps/ia64/fpu/e_remainderl.S index 30658e5487..d9a9ee8d29 100644 --- a/sysdeps/ia64/fpu/e_remainderl.S +++ b/sysdeps/ia64/fpu/e_remainderl.S @@ -557,6 +557,7 @@ EXP_ERROR_RETURN: } GLOBAL_IEEE754_END(remainderl) +weak_alias (__remainderl, dreml) LOCAL_LIBM_ENTRY(__libm_error_region) .prologue |