diff options
Diffstat (limited to 'sysdeps/arm/armv6/strrchr.S')
-rw-r--r-- | sysdeps/arm/armv6/strrchr.S | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sysdeps/arm/armv6/strrchr.S b/sysdeps/arm/armv6/strrchr.S index d6db032..e6eea01 100644 --- a/sysdeps/arm/armv6/strrchr.S +++ b/sysdeps/arm/armv6/strrchr.S @@ -33,8 +33,7 @@ ENTRY (strrchr) @ Loop a few times until we're aligned. tst r3, #7 beq 2f -1: sfi_breg r3, \ - ldrb r2, [\B], #1 +1: ldrb r2, [r3], #1 cmp r2, r1 @ Find the character it eq subeq r0, r3, #1 @@ -65,8 +64,7 @@ ENTRY (strrchr) @ Loop searching for EOS and C, 8 bytes at a time. @ Any time we find a match in a word, we copy the address of @ the word to r0, and the found bits to r2. -3: sfi_breg r3, \ - ldrd r4, r5, [\B], #8 +3: ldrd r4, r5, [r3], #8 @ Subtracting (unsigned saturating) from 1 means result of 1 for @ any byte that was originally zero and 0 otherwise. Therefore @ we consider the lsb of each byte the "found" bit. |