xref: /plan9/sys/src/libc/power/strncmp.s (revision 7dd7cddf99dd7472612f1413b4da293630e6b1bc)
1*7dd7cddfSDavid du ColombierTEXT	strncmp(SB), $0
2*7dd7cddfSDavid du Colombier#define	BDNZ	BC	16,0,
3*7dd7cddfSDavid du Colombier
4*7dd7cddfSDavid du Colombier	MOVW	s2+4(FP), R4
5*7dd7cddfSDavid du Colombier	MOVW	n+8(FP), R7
6*7dd7cddfSDavid du Colombier
7*7dd7cddfSDavid du Colombier	CMP	R7, $0
8*7dd7cddfSDavid du Colombier	MOVW	R7, CTR
9*7dd7cddfSDavid du Colombier	BLE	eq
10*7dd7cddfSDavid du Colombier
11*7dd7cddfSDavid du Colombier	SUB	$1, R3
12*7dd7cddfSDavid du Colombier	SUB	$1, R4
13*7dd7cddfSDavid du Colombierl1:
14*7dd7cddfSDavid du Colombier	MOVBZU	1(R3), R5
15*7dd7cddfSDavid du Colombier	MOVBZU	1(R4), R6
16*7dd7cddfSDavid du Colombier	CMP	R5, R6
17*7dd7cddfSDavid du Colombier	BNE	ne
18*7dd7cddfSDavid du Colombier	CMP	R5, $0
19*7dd7cddfSDavid du Colombier	BEQ	eq
20*7dd7cddfSDavid du Colombier	BDNZ	l1
21*7dd7cddfSDavid du Colombiereq:
22*7dd7cddfSDavid du Colombier	MOVW	$0, R3
23*7dd7cddfSDavid du Colombier	RETURN
24*7dd7cddfSDavid du Colombierne:
25*7dd7cddfSDavid du Colombier	MOVW	$1, R3
26*7dd7cddfSDavid du Colombier	BGT	ret
27*7dd7cddfSDavid du Colombier	MOVW	$-1, R3
28*7dd7cddfSDavid du Colombierret:
29*7dd7cddfSDavid du Colombier	RETURN
30