diff options
Diffstat (limited to 'sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c')
-rw-r--r-- | sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c index 7cc7628091..c384b4c64a 100644 --- a/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c +++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c @@ -18,6 +18,9 @@ /* Define multiple versions only for definition in libc. */ #if defined SHARED && IS_IN (libc) +# define strncmp __redirect_strncmp +/* Omit the strncmp inline definitions because it would redefine strncmp. */ +# define __NO_STRING_INLINES # include <string.h> # include <shlib-compat.h> # include "init-arch.h" @@ -25,11 +28,12 @@ extern __typeof (strncmp) __strncmp_ppc attribute_hidden; extern __typeof (strncmp) __strncmp_power4 attribute_hidden; extern __typeof (strncmp) __strncmp_power7 attribute_hidden; +# undef strncmp /* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle ifunc symbol properly. */ -libc_ifunc (strncmp, - (hwcap & PPC_FEATURE_HAS_VSX) - ? __strncmp_power7 - : __strncmp_ppc); +libc_ifunc_redirected (__redirect_strncmp, strncmp, + (hwcap & PPC_FEATURE_HAS_VSX) + ? __strncmp_power7 + : __strncmp_ppc); #endif |