xref: /plan9/sys/src/cmd/5l/l.s (revision 7dd7cddf99dd7472612f1413b4da293630e6b1bc)
1*7dd7cddfSDavid du ColombierTEXT	main(SB), $0
2*7dd7cddfSDavid du Colombier
3*7dd7cddfSDavid du Colombier	ADD	R1,R4
4*7dd7cddfSDavid du Colombier	ADD	R1,R3,R4
5*7dd7cddfSDavid du Colombier	ADD	R1<<1,R3,R4	/* logical left */
6*7dd7cddfSDavid du Colombier	ADD	R1>>1,R3,R4	/* logical right */
7*7dd7cddfSDavid du Colombier	ADD	R1->1,R3,R4	/* arithmetic right */
8*7dd7cddfSDavid du Colombier 	ADD	R1@>1,R3,R4	/* rotate right */
9*7dd7cddfSDavid du Colombier
10*7dd7cddfSDavid du Colombier	ADD	R1<<R2,R3,R4
11*7dd7cddfSDavid du Colombier	MOVW	R1<<R2,R4
12*7dd7cddfSDavid du Colombier	ADD	$10,R1,R4
13*7dd7cddfSDavid du Colombier
14*7dd7cddfSDavid du Colombierloop:
15*7dd7cddfSDavid du Colombier	ADD.S.NE	R1,R4
16*7dd7cddfSDavid du Colombier	BNE	loop
17*7dd7cddfSDavid du Colombier
18*7dd7cddfSDavid du Colombier	MRC.EQ	3,9,R3,C5,C6,2
19*7dd7cddfSDavid du Colombier	MRC	3,9,R3,C5,C6,2
20*7dd7cddfSDavid du Colombier
21*7dd7cddfSDavid du Colombier	MOVW	$(0xf<<28), CPSR
22*7dd7cddfSDavid du Colombier	MOVW.F	R3, SPSR
23*7dd7cddfSDavid du Colombier
24*7dd7cddfSDavid du Colombier	SWI	123
25*7dd7cddfSDavid du Colombier
26*7dd7cddfSDavid du Colombier	SWPW	R1,(R2),R3
27*7dd7cddfSDavid du Colombier	SWPBU.NE	(R2),R3
28*7dd7cddfSDavid du Colombier	SWPBU	R1,(R2)
29*7dd7cddfSDavid du Colombier
30*7dd7cddfSDavid du Colombier	MOVM.IA.S.W	(R13),[R15]
31*7dd7cddfSDavid du Colombier	RFE
32