about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAdhemerval Zanella <azanella@linux.vnet.ibm.com>2014-07-08 08:54:09 -0500
committerAdhemerval Zanella <azanella@linux.vnet.ibm.com>2014-07-08 09:16:15 -0500
commit27b75f56c92b82fe335ae8b5365095854086894f (patch)
treeefb08fb0d867757e1603905e039ee6f03872d8ca
parente7f95bb5f0da035f0af98804e3ee4a8a88135623 (diff)
downloadglibc-27b75f56c92b82fe335ae8b5365095854086894f.tar.gz
glibc-27b75f56c92b82fe335ae8b5365095854086894f.tar.xz
glibc-27b75f56c92b82fe335ae8b5365095854086894f.zip
PowerPC: Cleanup powerpc memmove
Now that MEMCPY_OK_FOR_FWD_MEMMOVE should be define on memcopy.h there
is no need to specialized powerpc memmove implementation.  This patch
moves the define set to powerpc memcopy and cleanup its definition on
powerpc code.
-rw-r--r--ChangeLog10
-rw-r--r--sysdeps/powerpc/memmove.c22
-rw-r--r--sysdeps/powerpc/powerpc32/power4/memcopy.h4
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c1
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c1
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c2
6 files changed, 15 insertions, 25 deletions
diff --git a/ChangeLog b/ChangeLog
index 39fce07ce3..1c7e41de8d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
 2014-07-08  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
 
+	* sysdeps/powerpc/memmove.c: Remove file.
+	* sysdeps/powerpc/powerpc32/power4/memcopy.h
+	[MEMCPY_OK_FOR_FWD_MEMMOVE]: Define it to 1.
+	* sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
+	[MEMCPY_OK_FOR_FWD_MEMMOVE]: Remove define.
+	* sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c:
+	[MEMCPY_OK_FOR_FWD_MEMMOVE]: Likewise.
+	* sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c: Include default
+	string memmove instead of removed powerpc one.
+
 	* sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l-power7.S:
 	[weak_alias]: Fix compiler warning due trailing data.
 	* sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp-power7.S:
diff --git a/sysdeps/powerpc/memmove.c b/sysdeps/powerpc/memmove.c
deleted file mode 100644
index 9c62ecb5cb..0000000000
--- a/sysdeps/powerpc/memmove.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copy memory to memory until the specified number of bytes
-   has been copied.  Overlap is handled correctly.
-   Copyright (C) 1991-2014 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Torbjorn Granlund (tege@sics.se).
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If
-   not, see <http://www.gnu.org/licenses/>.  */
-
-#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
-#include <string/memmove.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/memcopy.h b/sysdeps/powerpc/powerpc32/power4/memcopy.h
index d3752dcc1c..3431084449 100644
--- a/sysdeps/powerpc/powerpc32/power4/memcopy.h
+++ b/sysdeps/powerpc/powerpc32/power4/memcopy.h
@@ -110,3 +110,7 @@
 	  ((byte *) dst_ep)[0] = __x;					      \
 	}								      \
     } while (0)
+
+/* The powerpc memcpy implementation is safe to use for memmove.  */
+#undef MEMCPY_OK_FOR_FWD_MEMMOVE
+#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
index 2861071bad..b14c3b193c 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
@@ -27,5 +27,4 @@ extern __typeof (memmove) __memmove_power7;
 #undef libc_hidden_builtin_def
 #define libc_hidden_builtin_def(name)
 
-#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
 #include <string/memmove.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c
index e323a4d736..d56b77a1db 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c
@@ -30,5 +30,4 @@ extern __typeof (memmove) __memmove_ppc;
   __hidden_ver1 (__memmove_ppc, __GI_memmove, __memmove_ppc);
 #endif
 
-#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
 #include <string/memmove.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c
index b39348f9a6..ff78fe6257 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c
@@ -25,4 +25,4 @@
 
 extern __typeof (memmove) __memmove_ppc attribute_hidden;
 
-#include <sysdeps/powerpc/memmove.c>
+#include <string/memmove.c>