1/*
2 * ====================================================
3 * Copyright (C) 1998, 2002 by Red Hat Inc. All rights reserved.
4 *
5 * Permission to use, copy, modify, and distribute this
6 * software is freely granted, provided that this notice
7 * is preserved.
8 * ====================================================
9 */
10
11	#include "i386mach.h"
12
13	.global	SYM (memchr)
14       SOTYPE_FUNCTION(memchr)
15
16SYM (memchr):
17	pushl	ebp
18	movl	esp,ebp
19	pushl 	edi
20	movl 	12(ebp),eax
21	movl 	16(ebp),ecx
22	movl 	8(ebp),edi
23
24	xorl	edx,edx
25	testl	ecx,ecx
26	jz	L1
27
28	cld
29	repnz
30	scasb
31
32	setnz	dl
33	decl	edi
34	decl	edx
35	andl	edi,edx
36L1:
37	movl	edx,eax
38
39	leal	-4(ebp),esp
40	popl	edi
41	leave
42	ret
43