about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-10-13 16:36:45 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-10-13 16:36:45 +0000
commit7d25d410c23933efa6378c98b0b314f458a48b8e (patch)
tree6431b1c1f437e821cdc0ecaacda39bcd75855df8
parent077ee129781ad7c003184f6c00cb61744a727157 (diff)
downloadglibc-7d25d410c23933efa6378c98b0b314f458a48b8e.tar.gz
glibc-7d25d410c23933efa6378c98b0b314f458a48b8e.tar.xz
glibc-7d25d410c23933efa6378c98b0b314f458a48b8e.zip
Fix ldbl-opt/s_clog10l.c libm_alias_ldouble_other usage.
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.
-rw-r--r--ChangeLog8
-rw-r--r--sysdeps/ieee754/ldbl-opt/s_clog10l.c6
2 files changed, 11 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 58f09a092c..ab5ada8a93 100644
--- 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.
diff --git a/sysdeps/ieee754/ldbl-opt/s_clog10l.c b/sysdeps/ieee754/ldbl-opt/s_clog10l.c
index d557e96bc3..1ff1161160 100644
--- a/sysdeps/ieee754/ldbl-opt/s_clog10l.c
+++ b/sysdeps/ieee754/ldbl-opt/s_clog10l.c
@@ -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)