code: 9ferno

ref: 6bb619c8db2867ddd9cd19c0aec05065f5ee0cae
dir: /libkern/strchr-386.s/

View raw version
	TEXT	strchr(SB),$0
/*
 * look for null
 */
	MOVL	p+0(FP), DI
	MOVL	$-1, CX
	MOVL	$0, AX
	CLD

	REPN;	SCASB

/*
 * look for real char
 */
	MOVL	DI, CX
	MOVL	p+0(FP), DI
	SUBL	DI, CX
	MOVBLZX	c+4(FP), AX

	REPN;	SCASB

	JEQ	found
	MOVL	$0, AX
	RET

found:
	MOVL	DI, AX
	SUBL	$1, AX
	RET