xref: /plan9/sys/src/libc/sparc/memchr.s (revision 3e12c5d1bb89fc02707907988834ef147769ddaf)
1*3e12c5d1SDavid du Colombier	TEXT	memchr(SB), $0
2*3e12c5d1SDavid du Colombier
3*3e12c5d1SDavid du ColombierMOVW	R7, 0(FP)
4*3e12c5d1SDavid du Colombier	MOVW	n+8(FP), R7
5*3e12c5d1SDavid du Colombier	SUBCC	R0,R7, R0
6*3e12c5d1SDavid du Colombier	BE	ret
7*3e12c5d1SDavid du Colombier	MOVW	s1+0(FP), R8
8*3e12c5d1SDavid du Colombier	MOVBU	c+7(FP), R9
9*3e12c5d1SDavid du Colombier	ADD	R7,R8, R11
10*3e12c5d1SDavid du Colombier
11*3e12c5d1SDavid du Colombierl1:
12*3e12c5d1SDavid du Colombier	MOVBU	(R8), R10
13*3e12c5d1SDavid du Colombier	SUBCC	R9,R10, R0
14*3e12c5d1SDavid du Colombier	ADD	$1, R8
15*3e12c5d1SDavid du Colombier	BE	eq
16*3e12c5d1SDavid du Colombier	SUBCC	R8,R11, R0
17*3e12c5d1SDavid du Colombier	BNE	l1
18*3e12c5d1SDavid du Colombier
19*3e12c5d1SDavid du Colombier	MOVW	R0, R7
20*3e12c5d1SDavid du Colombier	RETURN
21*3e12c5d1SDavid du Colombier
22*3e12c5d1SDavid du Colombiereq:
23*3e12c5d1SDavid du Colombier	SUB	$1,R8, R7
24*3e12c5d1SDavid du Colombier
25*3e12c5d1SDavid du Colombierret:
26*3e12c5d1SDavid du Colombier	RETURN
27