diff options
Diffstat (limited to 'arch/m68k/lib/memcpy.c')
-rw-r--r-- | arch/m68k/lib/memcpy.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/m68k/lib/memcpy.c b/arch/m68k/lib/memcpy.c index 064889316974..10ca051d56b8 100644 --- a/arch/m68k/lib/memcpy.c +++ b/arch/m68k/lib/memcpy.c | |||
@@ -22,6 +22,15 @@ void *memcpy(void *to, const void *from, size_t n) | |||
22 | from = cfrom; | 22 | from = cfrom; |
23 | n--; | 23 | n--; |
24 | } | 24 | } |
25 | #if defined(CONFIG_M68000) | ||
26 | if ((long)from & 1) { | ||
27 | char *cto = to; | ||
28 | const char *cfrom = from; | ||
29 | for (; n; n--) | ||
30 | *cto++ = *cfrom++; | ||
31 | return xto; | ||
32 | } | ||
33 | #endif | ||
25 | if (n > 2 && (long)to & 2) { | 34 | if (n > 2 && (long)to & 2) { |
26 | short *sto = to; | 35 | short *sto = to; |
27 | const short *sfrom = from; | 36 | const short *sfrom = from; |