This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.26-551-g0ff64d3
- From: jsm28 at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 11 Oct 2017 02:52:00 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.26-551-g0ff64d3
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 0ff64d3a18fc5111c54ffd3238231754dfd506dc (commit)
from 541f19baf89e16304cdc5c3c8826896d3d2a7034 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=0ff64d3a18fc5111c54ffd3238231754dfd506dc
commit 0ff64d3a18fc5111c54ffd3238231754dfd506dc
Author: Joseph Myers <joseph@codesourcery.com>
Date: Wed Oct 11 02:51:39 2017 +0000
Use generic alias macros in ldbl-opt.
This patch fixes ldbl-opt code to use generic libm alias macros in
preparation for getting _FloatN / _FloatNx aliases where appropriate.
Four functions are affected, that undefine and redefine alias macros
before including the implementations they wrap in such a way that
_FloatN / _FloatNx aliases would not appear. s_clog10l.c undefines
and redefined declare_mgen_alias, so just needs a
libm_alias_ldouble_other call added. w_exp10l_compat.c undefines and
redefines weak_alias, but in fact does not need to do so, since
math/w_exp10l_compat.c uses libm_alias_ldouble and does not use
weak_alias other than through that, so the undefines and redefines of
weak_alias are removed. w_lgamma_compatl.c and w_remainderl_compat.c
are made to use libm_alias_ldouble_other in conjunction with restoring
the original definition of weak_alias so this is effective.
Tested with build-many-glibcs.py. Installed stripped shared libraries
are unchanged by this patch.
* sysdeps/ieee754/ldbl-opt/s_clog10l.c: Use
libm_alias_ldouble_other.
* sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c (weak_alias): Do not
undefine and redefine.
[LIBM_SVID_COMPAT && !LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)]
(exp10l): Do not define here.
* sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c [BUILD_LGAMMA]
(weak_alias): Undefine and redefine.
[BUILD_LGAMMA]: Use libm_alias_ldouble_other.
* sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c
[LIBM_SVID_COMPAT] (weak_alias): Undefine and redefine here.
[LIBM_SVID_COMPAT]: Use libm_alias_ldouble_other.
diff --git a/ChangeLog b/ChangeLog
index 870d29d..f8914f3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,18 @@
2017-10-11 Joseph Myers <joseph@codesourcery.com>
+ * sysdeps/ieee754/ldbl-opt/s_clog10l.c: Use
+ libm_alias_ldouble_other.
+ * sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c (weak_alias): Do not
+ undefine and redefine.
+ [LIBM_SVID_COMPAT && !LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)]
+ (exp10l): Do not define here.
+ * sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c [BUILD_LGAMMA]
+ (weak_alias): Undefine and redefine.
+ [BUILD_LGAMMA]: Use libm_alias_ldouble_other.
+ * sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c
+ [LIBM_SVID_COMPAT] (weak_alias): Undefine and redefine here.
+ [LIBM_SVID_COMPAT]: Use libm_alias_ldouble_other.
+
* soft-fp/fmadf4.c: Include <libm-alias-double.h>.
[!__fma] (fma): Define using libm_alias_double.
* soft-fp/fmasf4.c: Include <libm-alias-float.h>.
diff --git a/sysdeps/ieee754/ldbl-opt/s_clog10l.c b/sysdeps/ieee754/ldbl-opt/s_clog10l.c
index 15dc3ed..d557e96 100644
--- a/sysdeps/ieee754/ldbl-opt/s_clog10l.c
+++ b/sysdeps/ieee754/ldbl-opt/s_clog10l.c
@@ -29,3 +29,4 @@
strong_alias (__clog10l_internal, __clog10l__internal)
long_double_symbol (libm, __clog10l_internal, __clog10l);
long_double_symbol (libm, __clog10l__internal, clog10l);
+libm_alias_ldouble_other (__clog10, clog10)
diff --git a/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c b/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c
index dd5915e..4822211 100644
--- a/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c
+++ b/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c
@@ -1,18 +1,8 @@
#include <math_ldbl_opt.h>
-#undef weak_alias
-#define weak_alias(n,a)
#undef compat_symbol
#define compat_symbol(l,n,a,v)
#include <math/w_exp10l_compat.c>
#if LIBM_SVID_COMPAT
-# if !LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)
-/* If ldbl-opt is used without special versioning for exp10l being
- required, the generic code does not define exp10l because of the
- undefine and redefine of weak_alias above. */
-# undef weak_alias
-# define weak_alias(name, aliasname) _weak_alias (name, aliasname)
-weak_alias (__exp10l, exp10l)
-# endif
# if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_27)
/* compat_symbol was undefined and redefined above to avoid the
default pow10l compat symbol at version GLIBC_2_1 (as for ldbl-opt
diff --git a/sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c b/sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c
index f60b3d7..003a253 100644
--- a/sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c
+++ b/sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c
@@ -9,3 +9,8 @@
#if GAMMA_ALIAS
long_double_symbol (libm, __gammal, gammal);
#endif
+#if BUILD_LGAMMA
+# undef weak_alias
+# define weak_alias(name, aliasname) _weak_alias (name, aliasname)
+libm_alias_ldouble_other (__lgamma, lgamma)
+#endif
diff --git a/sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c b/sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c
index bb9bac0..2579600 100644
--- a/sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c
+++ b/sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c
@@ -3,14 +3,17 @@
#define weak_alias(n,a)
#include <math/w_remainderl_compat.c>
#if LIBM_SVID_COMPAT
-# if !LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)
/* If ldbl-opt is used without special versioning for remainderl being
required, the generic code does not define remainderl because of
- the undefine and redefine of weak_alias above. */
-# undef weak_alias
-# define weak_alias(name, aliasname) _weak_alias (name, aliasname)
+ the undefine and redefine of weak_alias above. In any case, that
+ undefine and redefine mean _FloatN / _FloatNx aliases have not been
+ defined. */
+# undef weak_alias
+# define weak_alias(name, aliasname) _weak_alias (name, aliasname)
+# if !LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)
weak_alias (__remainderl, remainderl)
# endif
strong_alias (__remainderl, __dreml)
long_double_symbol (libm, __dreml, dreml);
+libm_alias_ldouble_other (__remainder, remainder)
#endif
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 13 +++++++++++++
sysdeps/ieee754/ldbl-opt/s_clog10l.c | 1 +
sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c | 10 ----------
sysdeps/ieee754/ldbl-opt/w_lgamma_compatl.c | 5 +++++
sysdeps/ieee754/ldbl-opt/w_remainderl_compat.c | 11 +++++++----
5 files changed, 26 insertions(+), 14 deletions(-)
hooks/post-receive
--
GNU C Library master sources