From 5cd94e67d026fb402f127481abd28a8806098ff3 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Thu, 1 Dec 2016 15:53:16 -0200 Subject: powerpc: Remove stpcpy internal clash with IFUNC 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 | 5 +++++ sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 05963ac3dc..4943748c4a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2016-12-01 Adhemerval Zanella + + * sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c (weak_alias): + Remove redirection to __strrchr_ppc. + 2016-12-01 Rajalakshmi Srinivasaraghavan * sysdeps/powerpc/powerpc64/multiarch/Makefile diff --git a/sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c index 151bd35ea6..937c5eadf2 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strrchr-ppc64.c @@ -18,10 +18,10 @@ #include #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) \ -- cgit v1.2.1