diff options
Diffstat (limited to 'sysdeps/arm/memset.S')
-rw-r--r-- | sysdeps/arm/memset.S | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/sysdeps/arm/memset.S b/sysdeps/arm/memset.S index d369c20a80..95946360bf 100644 --- a/sysdeps/arm/memset.S +++ b/sysdeps/arm/memset.S @@ -32,8 +32,7 @@ ENTRY(memset) 1: tst r3, #3 @ aligned yet? - sfi_breg r3, \ - strbne r1, [\B], #1 + strbne r1, [r3], #1 subne r2, r2, #1 bne 1b @@ -44,33 +43,25 @@ ENTRY(memset) 1: subs r2, r2, #8 - sfi_breg r3, \ - stmiacs \B!, {r1, ip} @ store up to 32 bytes per loop iteration + stmiacs r3!, {r1, ip} @ store up to 32 bytes per loop iteration subscs r2, r2, #8 - sfi_breg r3, \ - stmiacs \B!, {r1, ip} + stmiacs r3!, {r1, ip} subscs r2, r2, #8 - sfi_breg r3, \ - stmiacs \B!, {r1, ip} + stmiacs r3!, {r1, ip} subscs r2, r2, #8 - sfi_breg r3, \ - stmiacs \B!, {r1, ip} + stmiacs r3!, {r1, ip} bcs 1b and r2, r2, #7 2: subs r2, r2, #1 @ store up to 4 bytes per loop iteration - sfi_breg r3, \ - strbcs r1, [\B], #1 + strbcs r1, [r3], #1 subscs r2, r2, #1 - sfi_breg r3, \ - strbcs r1, [\B], #1 + strbcs r1, [r3], #1 subscs r2, r2, #1 - sfi_breg r3, \ - strbcs r1, [\B], #1 + strbcs r1, [r3], #1 subscs r2, r2, #1 - sfi_breg r3, \ - strbcs r1, [\B], #1 + strbcs r1, [r3], #1 bcs 2b DO_RET(lr) |