mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race
[linux/fpc-iii.git] / arch / arm / lib / memchr.S
blob74a5bed6d9999a645d06d6d34369f9b7c155c0f9
1 /*
2  *  linux/arch/arm/lib/memchr.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(memchr)
18 1:      subs    r2, r2, #1
19         bmi     2f
20         ldrb    r3, [r0], #1
21         teq     r3, r1
22         bne     1b
23         sub     r0, r0, #1
24 2:      movne   r0, #0
25         ret     lr
26 ENDPROC(memchr)