]> git.lizzy.rs Git - plan9front.git/blob - sys/src/libc/386/strchr.s
Import sources from 2011-03-30 iso image
[plan9front.git] / sys / src / libc / 386 / strchr.s
1         TEXT    strchr(SB), $0
2
3         MOVL    s+0(FP), DI
4         MOVB    c+4(FP), AX
5         CMPB    AX, $0
6         JEQ     l2      /**/
7
8 /*
9  * char is not null
10  */
11 l1:
12         MOVB    (DI), BX
13         CMPB    BX, $0
14         JEQ     ret0
15         ADDL    $1, DI
16         CMPB    AX, BX
17         JNE     l1
18
19         MOVL    DI, AX
20         SUBL    $1, AX
21         RET
22
23 /*
24  * char is null
25  */
26 l2:
27         MOVL    $-1, CX
28         CLD
29
30         REPN;   SCASB
31
32         MOVL    DI, AX
33         SUBL    $1, AX
34         RET
35
36 ret0:
37         MOVL    $0, AX
38         RET