diff options
author | Roland McGrath <roland@hack.frob.com> | 2013-03-15 09:31:56 -0700 |
---|---|---|
committer | Roland McGrath <roland@hack.frob.com> | 2013-03-15 09:31:56 -0700 |
commit | a7ac752299cb61f3140ab76c6f0a4ed46f52df55 (patch) | |
tree | 52798d8cb03569a69f00b7950dfdbf226415ca09 /ports/sysdeps/arm/strlen.S | |
parent | ef26eece6331a1f6d959818e37c438cc7ce68e53 (diff) | |
download | glibc-a7ac752299cb61f3140ab76c6f0a4ed46f52df55.zip glibc-a7ac752299cb61f3140ab76c6f0a4ed46f52df55.tar.gz glibc-a7ac752299cb61f3140ab76c6f0a4ed46f52df55.tar.bz2 |
ARM: sfi_breg assembler macro
Diffstat (limited to 'ports/sysdeps/arm/strlen.S')
-rw-r--r-- | ports/sysdeps/arm/strlen.S | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/ports/sysdeps/arm/strlen.S b/ports/sysdeps/arm/strlen.S index fef62cf..7d358a7 100644 --- a/ports/sysdeps/arm/strlen.S +++ b/ports/sysdeps/arm/strlen.S @@ -30,7 +30,8 @@ ENTRY(strlen) bic r1, r0, $3 @ addr of word containing first byte - ldr r2, [r1], $4 @ get the first word + sfi_breg r1, \ + ldr r2, [\B], $4 @ get the first word ands r3, r0, $3 @ how many bytes are duff? rsb r0, r3, $0 @ get - that number into counter. beq Laligned @ skip into main check routine if no @@ -54,7 +55,8 @@ Laligned: @ here, we have a word in r2. Does it tstne r2, $0x00ff0000 @ tstne r2, $0xff000000 @ addne r0, r0, $4 @ if not, the string is 4 bytes longer - ldrne r2, [r1], $4 @ and we continue to the next word + sfi_breg r1, \ + ldrne r2, [\B], $4 @ and we continue to the next word bne Laligned @ Llastword: @ drop through to here once we find a #ifdef __ARMEB__ |