diff options
author | Greg Ungerer <gerg@uclinux.org> | 2011-03-28 10:44:28 +0400 |
---|---|---|
committer | Greg Ungerer <gerg@uclinux.org> | 2011-05-24 04:03:49 +0400 |
commit | 80160de89d0a7c9a93dfe91eef2b448cbc380cd0 (patch) | |
tree | 564588ca8caffc79cacf1ac7d89fd53a1efc3277 | |
parent | b82ed87e67b081e55608b86b3e6f6f9036cedbd3 (diff) | |
download | linux-80160de89d0a7c9a93dfe91eef2b448cbc380cd0.tar.xz |
m68k: remove duplicate memmove() implementation
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>
-rw-r--r-- | arch/m68k/lib/Makefile | 4 | ||||
-rw-r--r-- | arch/m68k/lib/memmove.c | 2 | ||||
-rw-r--r-- | arch/m68k/lib/string.c | 95 |
3 files changed, 2 insertions, 99 deletions
diff --git a/arch/m68k/lib/Makefile b/arch/m68k/lib/Makefile index 3d85fb6e6d3b..ec479a9b9d7b 100644 --- a/arch/m68k/lib/Makefile +++ b/arch/m68k/lib/Makefile @@ -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 diff --git a/arch/m68k/lib/memmove.c b/arch/m68k/lib/memmove.c index b3dcfe9dab7e..6519f7f349f6 100644 --- a/arch/m68k/lib/memmove.c +++ b/arch/m68k/lib/memmove.c @@ -4,8 +4,6 @@ * for more details. */ -#define __IN_STRING_C - #include <linux/module.h> #include <linux/string.h> diff --git a/arch/m68k/lib/string.c b/arch/m68k/lib/string.c index d399c5f25636..711fa743e6be 100644 --- a/arch/m68k/lib/string.c +++ b/arch/m68k/lib/string.c @@ -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); |