1//Original:/testcases/core/c_regmv_imlb_dr/c_regmv_imlb_dr.dsp
2// Spec Reference: regmv imlb to dr
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8
9
10
11
12
13// initialize source regs
14imm32 i0, 0x11111111;
15imm32 i1, 0x22222222;
16imm32 i2, 0x33333333;
17imm32 i3, 0x44444444;
18
19
20// i to dreg
21R0 = I0;
22R1 = I0;
23R2 = I0;
24R3 = I0;
25R4 = I1;
26R5 = I1;
27R6 = I1;
28R7 = I1;
29CHECKREG r0, 0x11111111;
30CHECKREG r1, 0x11111111;
31CHECKREG r2, 0x11111111;
32CHECKREG r3, 0x11111111;
33CHECKREG r4, 0x22222222;
34CHECKREG r5, 0x22222222;
35CHECKREG r6, 0x22222222;
36CHECKREG r7, 0x22222222;
37
38R0 = I1;
39R1 = I1;
40R2 = I1;
41R3 = I1;
42R4 = I0;
43R5 = I0;
44R6 = I0;
45R7 = I0;
46CHECKREG r0, 0x22222222;
47CHECKREG r1, 0x22222222;
48CHECKREG r2, 0x22222222;
49CHECKREG r3, 0x22222222;
50CHECKREG r4, 0x11111111;
51CHECKREG r5, 0x11111111;
52CHECKREG r6, 0x11111111;
53CHECKREG r7, 0x11111111;
54
55
56// i to dreg
57R0 = I2;
58R1 = I2;
59R2 = I2;
60R3 = I2;
61R4 = I3;
62R5 = I3;
63R6 = I3;
64R7 = I3;
65CHECKREG r0, 0x33333333;
66CHECKREG r1, 0x33333333;
67CHECKREG r2, 0x33333333;
68CHECKREG r3, 0x33333333;
69CHECKREG r4, 0x44444444;
70CHECKREG r5, 0x44444444;
71CHECKREG r6, 0x44444444;
72CHECKREG r7, 0x44444444;
73
74R0 = I3;
75R1 = I3;
76R2 = I3;
77R3 = I3;
78R4 = I2;
79R5 = I2;
80R6 = I2;
81R7 = I2;
82CHECKREG r0, 0x44444444;
83CHECKREG r1, 0x44444444;
84CHECKREG r2, 0x44444444;
85CHECKREG r3, 0x44444444;
86CHECKREG r4, 0x33333333;
87CHECKREG r5, 0x33333333;
88CHECKREG r6, 0x33333333;
89CHECKREG r7, 0x33333333;
90
91
92imm32 m0, 0x55555555;
93imm32 m1, 0x66666666;
94imm32 m2, 0x77777777;
95imm32 m3, 0x88888888;
96// m to dreg
97R0 = M0;
98R1 = M0;
99R2 = M0;
100R3 = M0;
101R4 = M1;
102R5 = M1;
103R6 = M1;
104R7 = M1;
105CHECKREG r0, 0x55555555;
106CHECKREG r1, 0x55555555;
107CHECKREG r2, 0x55555555;
108CHECKREG r3, 0x55555555;
109CHECKREG r4, 0x66666666;
110CHECKREG r5, 0x66666666;
111CHECKREG r6, 0x66666666;
112CHECKREG r7, 0x66666666;
113
114R0 = M1;
115R1 = M1;
116R2 = M1;
117R3 = M1;
118R4 = M0;
119R5 = M0;
120R6 = M0;
121R7 = M0;
122CHECKREG r0, 0x66666666;
123CHECKREG r1, 0x66666666;
124CHECKREG r2, 0x66666666;
125CHECKREG r3, 0x66666666;
126CHECKREG r4, 0x55555555;
127CHECKREG r5, 0x55555555;
128CHECKREG r6, 0x55555555;
129CHECKREG r7, 0x55555555;
130
131R0 = M2;
132R1 = M2;
133R2 = M2;
134R3 = M2;
135R4 = M3;
136R5 = M3;
137R6 = M3;
138R7 = M3;
139CHECKREG r0, 0x77777777;
140CHECKREG r1, 0x77777777;
141CHECKREG r2, 0x77777777;
142CHECKREG r3, 0x77777777;
143CHECKREG r4, 0x88888888;
144CHECKREG r5, 0x88888888;
145CHECKREG r6, 0x88888888;
146CHECKREG r7, 0x88888888;
147
148R0 = M3;
149R1 = M3;
150R2 = M3;
151R3 = M3;
152R4 = M2;
153R5 = M2;
154R6 = M2;
155R7 = M2;
156CHECKREG r0, 0x88888888;
157CHECKREG r1, 0x88888888;
158CHECKREG r2, 0x88888888;
159CHECKREG r3, 0x88888888;
160CHECKREG r4, 0x77777777;
161CHECKREG r5, 0x77777777;
162CHECKREG r6, 0x77777777;
163CHECKREG r7, 0x77777777;
164
165imm32 l0, 0x99999999;
166imm32 l1, 0xaaaaaaaa;
167imm32 l2, 0xbbbbbbbb;
168imm32 l3, 0xcccccccc;
169// l to dreg
170R0 = L0;
171R1 = L0;
172R2 = L0;
173R3 = L0;
174R4 = L1;
175R5 = L1;
176R6 = L1;
177R7 = L1;
178CHECKREG r0, 0x99999999;
179CHECKREG r1, 0x99999999;
180CHECKREG r2, 0x99999999;
181CHECKREG r3, 0x99999999;
182CHECKREG r4, 0xaaaaaaaa;
183CHECKREG r5, 0xaaaaaaaa;
184CHECKREG r6, 0xaaaaaaaa;
185CHECKREG r7, 0xaaaaaaaa;
186
187R0 = L1;
188R1 = L1;
189R2 = L1;
190R3 = L1;
191R4 = L0;
192R5 = L0;
193R6 = L0;
194R7 = L0;
195CHECKREG r0, 0xaaaaaaaa;
196CHECKREG r1, 0xaaaaaaaa;
197CHECKREG r2, 0xaaaaaaaa;
198CHECKREG r3, 0xaaaaaaaa;
199CHECKREG r4, 0x99999999;
200CHECKREG r5, 0x99999999;
201CHECKREG r6, 0x99999999;
202CHECKREG r7, 0x99999999;
203
204
205R0 = L2;
206R1 = L2;
207R2 = L2;
208R3 = L2;
209R4 = L3;
210R5 = L3;
211R6 = L3;
212R7 = L3;
213CHECKREG r0, 0xbbbbbbbb;
214CHECKREG r1, 0xbbbbbbbb;
215CHECKREG r2, 0xbbbbbbbb;
216CHECKREG r3, 0xbbbbbbbb;
217CHECKREG r4, 0xcccccccc;
218CHECKREG r5, 0xcccccccc;
219CHECKREG r6, 0xcccccccc;
220CHECKREG r7, 0xcccccccc;
221
222R0 = L3;
223R1 = L3;
224R2 = L3;
225R3 = L3;
226R4 = L2;
227R5 = L2;
228R6 = L2;
229R7 = L2;
230CHECKREG r0, 0xcccccccc;
231CHECKREG r1, 0xcccccccc;
232CHECKREG r2, 0xcccccccc;
233CHECKREG r3, 0xcccccccc;
234CHECKREG r4, 0xbbbbbbbb;
235CHECKREG r5, 0xbbbbbbbb;
236CHECKREG r6, 0xbbbbbbbb;
237CHECKREG r7, 0xbbbbbbbb;
238
239
240imm32 b0, 0xdddddddd;
241imm32 b1, 0xeeeeeeee;
242imm32 b2, 0xffffffff;
243imm32 b3, 0x12345678;
244// b to dreg
245R0 = B0;
246R1 = B0;
247R2 = B0;
248R3 = B0;
249R4 = B1;
250R5 = B1;
251R6 = B1;
252R7 = B1;
253CHECKREG r0, 0xdddddddd;
254CHECKREG r1, 0xdddddddd;
255CHECKREG r2, 0xdddddddd;
256CHECKREG r3, 0xdddddddd;
257CHECKREG r4, 0xeeeeeeee;
258CHECKREG r5, 0xeeeeeeee;
259CHECKREG r6, 0xeeeeeeee;
260CHECKREG r7, 0xeeeeeeee;
261
262R0 = B1;
263R1 = B1;
264R2 = B1;
265R3 = B1;
266R4 = B0;
267R5 = B0;
268R6 = B0;
269R7 = B0;
270CHECKREG r0, 0xeeeeeeee;
271CHECKREG r1, 0xeeeeeeee;
272CHECKREG r2, 0xeeeeeeee;
273CHECKREG r3, 0xeeeeeeee;
274CHECKREG r4, 0xdddddddd;
275CHECKREG r5, 0xdddddddd;
276CHECKREG r6, 0xdddddddd;
277CHECKREG r7, 0xdddddddd;
278
279R0 = B2;
280R1 = B2;
281R2 = B2;
282R3 = B2;
283R4 = B3;
284R5 = B3;
285R6 = B3;
286R7 = B3;
287CHECKREG r0, 0xffffffff;
288CHECKREG r1, 0xffffffff;
289CHECKREG r2, 0xffffffff;
290CHECKREG r3, 0xffffffff;
291CHECKREG r4, 0x12345678;
292CHECKREG r5, 0x12345678;
293CHECKREG r6, 0x12345678;
294CHECKREG r7, 0x12345678;
295
296R0 = B3;
297R1 = B3;
298R2 = B3;
299R3 = B3;
300R4 = B2;
301R5 = B2;
302R6 = B2;
303R7 = B2;
304CHECKREG r0, 0x12345678;
305CHECKREG r1, 0x12345678;
306CHECKREG r2, 0x12345678;
307CHECKREG r3, 0x12345678;
308CHECKREG r4, 0xffffffff;
309CHECKREG r5, 0xffffffff;
310CHECKREG r6, 0xffffffff;
311CHECKREG r7, 0xffffffff;
312
313pass
314