1 /* 2 * Written by J.T. Conklin <jtc (at) netbsd.org>. 3 * Public domain. 4 */ 5 6 #include <machine/asm.h> 7 8 #if defined(LIBC_SCCS) 9 RCSID("$NetBSD: index.S,v 1.8 1995/04/28 22:58:01 jtc Exp $") 10 #endif 11 12 #ifdef STRCHR 13 ENTRY(strchr) 14 #else 15 ENTRY(index) 16 #endif 17 pushl %ebx 18 movl 8(%esp),%eax 19 movb 12(%esp),%cl 20 .align 2,0x90 21 L1: 22 movb (%eax),%bl 23 cmpb %bl,%cl /* found char??? */ 24 je L2 25 incl %eax 26 testb %bl,%bl /* null terminator??? */ 27 jnz L1 28 xorl %eax,%eax 29 L2: 30 popl %ebx 31 ret 32