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.24-372-g001f81a
- From: fw at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 15 Nov 2016 14:51:38 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.24-372-g001f81a
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 001f81ad1e792dddd75aa8a6f9d1d9b0ba8dc16e (commit)
from 0c95f51d84e8563b9e08d481b1a2b430a7ccbd0b (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=001f81ad1e792dddd75aa8a6f9d1d9b0ba8dc16e
commit 001f81ad1e792dddd75aa8a6f9d1d9b0ba8dc16e
Author: Florian Weimer <fweimer@redhat.com>
Date: Tue Nov 15 15:51:01 2016 +0100
s390x: Add hidden definition for __sigsetjmp
diff --git a/ChangeLog b/ChangeLog
index 740d796..e88b760 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2016-11-15 Florian Weimer <fweimer@redhat.com>
+
+ * sysdeps/s390/s390-64/setjmp.S (NEED_COMPAT_SYMBOLS): New macro.
+ (libc_hidden_def): Remove redefinition.
+ (__sigsetjmp): Add hidden definition.
+ * sysdeps/s390/s390-32/setjmp.S (NEED_COMPAT_SYMBOLS): New macro.
+ (libc_hidden_def): Remove redefinition.
+ (__sigsetjmp): Add hidden definition.
+
2016-11-14 Joseph Myers <joseph@codesourcery.com>
* scripts/build-many-glibcs.py (os.path): Do not import.
diff --git a/sysdeps/s390/s390-32/setjmp.S b/sysdeps/s390/s390-32/setjmp.S
index dbacb0f..9ed479b 100644
--- a/sysdeps/s390/s390-32/setjmp.S
+++ b/sysdeps/s390/s390-32/setjmp.S
@@ -24,17 +24,16 @@
#include <shlib-compat.h>
#include <stap-probe.h>
-#if !IS_IN (rtld)
-# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20)
- /* we need a unique name in case of symbol versioning. */
-# define setjmp __v1setjmp
-# define _setjmp __v1_setjmp
-# define __sigsetjmp __v1__sigsetjmp
-
-# undef libc_hidden_def
-# define libc_hidden_def(name) strong_alias(_setjmp, __GI__setjmp)
-# endif /* if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20) */
-#endif /* !IS_IN (rtld) */
+#if !IS_IN (rtld) && defined SHARED \
+ && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20)
+# define NEED_COMPAT_SYMBOLS 1
+/* We need a unique name in case of symbol versioning. */
+# define setjmp __v1setjmp
+# define _setjmp __v1_setjmp
+# define __sigsetjmp __v1__sigsetjmp
+#else
+# define NEED_COMPAT_SYMBOLS 0
+#endif
/* We include the BSD entry points here as well. */
ENTRY (setjmp)
@@ -47,7 +46,11 @@ ENTRY(_setjmp)
lhi %r3,0 /* second argument of zero */
j .Linternal_sigsetjmp /* branch relativ to __sigsetjmp */
END (_setjmp)
+#if NEED_COMPAT_SYMBOLS
+strong_alias (_setjmp, __GI__setjmp)
+#else
libc_hidden_def (_setjmp)
+#endif
ENTRY(__setjmp)
lhi %r3,0 /* second argument of zero */
@@ -92,15 +95,19 @@ ENTRY(__sigsetjmp)
.L1: .long __sigjmp_save
#endif
END (__sigsetjmp)
+#if NEED_COMPAT_SYMBOLS
+strong_alias (__sigsetjmp, __GI___sigsetjmp)
+#else
+libc_hidden_def (__sigsetjmp)
+#endif
-#if !IS_IN (rtld)
-# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20)
+#if NEED_COMPAT_SYMBOLS
/* In glibc release 2.19 new versions of setjmp-functions were introduced,
but were reverted before 2.20. Thus both versions are the same function. */
-# undef setjmp
-# undef _setjmp
-# undef __sigsetjmp
+# undef setjmp
+# undef _setjmp
+# undef __sigsetjmp
strong_alias (__v1setjmp, __v2setjmp);
versioned_symbol (libc, __v1setjmp, setjmp, GLIBC_2_0);
@@ -113,5 +120,4 @@ compat_symbol (libc, __v2_setjmp, _setjmp, GLIBC_2_19);
strong_alias (__v1__sigsetjmp, __v2__sigsetjmp);
versioned_symbol (libc, __v1__sigsetjmp, __sigsetjmp, GLIBC_2_0);
compat_symbol (libc, __v2__sigsetjmp, __sigsetjmp, GLIBC_2_19);
-# endif /* if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20) */
-#endif /* if !IS_IN (rtld) */
+#endif /* NEED_COMPAT_SYMBOLS */
diff --git a/sysdeps/s390/s390-64/setjmp.S b/sysdeps/s390/s390-64/setjmp.S
index bbcb70d..63dd142 100644
--- a/sysdeps/s390/s390-64/setjmp.S
+++ b/sysdeps/s390/s390-64/setjmp.S
@@ -24,17 +24,16 @@
#include <shlib-compat.h>
#include <stap-probe.h>
-#if !IS_IN (rtld)
-# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20)
- /* we need a unique name in case of symbol versioning. */
-# define setjmp __v1setjmp
-# define _setjmp __v1_setjmp
-# define __sigsetjmp __v1__sigsetjmp
-
-# undef libc_hidden_def
-# define libc_hidden_def(name) strong_alias(_setjmp, __GI__setjmp)
-# endif /* if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20) */
-#endif /* !IS_IN (rtld) */
+#if !IS_IN (rtld) && defined SHARED \
+ && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20)
+# define NEED_COMPAT_SYMBOLS 1
+/* We need a unique name in case of symbol versioning. */
+# define setjmp __v1setjmp
+# define _setjmp __v1_setjmp
+# define __sigsetjmp __v1__sigsetjmp
+#else
+# define NEED_COMPAT_SYMBOLS 0
+#endif
/* We include the BSD entry points here as well. */
ENTRY (setjmp)
@@ -47,7 +46,11 @@ ENTRY(_setjmp)
slgr %r3,%r3 /* Second argument of zero. */
j .Linternal_sigsetjmp /* Branch relativ to __sigsetjmp. */
END (_setjmp)
+#if NEED_COMPAT_SYMBOLS
+strong_alias (_setjmp, __GI__setjmp)
+#else
libc_hidden_def (_setjmp)
+#endif
ENTRY(__setjmp)
slgr %r3,%r3 /* Second argument of zero. */
@@ -87,15 +90,19 @@ ENTRY(__sigsetjmp)
jg __sigjmp_save
#endif
END (__sigsetjmp)
+#if NEED_COMPAT_SYMBOLS
+strong_alias (__sigsetjmp, __GI___sigsetjmp)
+#else
+libc_hidden_def (__sigsetjmp)
+#endif
-#if !IS_IN (rtld)
-# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20)
+#if NEED_COMPAT_SYMBOLS
/* In glibc release 2.19 new versions of setjmp-functions were introduced,
but were reverted before 2.20. Thus both versions are the same function. */
-# undef setjmp
-# undef _setjmp
-# undef __sigsetjmp
+# undef setjmp
+# undef _setjmp
+# undef __sigsetjmp
strong_alias (__v1setjmp, __v2setjmp);
versioned_symbol (libc, __v1setjmp, setjmp, GLIBC_2_0);
@@ -108,5 +115,4 @@ compat_symbol (libc, __v2_setjmp, _setjmp, GLIBC_2_19);
strong_alias (__v1__sigsetjmp, __v2__sigsetjmp);
versioned_symbol (libc, __v1__sigsetjmp, __sigsetjmp, GLIBC_2_0);
compat_symbol (libc, __v2__sigsetjmp, __sigsetjmp, GLIBC_2_19);
-# endif /* if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_19, GLIBC_2_20) */
-#endif /* if !IS_IN (rtld) */
+#endif /* NEED_COMPAT_SYMBOLS */
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 9 ++++++++
sysdeps/s390/s390-32/setjmp.S | 42 +++++++++++++++++++++++-----------------
sysdeps/s390/s390-64/setjmp.S | 42 +++++++++++++++++++++++-----------------
3 files changed, 57 insertions(+), 36 deletions(-)
hooks/post-receive
--
GNU C Library master sources