]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
powerpc: Remove stpcpy internal clash with IFUNC
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Thu, 1 Dec 2016 17:53:16 +0000 (15:53 -0200)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Thu, 1 Dec 2016 17:53:16 +0000 (15:53 -0200)
Commit c7debbdfacb redirected the internal strrch to default powerpc64
implementation by redefining the weak_alias at
sysdeps/powerpc/powerpc64/multiarch/strchr-ppc64.c:

  #undef weak_alias
  #define weak_alias(name, aliasname) \
    extern __typeof (__strrchr_ppc) aliasname \
      __attribute__ ((weak, alias ("__strrchr_ppc")));

This creates a __GI_strchr alias that clashes with the IFUNC symbol in
stprchr.os.  There is not need to define the default version for internal
version, since ifunc should work internally for powerpc64.  This patch
removes the weak_alias indirection.

Checked on powerpc64le.

* sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c (weak_alias):
Remove redirection to __strrchr_ppc.

ChangeLog
sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c

index 05963ac3dc39e821fab063a4462016c8b7eb6ae7..4943748c4a691a0ad50abaac94e42b700ba315fc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2016-12-01  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       * sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c (weak_alias):
+       Remove redirection to __strrchr_ppc.
+
 2016-12-01  Rajalakshmi Srinivasaraghavan  <raji@linux.vnet.ibm.com>
 
        * sysdeps/powerpc/powerpc64/multiarch/Makefile
index 151bd35ea68ebeeca9de2309e0f8a5fb628dcdf4..937c5eadf2b02a773e3837c433c8d869d0c323a0 100644 (file)
 #include <string.h>
 
 #define STRRCHR __strrchr_ppc
+
 #undef weak_alias
-#define weak_alias(name, aliasname) \
-  extern __typeof (__strrchr_ppc) aliasname \
-    __attribute__ ((weak, alias ("__strrchr_ppc")));
+#define weak_alias(name, aliasname)
+
 #if IS_IN (libc) && defined(SHARED)
 # undef libc_hidden_builtin_def
 # define libc_hidden_builtin_def(name) \