aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/lib/memcpy.S8
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/arm/lib/memcpy.S b/arch/arm/lib/memcpy.S
index 0ca61210da7..f7fb77235cd 100644
--- a/arch/arm/lib/memcpy.S
+++ b/arch/arm/lib/memcpy.S
@@ -59,7 +59,7 @@
#endif
ENTRY(memcpy)
cmp r0, r1
- moveq pc, lr
+ bxeq lr
enter r4, lr
@@ -147,7 +147,8 @@ ENTRY(memcpy)
str1b r0, r4, cs, abort=21f
str1b r0, ip, cs, abort=21f
- exit r4, pc
+ exit r4, lr
+ bx lr
9: rsb ip, ip, #4
cmp ip, #2
@@ -256,7 +257,8 @@ ENTRY(memcpy)
.endm
.macro copy_abort_end
- ldmfd sp!, {r4, pc}
+ ldmfd sp!, {r4, lr}
+ bx lr
.endm
ENDPROC(memcpy)