summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorNiklas Hallqvist <niklas@cvs.openbsd.org>1996-11-14 13:17:07 +0000
committerNiklas Hallqvist <niklas@cvs.openbsd.org>1996-11-14 13:17:07 +0000
commitc59789e9828db2853f716c32d0177077da3a983c (patch)
tree5ade31c9aa3e66792e6510c42e4694a81b3ed87b /sys
parent78e27c8f64cb1a7e181e37be3190a880736e16d4 (diff)
Add memcpy entrypoint to bcopy et al. With this, in-tree gcc now
compiles a kernel which can be booted. In-tree as still loses though.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/alpha/alpha/locore.s10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/arch/alpha/alpha/locore.s b/sys/arch/alpha/alpha/locore.s
index 0589b15c26e..c0fe8306db3 100644
--- a/sys/arch/alpha/alpha/locore.s
+++ b/sys/arch/alpha/alpha/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.5 1996/10/30 22:38:13 niklas Exp $ */
+/* $OpenBSD: locore.s,v 1.6 1996/11/14 13:17:06 niklas Exp $ */
/* $NetBSD: locore.s,v 1.26 1996/10/17 02:50:38 cgd Exp $ */
/*
@@ -924,10 +924,16 @@ NESTED(copyoutstr, 4, 16, ra, 0, 0)
* case; that's that ovbcopy() is for. However, it doesn't hurt
* to do both in bcopy, and it does provide a measure of safety.
*
+ * void memcpy(char *to, char*from, size_t len);
* void bcopy(char *from, char *to, size_t len);
* void ovbcopy(char *from, char *to, size_t len);
*/
-LEAF(bcopy,3)
+LEAF(memcpy,3)
+ cmoveq zero,a0,t5
+ cmoveq zero,a1,a0
+ cmoveq zero,t5,a1
+
+XLEAF(bcopy,3)
XLEAF(ovbcopy,3)
/* Check for negative length */