1# mach: bfin
2
3#include "test.h"
4.include "testutils.inc"
5	start
6
7	R0 = 0;
8	R1 = 0;
9	R2 = 0;
10	R3 = 0;
11	R4 = 0;
12	R5 = 0;
13	R6 = 0;
14	R7 = 0;
15	ASTAT = R0;
16	R0.L = 0x33;
17	R0.H = 0x55;
18	R1.L = 0x66;
19	R1.H = 0x77;
20	R7 = R1 +|+ R0, R6 = R1 -|- R0 (SCO , ASR);
21
22	_DBG R7;
23	CHECKREG R7, 0x0066004c;
24	CHECKREG R6, 0x00190011;
25	R7 = ASTAT
26	CHECKREG R7, 0;
27
28//-----------------------
29
30	R0 = 0;
31	R1 = 0;
32	R2 = 0;
33	R3 = 0;
34	R4 = 0;
35	R5 = 0;
36	R6 = 0;
37	R7 = 0;
38	R0.L = 0x33;
39	R0.H = 0x55;
40	R1.L = 0x66;
41	R1.H = 0x77;
42	R3 = R1 +|+ R0, R2 = R1 -|- R0 (ASR);
43
44	R7 = ASTAT;
45	CHECKREG R7, 0;
46
47//-----------------------
48
49	R0 = 0;
50	R1 = 0;
51	R2 = 0;
52	R3 = 0;
53	R4 = 0;
54	R5 = 0;
55	R6 = 0;
56	R7 = 0;
57	R0.L = 0x33;
58	R0.H = 0x55;
59	R1.L = 0x66;
60	R1.H = 0x77;
61	R5 = R1 +|+ R0, R4 = R1 -|- R0 (CO , ASR);
62
63	R7 = ASTAT;
64	CHECKREG R7, 0;
65
66//-----------------------
67
68	R0 = 0;
69	R1 = 0;
70	R2 = 0;
71	R3 = 0;
72	R4 = 0;
73	R5 = 0;
74	R6 = 0;
75	R7 = 0;
76	R0.L = 0x33;
77	R0.H = 0x55;
78	R1.L = 0x66;
79	R1.H = 0x77;
80	R3 = R1 +|+ R0, R2 = R1 -|- R0 (ASL);
81	CHECKREG R3, 0x01980132;
82	CHECKREG R2, 0x00440066;
83
84	R7 = ASTAT;
85	CHECKREG R7, 0;
86
87//-----------------------
88
89	R0 = 0;
90	R1 = 0;
91	R2 = 0;
92	R3 = 0;
93	R4 = 0;
94	R5 = 0;
95	R6 = 0;
96	R7 = 0;
97	R0.L = 0x33;
98	R0.H = 0x55;
99	R1.L = 0x7fff;
100	R1.H = 0x77;
101	R3 = R1 +|+ R0, R2 = R1 -|- R0 (S , ASL);
102	CHECKREG R3, 0x01987fff;
103	CHECKREG R2, 0x00447fff;
104
105	R7 = ASTAT;
106	CHECKREG R7, (_VS|_V|_V_COPY);
107
108	pass
109