/* $OpenBSD: strrchr.S,v 1.4 2014/11/30 19:43:56 deraadt Exp $ */ /* * Written by J.T. Conklin . * Public domain. */ #include ALTENTRY(rindex) 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