summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Andrzej Siewior <bigeasy@breakpoint.cc>2009-07-26 14:58:34 +0200
committerHaavard Skinnemoen <haavard.skinnemoen@atmel.com>2009-07-27 12:37:28 +0200
commit251ab1a37d9ba810593d5fbf2482bc4ba773fab2 (patch)
tree93eeb758d45df736601e5082c0c93a51f600d08a
parentavr32/lib: fix unaligned memcpy() (diff)
downloadlinux-251ab1a37d9ba810593d5fbf2482bc4ba773fab2.tar.xz
linux-251ab1a37d9ba810593d5fbf2482bc4ba773fab2.zip
avr32/lib: fix unaligned memcpy where len < 4
in case of memcpy(p, unaligned, 1..3) we get 1..3 as the return value instead of p Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
-rw-r--r--arch/avr32/lib/memcpy.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/avr32/lib/memcpy.S b/arch/avr32/lib/memcpy.S
index 93e74b6fcdb6..c2ca49d705af 100644
--- a/arch/avr32/lib/memcpy.S
+++ b/arch/avr32/lib/memcpy.S
@@ -49,6 +49,7 @@ memcpy:
/* Handle unaligned "from" pointer */
1: sub r10, 4
+ movlt r9, r12
brlt 4b
add r10, r9
lsl r9, 2