aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/sparc/sparc32
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-11-23 17:01:11 +0000
committerUlrich Drepper <drepper@redhat.com>1999-11-23 17:01:11 +0000
commit33147a9751fd126f4efcb67b0f787316b7e36d37 (patch)
treeaee190bee606bdba49a227525ac72cafebe5cb10 /sysdeps/sparc/sparc32
parente5549566c97134500bad87c43037941c58126299 (diff)
downloadglibc-33147a9751fd126f4efcb67b0f787316b7e36d37.zip
glibc-33147a9751fd126f4efcb67b0f787316b7e36d37.tar.gz
glibc-33147a9751fd126f4efcb67b0f787316b7e36d37.tar.bz2
bcopy should handle overlapping copies like memmove, while the previous version worked like memcpy. Implement optimized assembly memmove.
Diffstat (limited to 'sysdeps/sparc/sparc32')
-rw-r--r--sysdeps/sparc/sparc32/memcpy.S6
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/memmove.c2
2 files changed, 1 insertions, 7 deletions
diff --git a/sysdeps/sparc/sparc32/memcpy.S b/sysdeps/sparc/sparc32/memcpy.S
index 24d9e04..492d127 100644
--- a/sysdeps/sparc/sparc32/memcpy.S
+++ b/sysdeps/sparc/sparc32/memcpy.S
@@ -163,16 +163,10 @@
b 3f
sub %o0, 2, %o0
-0: retl
- nop ! Only bcopy returns here and it retuns void...
-
ENTRY(bcopy)
mov %o0, %o3
mov %o1, %o0
mov %o3, %o1
- tst %o2
- bcs 0b
- /* Do the cmp in the delay slot */
END(bcopy)
ENTRY(memmove)
cmp %o0, %o1
diff --git a/sysdeps/sparc/sparc32/sparcv9/memmove.c b/sysdeps/sparc/sparc32/sparcv9/memmove.c
index 9dcf627..a8d2d49 100644
--- a/sysdeps/sparc/sparc32/sparcv9/memmove.c
+++ b/sysdeps/sparc/sparc32/sparcv9/memmove.c
@@ -1 +1 @@
-#include <sysdeps/generic/memmove.c>
+/* memmove is in memcpy.S */