m68k: remove duplicate memmove() implementation
authorGreg Ungerer <gerg@uclinux.org>
Mon, 28 Mar 2011 06:44:28 +0000 (16:44 +1000)
committerGreg Ungerer <gerg@uclinux.org>
Tue, 24 May 2011 00:03:49 +0000 (10:03 +1000)
Merging the mmu and non-mmu directories we ended up with duplicate
(and identical) implementations of memmove(). Remove one of them.

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
arch/m68k/lib/Makefile
arch/m68k/lib/memmove.c
arch/m68k/lib/string.c

index 3d85fb6e6d3b477c261067e97ad8831abb9a75b0..ec479a9b9d7b5e439055ba4f36fd3f1d67d81607 100644 (file)
@@ -3,12 +3,12 @@
 # Makefile for m68k-specific library files..
 #
 
-lib-y  := ashldi3.o ashrdi3.o lshrdi3.o muldi3.o checksum.o
+lib-y  := ashldi3.o ashrdi3.o lshrdi3.o muldi3.o memmove.o checksum.o
 
 ifdef CONFIG_MMU
 lib-y  += string.o uaccess.o
 else
 lib-y  += mulsi3.o divsi3.o udivsi3.o modsi3.o umodsi3.o \
-          memcpy.o memmove.o memset.o delay.o
+          memcpy.o memset.o delay.o
 endif
 
index b3dcfe9dab7e63bd277c841ed1ca87ef65248e56..6519f7f349f665d9f2321b6c87beee45f8d15645 100644 (file)
@@ -4,8 +4,6 @@
  * for more details.
  */
 
-#define __IN_STRING_C
-
 #include <linux/module.h>
 #include <linux/string.h>
 
index d399c5f25636f46473ea06a3ee796ec3bd2888cd..711fa743e6be7ea119d64e0e9d399f11794eeb45 100644 (file)
@@ -148,98 +148,3 @@ void *memcpy(void *to, const void *from, size_t n)
        return xto;
 }
 EXPORT_SYMBOL(memcpy);
-
-void *memmove(void *dest, const void *src, size_t n)
-{
-       void *xdest = dest;
-       size_t temp;
-
-       if (!n)
-               return xdest;
-
-       if (dest < src) {
-               if ((long)dest & 1) {
-                       char *cdest = dest;
-                       const char *csrc = src;
-                       *cdest++ = *csrc++;
-                       dest = cdest;
-                       src = csrc;
-                       n--;
-               }
-               if (n > 2 && (long)dest & 2) {
-                       short *sdest = dest;
-                       const short *ssrc = src;
-                       *sdest++ = *ssrc++;
-                       dest = sdest;
-                       src = ssrc;
-                       n -= 2;
-               }
-               temp = n >> 2;
-               if (temp) {
-                       long *ldest = dest;
-                       const long *lsrc = src;
-                       temp--;
-                       do
-                               *ldest++ = *lsrc++;
-                       while (temp--);
-                       dest = ldest;
-                       src = lsrc;
-               }
-               if (n & 2) {
-                       short *sdest = dest;
-                       const short *ssrc = src;
-                       *sdest++ = *ssrc++;
-                       dest = sdest;
-                       src = ssrc;
-               }
-               if (n & 1) {
-                       char *cdest = dest;
-                       const char *csrc = src;
-                       *cdest = *csrc;
-               }
-       } else {
-               dest = (char *)dest + n;
-               src = (const char *)src + n;
-               if ((long)dest & 1) {
-                       char *cdest = dest;
-                       const char *csrc = src;
-                       *--cdest = *--csrc;
-                       dest = cdest;
-                       src = csrc;
-                       n--;
-               }
-               if (n > 2 && (long)dest & 2) {
-                       short *sdest = dest;
-                       const short *ssrc = src;
-                       *--sdest = *--ssrc;
-                       dest = sdest;
-                       src = ssrc;
-                       n -= 2;
-               }
-               temp = n >> 2;
-               if (temp) {
-                       long *ldest = dest;
-                       const long *lsrc = src;
-                       temp--;
-                       do
-                               *--ldest = *--lsrc;
-                       while (temp--);
-                       dest = ldest;
-                       src = lsrc;
-               }
-               if (n & 2) {
-                       short *sdest = dest;
-                       const short *ssrc = src;
-                       *--sdest = *--ssrc;
-                       dest = sdest;
-                       src = ssrc;
-               }
-               if (n & 1) {
-                       char *cdest = dest;
-                       const char *csrc = src;
-                       *--cdest = *--csrc;
-               }
-       }
-       return xdest;
-}
-EXPORT_SYMBOL(memmove);