/* $OpenBSD: strrchr.S,v 1.6 2015/05/15 22:29:37 millert Exp $ */ /* * Written by J.T. Conklin . * Public domain. */ #include WEAK_ALIAS(rindex, strrchr) ENTRY(strrchr) pushl %ebx movl 8(%esp),%edx movb 12(%esp),%cl xorl %eax,%eax /* init pointer to null */ .align 2,0x90 L1: movb (%edx),%bl cmpb %bl,%cl jne L2 movl %edx,%eax L2: incl %edx testb %bl,%bl /* null terminator??? */ jnz L1 popl %ebx ret