Blame SOURCES/valgrind-3.10.1-memmove-ld_so-ppc64.patch

2601b6
commit 6b5fb6710eaa4151e3aea77355d8fa3366312857
2601b6
Author: mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9>
2601b6
Date:   Tue Jul 7 13:01:39 2015 +0000
2601b6
2601b6
    349828 memcpy intercepts memmove causing src/dst overlap error (ppc64 ld.so)
2601b6
    
2601b6
    git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15397 a5019735-40e9-0310-863c-91ae7b9d1cf9
2601b6
2601b6
diff --git a/shared/vg_replace_strmem.c b/shared/vg_replace_strmem.c
2601b6
index d4e5449..0f366bf 100644
2601b6
--- a/shared/vg_replace_strmem.c
2601b6
+++ b/shared/vg_replace_strmem.c
2601b6
@@ -1141,6 +1141,10 @@ static inline void my_exit ( int x )
2601b6
 #if defined(VGO_linux)
2601b6
  MEMMOVE(VG_Z_LIBC_SONAME, memmove)
2601b6
  MEMMOVE(VG_Z_LIBC_SONAME, __GI_memmove)
2601b6
+ /* See bug #349828 Override for ld64.so.1 like memcpy, because for some
2601b6
+    arches MEMCPY_OK_FOR_FORWARD_MEMMOVE is set, which might cause memmove
2601b6
+    to call memcpy.  */
2601b6
+ MEMMOVE(VG_Z_LD64_SO_1, memmove)
2601b6
 
2601b6
 #elif defined(VGO_darwin)
2601b6
 # if DARWIN_VERS <= DARWIN_10_6