blob: 09e2cc8a89501a0f9ace6f81cb2a3256d68cd105 [file] [log] [blame]
Thomas Gleixnerd2912cb2019-06-04 10:11:33 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Linus Torvalds1da177e2005-04-16 15:20:36 -07002/*
3 * linux/arch/arm/lib/strchr.S
4 *
5 * Copyright (C) 1995-2000 Russell King
6 *
Linus Torvalds1da177e2005-04-16 15:20:36 -07007 * ASM optimised string functions
8 */
9#include <linux/linkage.h>
10#include <asm/assembler.h>
11
12 .text
13 .align 5
14ENTRY(strchr)
15 and r1, r1, #0xff
161: ldrb r2, [r0], #1
17 teq r2, r1
18 teqne r2, #0
19 bne 1b
20 teq r2, r1
21 movne r0, #0
22 subeq r0, r0, #1
Russell King6ebbf2c2014-06-30 16:29:12 +010023 ret lr
Catalin Marinas93ed3972008-08-28 11:22:32 +010024ENDPROC(strchr)