about summary refs log tree commit diff
path: root/sysdeps/powerpc
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/powerpc')
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c9
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c24
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcscpy.c25
3 files changed, 29 insertions, 29 deletions
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c
index 52b692b47b..31e0d81ef0 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c
@@ -17,10 +17,11 @@
 
 #include <wchar.h>
 
-#if IS_IN (libc)
-# define WCSCPY  __wcscpy_ppc
-#endif
-
 extern __typeof (wcscpy) __wcscpy_ppc;
 
+#define WCSCPY  __wcscpy_ppc
 #include <wcsmbs/wcscpy.c>
+
+#ifdef SHARED
+__hidden_ver1 (__wcscpy_ppc, __GI___wcscpy, __wcscpy_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c
index ecca37d5d6..e87984669e 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c
@@ -17,20 +17,20 @@
    <http://www.gnu.org/licenses/>.  */
 
 #if IS_IN (libc)
+# define wcscpy __redirect_wcscpy
 # include <wchar.h>
-# include <shlib-compat.h>
+# undef wcscpy
 # include "init-arch.h"
 
-extern __typeof (wcscpy) __wcscpy_ppc attribute_hidden;
-extern __typeof (wcscpy) __wcscpy_power6 attribute_hidden;
-extern __typeof (wcscpy) __wcscpy_power7 attribute_hidden;
+extern __typeof (__redirect_wcscpy) __wcscpy_ppc attribute_hidden;
+extern __typeof (__redirect_wcscpy) __wcscpy_power6 attribute_hidden;
+extern __typeof (__redirect_wcscpy) __wcscpy_power7 attribute_hidden;
 
-libc_ifunc (wcscpy,
-	     (hwcap & PPC_FEATURE_HAS_VSX)
-             ? __wcscpy_power7 :
-	       (hwcap & PPC_FEATURE_ARCH_2_05)
-	       ? __wcscpy_power6
-             : __wcscpy_ppc);
-#else
-#include <wcsmbs/wcscpy.c>
+libc_ifunc_redirected (__redirect_wcscpy, wcscpy,
+		       (hwcap & PPC_FEATURE_HAS_VSX)
+		       ? __wcscpy_power7 :
+			 (hwcap & PPC_FEATURE_ARCH_2_05)
+			 ? __wcscpy_power6
+		       : __wcscpy_ppc);
+weak_alias (wcscpy, __wcscpy)
 #endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c b/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c
index 3cea9a489d..3f918b27c6 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c
@@ -16,21 +16,20 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#if IS_IN (libc)
-# include <wchar.h>
-# include <shlib-compat.h>
-# include "init-arch.h"
+#define __wcscpy __redirect___wcscpy
+#include <wchar.h>
+#undef __wcscpy
+#include <shlib-compat.h>
+#include "init-arch.h"
 
 extern __typeof (wcscpy) __wcscpy_ppc attribute_hidden;
 extern __typeof (wcscpy) __wcscpy_power6 attribute_hidden;
 extern __typeof (wcscpy) __wcscpy_power7 attribute_hidden;
 
-libc_ifunc (wcscpy,
-	     (hwcap & PPC_FEATURE_HAS_VSX)
-             ? __wcscpy_power7 :
-	       (hwcap & PPC_FEATURE_ARCH_2_05)
-	       ? __wcscpy_power6
-             : __wcscpy_ppc);
-#else
-#include <wcsmbs/wcscpy.c>
-#endif
+libc_ifunc_redirected (__redirect___wcscpy, __wcscpy,
+		       (hwcap & PPC_FEATURE_HAS_VSX)
+		       ? __wcscpy_power7 :
+		         (hwcap & PPC_FEATURE_ARCH_2_05)
+		         ? __wcscpy_power6
+	               : __wcscpy_ppc);
+weak_alias (__wcscpy, wcscpy)