summaryrefslogtreecommitdiff
path: root/sysdeps/sparc/sparc32/strcpy.S
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-12-22 20:10:10 +0000
committerUlrich Drepper <drepper@redhat.com>2004-12-22 20:10:10 +0000
commita334319f6530564d22e775935d9c91663623a1b4 (patch)
treeb5877475619e4c938e98757d518bb1e9cbead751 /sysdeps/sparc/sparc32/strcpy.S
parent0ecb606cb6cf65de1d9fc8a919bceb4be476c602 (diff)
(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.
Diffstat (limited to 'sysdeps/sparc/sparc32/strcpy.S')
-rw-r--r--sysdeps/sparc/sparc32/strcpy.S16
1 files changed, 7 insertions, 9 deletions
diff --git a/sysdeps/sparc/sparc32/strcpy.S b/sysdeps/sparc/sparc32/strcpy.S
index f3f337e3f7..787ac9f7c8 100644
--- a/sysdeps/sparc/sparc32/strcpy.S
+++ b/sysdeps/sparc/sparc32/strcpy.S
@@ -38,14 +38,7 @@
.text
.align 4
-
-ENTRY(strcpy)
- mov %o0, %g2
- andcc %o1, 3, %g0
- be 10f
- sethi %hi(0x80808080), %o4
-
- ldub [%o1], %o5
+1: ldub [%o1], %o5
stb %o5, [%o0]
cmp %o5, 0
add %o0, 1, %o0
@@ -72,7 +65,12 @@ ENTRY(strcpy)
b 6f
andcc %o0, 3, %g3
-10: or %o4, %lo(0x80808080), %o3
+ENTRY(strcpy)
+ mov %o0, %g2
+ andcc %o1, 3, %g0
+ bne 1b
+ sethi %hi(0x80808080), %o4
+ or %o4, %lo(0x80808080), %o3
4: sethi %hi(0x01010101), %o4
5: andcc %o0, 3, %g3
6: bne 10f