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