summaryrefslogtreecommitdiffstats
path: root/sys/lib/libkern/arch/arm
diff options
context:
space:
mode:
authormiod <miod@openbsd.org>2013-06-15 19:16:53 +0000
committermiod <miod@openbsd.org>2013-06-15 19:16:53 +0000
commit856b2214a699e18cdd84f8f9bf1b62b1b6b98879 (patch)
tree95daf94f5d486c43f271b1965691ea91db850490 /sys/lib/libkern/arch/arm
parentCorrectly handle a length of zero in memcpy(). (diff)
downloadwireguard-openbsd-856b2214a699e18cdd84f8f9bf1b62b1b6b98879.tar.xz
wireguard-openbsd-856b2214a699e18cdd84f8f9bf1b62b1b6b98879.zip
Make bcopy() involve memmove(), not memcpy().
Do not bogusly return NULL if dst == src (spotted by tedu@)
Diffstat (limited to 'sys/lib/libkern/arch/arm')
-rw-r--r--sys/lib/libkern/arch/arm/bcopy.S4
-rw-r--r--sys/lib/libkern/arch/arm/memcpy.S3
2 files changed, 3 insertions, 4 deletions
diff --git a/sys/lib/libkern/arch/arm/bcopy.S b/sys/lib/libkern/arch/arm/bcopy.S
index e6bcee839a7..6c69052b1b3 100644
--- a/sys/lib/libkern/arch/arm/bcopy.S
+++ b/sys/lib/libkern/arch/arm/bcopy.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: bcopy.S,v 1.3 2008/06/26 05:42:20 ray Exp $ */
+/* $OpenBSD: bcopy.S,v 1.4 2013/06/15 19:16:53 miod Exp $ */
/* $NetBSD: bcopy.S,v 1.2 2001/07/16 05:50:06 matt Exp $ */
/*-
@@ -39,4 +39,4 @@ ENTRY(bcopy)
eor r0, r1, r0
eor r1, r0, r1
eor r0, r1, r0
- b PIC_SYM(_C_LABEL(memcpy), PLT)
+ b PIC_SYM(_C_LABEL(memmove), PLT)
diff --git a/sys/lib/libkern/arch/arm/memcpy.S b/sys/lib/libkern/arch/arm/memcpy.S
index 5d299ffc688..c414de79f60 100644
--- a/sys/lib/libkern/arch/arm/memcpy.S
+++ b/sys/lib/libkern/arch/arm/memcpy.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: memcpy.S,v 1.3 2008/06/26 05:42:20 ray Exp $ */
+/* $OpenBSD: memcpy.S,v 1.4 2013/06/15 19:16:53 miod Exp $ */
/* $NetBSD: memcpy.S,v 1.2 2001/11/20 00:29:20 chris Exp $ */
/*-
@@ -68,7 +68,6 @@ ENTRY_NP(memmove)
/* Determine copy direction */
cmp r1, r0
- moveq r0, #0 /* Quick abort for len=0 */
#ifdef __APCS_26__
moveqs pc, lr
#else