mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-15 01:21:06 +00:00
7d25d410c2
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.
33 lines
1.3 KiB
C
33 lines
1.3 KiB
C
/* clog10l alias overrides for platforms where long double
|
|
was previously not unique.
|
|
Copyright (C) 2016-2017 Free Software Foundation, Inc.
|
|
This file is part of the GNU C Library.
|
|
|
|
The GNU C Library is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU Lesser General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2.1 of the License, or (at your option) any later version.
|
|
|
|
The GNU C Library is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Lesser General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Lesser General Public
|
|
License along with the GNU C Library; if not, see
|
|
<http://www.gnu.org/licenses/>. */
|
|
|
|
#define M_DECL_FUNC(x) __clog10l_internal
|
|
#include <math-type-macros-ldouble.h>
|
|
|
|
#undef declare_mgen_alias
|
|
#define declare_mgen_alias(from, to)
|
|
|
|
#include <s_clog10_template.c>
|
|
|
|
/* __clog10l is also a public symbol. */
|
|
strong_alias (__clog10l_internal, __clog10_internal_l)
|
|
long_double_symbol (libm, __clog10l_internal, __clog10l);
|
|
long_double_symbol (libm, __clog10_internal_l, clog10l);
|
|
libm_alias_ldouble_other (__clog10_internal_, clog10)
|