summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2013-06-15 10:05:59 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2013-06-15 10:05:59 +0000
commit8041e42d896cbc61308683b53a70fd978d83f4ec (patch)
tree34776f8af4d3add7614260d549eedc4fc46ea7b2
parent19ac3c08f66ed8cb503efb933faa2b76b703b415 (diff)
Stop handling overlapping copies in memcpy() by jumping straight into the
forward copy path.
-rw-r--r--sys/arch/sparc64/sparc64/locore.s6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/arch/sparc64/sparc64/locore.s b/sys/arch/sparc64/sparc64/locore.s
index bd8492f27cc..e8f2e8f93fb 100644
--- a/sys/arch/sparc64/sparc64/locore.s
+++ b/sys/arch/sparc64/sparc64/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.174 2013/06/13 20:03:59 kettenis Exp $ */
+/* $OpenBSD: locore.s,v 1.175 2013/06/15 10:05:58 kettenis Exp $ */
/* $NetBSD: locore.s,v 1.137 2001/08/13 06:10:10 jdolecek Exp $ */
/*
@@ -6418,7 +6418,6 @@ ENTRY(pseg_set)
mov 1, %o0
-#if 1
/*
* kernel bcopy/memcpy
* Assumes regions do not overlap; has no useful return value.
@@ -6433,7 +6432,8 @@ ENTRY(memcpy) /* dest, src, size */
mov %o0, %o3
mov %o1, %o0
mov %o3, %o1
-#endif /* 1 */
+ ba,pt %xcc, Lbcopy_start
+ cmp %o2, BCOPY_SMALL
ENTRY(bcopy) /* src, dest, size */
/*
* Check for overlaps and punt.