]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Fix ldbl-opt/s_clog10l.c libm_alias_ldouble_other usage.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 13 Oct 2017 16:36:45 +0000 (16:36 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 13 Oct 2017 16:36:45 +0000 (16:36 +0000)
Testing with changes to enable _Float128 function aliases shows that
the libm_alias_ldouble_other usage in ldbl-opt/s_clog10l.c does not in
fact work, because __clog10l is defined with long_double_symbol rather
than as a normal C alias.  This patch fixes this by renaming the
__clog10l__internal alias (not strictly necessary, but avoids a hack
with "__clog10l_interna" / "__clog10l__interna" as first argument to
libm_alias_ldouble_other) and using the renamed alias when calling
libm_alias_ldouble_other.

Tested with build-many-glibcs.py that installed stripped shared
libraries are unchanges by the patch.  Also tested in conjunction with
patches to enable _Float128 function aliases.

* sysdeps/ieee754/ldbl-opt/s_clog10l.c (__clog10l__internal):
Rename to __clog10_internal_l.
(__clog10_internal_l): Define aliases using
libm_alias_ldouble_other instead of using libm_alias_ldouble_other
with __clog10.

ChangeLog
sysdeps/ieee754/ldbl-opt/s_clog10l.c

index 58f09a092c5721cdbf5524b73b6e8ff5a422ac6d..ab5ada8a93ac21923be0c3b993c1a4e75c1a64ce 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2017-10-13  Joseph Myers  <joseph@codesourcery.com>
+
+       * sysdeps/ieee754/ldbl-opt/s_clog10l.c (__clog10l__internal):
+       Rename to __clog10_internal_l.
+       (__clog10_internal_l): Define aliases using
+       libm_alias_ldouble_other instead of using libm_alias_ldouble_other
+       with __clog10.
+
 2017-10-13  Rajalakshmi Srinivasaraghavan  <raji@linux.vnet.ibm.com>
 
        * benchtests/Makefile (bench-math):  Add sinf, cosf and sincosf.
index d557e96bc37e47fb3651b8d331808f2e864b4c60..1ff1161160562fb1c569df1efbd93e2ed9fbec20 100644 (file)
@@ -26,7 +26,7 @@
 #include <s_clog10_template.c>
 
 /* __clog10l is also a public symbol.  */
-strong_alias (__clog10l_internal, __clog10l__internal)
+strong_alias (__clog10l_internal, __clog10_internal_l)
 long_double_symbol (libm, __clog10l_internal, __clog10l);
-long_double_symbol (libm, __clog10l__internal, clog10l);
-libm_alias_ldouble_other (__clog10, clog10)
+long_double_symbol (libm, __clog10_internal_l, clog10l);
+libm_alias_ldouble_other (__clog10_internal_, clog10)