annotate target-utils/libc/strlen.S @ 1013:bc4dc383ff4a default tip

doc/Loadtools-usage: list SE J110/120 pair properly These two Chi-Mei phones are variants of the same design with only minor diffs.
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 23 Sep 2024 12:28:57 +0000
parents 3670e7768ab6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
95
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 .text
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 .code 32
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 .globl strlen
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 strlen:
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 mov r1, r0
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 1: ldrb r2, [r0], #1
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 cmn r2, #0
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 bne 1b
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 sbc r0, r0, r1
3670e7768ab6 target-utils/libc: strlen optimized assembly implementation added
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 bx lr