aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/powerpc/strcpy.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/powerpc/strcpy.S')
-rw-r--r--sysdeps/powerpc/strcpy.S26
1 files changed, 13 insertions, 13 deletions
diff --git a/sysdeps/powerpc/strcpy.S b/sysdeps/powerpc/strcpy.S
index 0a1d89c8fc..0767921d65 100644
--- a/sysdeps/powerpc/strcpy.S
+++ b/sysdeps/powerpc/strcpy.S
@@ -1,5 +1,5 @@
/* Optimized strcpy implementation for PowerPC.
- Copyright (C) 1997, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -45,24 +45,24 @@ EALIGN(strcpy,4,0)
lwz r6,0(r4)
addi r7,r7,-0x101
addi r8,r8,0x7f7f
- b 2f
+ b L(g2)
-0: lwzu r10,4(r4)
+L(g0): lwzu r10,4(r4)
stwu r6,4(r5)
add r0,r7,r10
nor r9,r8,r10
and. r0,r0,r9
- bne- 1f
+ bne- L(g1)
lwzu r6,4(r4)
stwu r10,4(r5)
-2: add r0,r7,r6
+L(g2): add r0,r7,r6
nor r9,r8,r6
and. r0,r0,r9
- beq+ 0b
+ beq+ L(g0)
mr r10,r6
/* We've hit the end of the string. Do the rest byte-by-byte. */
-1: rlwinm. r0,r10,8,24,31
+L(g1): rlwinm. r0,r10,8,24,31
stb r0,4(r5)
beqlr-
rlwinm. r0,r10,16,24,31
@@ -81,20 +81,20 @@ L(unaligned):
lbz r6,0(r4)
addi r5,r3,-1
cmpwi r6,0
- beq- 2f
+ beq- L(u2)
-0: lbzu r10,1(r4)
+L(u0): lbzu r10,1(r4)
stbu r6,1(r5)
cmpwi r10,0
- beq- 1f
+ beq- L(u1)
nop /* Let 601 load start of loop. */
lbzu r6,1(r4)
stbu r10,1(r5)
cmpwi r6,0
- bne+ 0b
-2: stb r6,1(r5)
+ bne+ L(u0)
+L(u2): stb r6,1(r5)
blr
-1: stb r10,1(r5)
+L(u1): stb r10,1(r5)
blr
END(strcpy)