xref: /plan9/sys/src/cmd/5a/l.s (revision 59cc4ca53493a3c6d2349fe2b7f7c40f7dce7294)
1TEXT	main(SB), $0
2
3	ADD		R1,R4
4	ADD		R1,R3,R4
5	ADD		R1<<1,R3,R4	/* logical left */
6	ADD		R1>>1,R3,R4	/* logical right */
7	ADD		R1->1,R3,R4	/* arithmetic right */
8 	ADD		R1@>1,R3,R4	/* rotate right */
9
10	ADD		R1<<R2,R3,R4
11	ADD		$10,R1,R4
12
13loop:
14	ADD.S.NE	R1,R4
15	BNE		loop
16
17	MOVW		R3, CPSR
18	MOVW		R3, SPSR
19	MOVW		R3, F10
20	MOVW		R3, (R2)
21	MOVW		R3, 10(R2)
22	MOVW		R3, name(SB)
23	MOVW		R3, name(SB)(R2)
24	MOVW		R3, name(SB)(R2)
25	MOVW		R3, (R2)
26	MOVW		R3, R1<<2(R2)
27
28	MRC.EQ		3,9,R3,C5,C6,2
29	MRC		3,9,R3,C5,C6,2
30
31	MOVM.IA		[R0,SP,R4], (R2)
32	MOVM.DB.W	(R0), [R6-R11]
33	MOVM.DB.W	(R0), [R0-R11]
34	MOVM.S		(R0), [R0-R11]	// .S is supervisor space
35
36	CMN	$4096,R0,
37
38	RET
39