git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 1.9.5.x5
[linux-2.6.git]
/
arch
/
sparc64
/
lib
/
memmove.S
diff --git
a/arch/sparc64/lib/memmove.S
b/arch/sparc64/lib/memmove.S
index
ca8781d
..
1c1ebbb
100644
(file)
--- a/
arch/sparc64/lib/memmove.S
+++ b/
arch/sparc64/lib/memmove.S
@@
-8,18
+8,16
@@
.align 32
.globl memmove
.type memmove,#function
.align 32
.globl memmove
.type memmove,#function
-memmove:
+memmove:
/* o0=dst o1=src o2=len */
mov %o0, %g1
cmp %o0, %o1
mov %o0, %g1
cmp %o0, %o1
- blu,pt %xcc, memcpy
- sub %o0, %o1, %g5
- add %o1, %o2, %g3
- cmp %g3, %o0
bleu,pt %xcc, memcpy
add %o1, %o2, %g5
bleu,pt %xcc, memcpy
add %o1, %o2, %g5
- add %o0, %o2, %o5
-
+ cmp %g5, %o0
+ bleu,pt %xcc, memcpy
+ add %o0, %o2, %o5
sub %g5, 1, %o1
sub %g5, 1, %o1
+
sub %o5, 1, %o0
1: ldub [%o1], %g5
subcc %o2, 1, %o2
sub %o5, 1, %o0
1: ldub [%o1], %g5
subcc %o2, 1, %o2