From 7d25d410c23933efa6378c98b0b314f458a48b8e Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 13 Oct 2017 16:36:45 +0000 Subject: [PATCH] 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. --- ChangeLog | 8 ++++++++ sysdeps/ieee754/ldbl-opt/s_clog10l.c | 6 +++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 58f09a092c5..ab5ada8a93a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2017-10-13 Joseph Myers + + * 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 * 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 d557e96bc37..1ff11611605 100644 --- a/sysdeps/ieee754/ldbl-opt/s_clog10l.c +++ b/sysdeps/ieee754/ldbl-opt/s_clog10l.c @@ -26,7 +26,7 @@ #include /* __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) -- 2.47.2