Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[cris-mirror.git] / arch / arm / lib / strchr.S
blob013d64c71e8d6aae7b0d9f826b13dbca1e32f22d
1 /*
2  *  linux/arch/arm/lib/strchr.S
3  *
4  *  Copyright (C) 1995-2000 Russell King
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  *
10  *  ASM optimised string functions
11  */
12 #include <linux/linkage.h>
13 #include <asm/assembler.h>
15                 .text
16                 .align  5
17 ENTRY(strchr)
18                 and     r1, r1, #0xff
19 1:              ldrb    r2, [r0], #1
20                 teq     r2, r1
21                 teqne   r2, #0
22                 bne     1b
23                 teq     r2, r1
24                 movne   r0, #0
25                 subeq   r0, r0, #1
26                 ret     lr
27 ENDPROC(strchr)