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.27.9000-450-ge826574
- From: fw at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 12 Jun 2018 13:01:00 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.27.9000-450-ge826574
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 e826574c985a15a500262f2fbd21c7e9259d3d11 (commit)
from c4ad5782c44f4fa23d3ca9bec1e288c24cf2e6df (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=e826574c985a15a500262f2fbd21c7e9259d3d11
commit e826574c985a15a500262f2fbd21c7e9259d3d11
Author: Florian Weimer <fweimer@redhat.com>
Date: Tue Jun 12 15:00:33 2018 +0200
x86: Make strncmp usable from rtld
Due to the way the conditions were written, the rtld build of strncmp
ended up with no definition of the strncmp symbol at all: The
implementations were renamed for use within an IFUNC resolver, but the
IFUNC resolver itself was missing (because rtld does not use IFUNCs).
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
diff --git a/ChangeLog b/ChangeLog
index c5dc3be..c1b9cdf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2018-06-12 Florian Weimer <fweimer@redhat.com>
+
+ x86: Make strncmp usable from rtld.
+ * sysdeps/i386/i686/multiarch/strncmp-c.c: Only rename strncmp to
+ __strncmp_ia32 if in libc (and not in rtld).
+ * sysdeps/x86_64/multiarch/strncmp-sse2.S: Rename strcmp to
+ strncmp if not in libc (and not to __strncmp_sse2).
+
2018-06-12 Rafal Luzynski <digitalfreak@lingonborough.com>
[BZ #23140]
diff --git a/sysdeps/i386/i686/multiarch/strncmp-c.c b/sysdeps/i386/i686/multiarch/strncmp-c.c
index cc059da..2e3eca9 100644
--- a/sysdeps/i386/i686/multiarch/strncmp-c.c
+++ b/sysdeps/i386/i686/multiarch/strncmp-c.c
@@ -1,4 +1,4 @@
-#ifdef SHARED
+#if defined (SHARED) && IS_IN (libc)
# define STRNCMP __strncmp_ia32
# undef libc_hidden_builtin_def
# define libc_hidden_builtin_def(name) \
diff --git a/sysdeps/x86_64/multiarch/strncmp-sse2.S b/sysdeps/x86_64/multiarch/strncmp-sse2.S
index cc5252d..a5ecb82 100644
--- a/sysdeps/x86_64/multiarch/strncmp-sse2.S
+++ b/sysdeps/x86_64/multiarch/strncmp-sse2.S
@@ -18,10 +18,13 @@
#include <sysdep.h>
-#define STRCMP __strncmp_sse2
-
-#undef libc_hidden_builtin_def
-#define libc_hidden_builtin_def(strcmp)
+#if IS_IN (libc)
+# define STRCMP __strncmp_sse2
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(strcmp)
+#else
+# define STRCMP strncmp
+#endif
#define USE_AS_STRNCMP
#include <sysdeps/x86_64/strcmp.S>
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 8 ++++++++
sysdeps/i386/i686/multiarch/strncmp-c.c | 2 +-
sysdeps/x86_64/multiarch/strncmp-sse2.S | 11 +++++++----
3 files changed, 16 insertions(+), 5 deletions(-)
hooks/post-receive
--
GNU C Library master sources