From 6f714aa4ad5af2745ae2d185821d20ce8fabc2c5 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Fri, 31 Jul 2015 10:48:20 -0300 Subject: [PATCH] powerpc: Fix PPC64/POWER7 conform tests When building with --disable-multi-arch the memmove and strstr POWER7 optimization create and uses symbols that conflict with expect conform tests. * sysdeps/powerpc/powerpc64/power7/memmove.S (bcopy): Changing to __bcopy and add a weak_alias to bcopy. * sysdeps/powerpc/powerpc64/power7/strstr.S (strstr): Use __strnlen for static build. --- ChangeLog | 5 +++++ sysdeps/powerpc/powerpc64/power7/memmove.S | 5 +++-- sysdeps/powerpc/powerpc64/power7/strstr.S | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9e5db83214..4a7f5a4781 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2015-08-10 Adhemerval Zanella + * sysdeps/powerpc/powerpc64/power7/memmove.S (bcopy): Changing to + __bcopy and add a weak_alias to bcopy. + * sysdeps/powerpc/powerpc64/power7/strstr.S (strstr): Use __strnlen + for static build. + * string/stpcpy.c (__stpcpy): Use STPCPY to redefine symbol name and cleanup macro usage. * string/strcpy.c (strcpt): Use STRCPY to redefine symbol name. diff --git a/sysdeps/powerpc/powerpc64/power7/memmove.S b/sysdeps/powerpc/powerpc64/power7/memmove.S index 3bd4b4bb3f..43f0a48cc8 100644 --- a/sysdeps/powerpc/powerpc64/power7/memmove.S +++ b/sysdeps/powerpc/powerpc64/power7/memmove.S @@ -823,9 +823,10 @@ libc_hidden_builtin_def (memmove) /* void bcopy(const void *src [r3], void *dest [r4], size_t n [r5]) Implemented in this file to avoid linker create a stub function call in the branch to '_memmove'. */ -ENTRY (bcopy) +ENTRY (__bcopy) mr r6,r3 mr r3,r4 mr r4,r6 b L(_memmove) -END (bcopy) +END (__bcopy) +weak_alias (__bcopy, bcopy) diff --git a/sysdeps/powerpc/powerpc64/power7/strstr.S b/sysdeps/powerpc/powerpc64/power7/strstr.S index 8dca31ce35..bfb0c4992a 100644 --- a/sysdeps/powerpc/powerpc64/power7/strstr.S +++ b/sysdeps/powerpc/powerpc64/power7/strstr.S @@ -39,7 +39,7 @@ # ifdef SHARED # define STRNLEN __GI_strnlen # else -# define STRNLEN strnlen +# define STRNLEN __strnlen # endif #endif