sim: bfin: import testsuite
[deliverable/binutils-gdb.git] / sim / testsuite / sim / bfin / c_regmv_dr_dep_nostall.s
1 //Original:/proj/frio/dv/testcases/core/c_regmv_dr_dep_nostall/c_regmv_dr_dep_nostall.dsp
2 // Spec Reference: regmv dr-dep no stall
3 # mach: bfin
4
5 .include "testutils.inc"
6 start
7
8 imm32 r0, 0x00000001;
9 imm32 r1, 0x00110001;
10 imm32 r2, 0x00220002;
11 imm32 r3, 0x00330003;
12 imm32 r4, 0x00440004;
13 imm32 r5, 0x00550005;
14 imm32 r6, 0x00660006;
15 imm32 r7, 0x00770007;
16 // R-reg to R-reg: no stall
17 R0 = R0;
18 R1 = R0;
19 R2 = R1;
20 R3 = R2;
21 R4 = R3;
22 R5 = R4;
23 R6 = R5;
24 R7 = R6;
25 R0 = R7;
26
27 CHECKREG r0, 0x00000001;
28 CHECKREG r1, 0x00000001;
29 CHECKREG r2, 0x00000001;
30 CHECKREG r3, 0x00000001;
31 CHECKREG r4, 0x00000001;
32 CHECKREG r5, 0x00000001;
33 CHECKREG r6, 0x00000001;
34 CHECKREG r7, 0x00000001;
35
36 //imm32 p0, 0x00001111;
37 imm32 p1, 0x22223333;
38 imm32 p2, 0x44445555;
39 imm32 p3, 0x66667777;
40 imm32 p4, 0x88889999;
41 imm32 p5, 0xaaaabbbb;
42 imm32 fp, 0xccccdddd;
43 imm32 sp, 0xeeeeffff;
44
45 // P-reg to R-reg to I,M reg: no stall
46 R0 = P0;
47 I0 = R0;
48 R1 = P1;
49 I1 = R1;
50 R2 = P2;
51 I2 = R2;
52 R3 = P3;
53 I3 = R3;
54 R4 = P4;
55 M0 = R4;
56 R5 = P5;
57 M1 = R5;
58 R6 = FP;
59 M2 = R6;
60 R7 = SP;
61 M3 = R7;
62
63 CHECKREG r1, 0x22223333;
64 CHECKREG r2, 0x44445555;
65 CHECKREG r3, 0x66667777;
66 CHECKREG r4, 0x88889999;
67 CHECKREG r5, 0xAAAABBBB;
68 CHECKREG r6, 0xCCCCDDDD;
69 CHECKREG r7, 0xEEEEFFFF;
70
71 R0 = M3;
72 R1 = M2;
73 R2 = M1;
74 R3 = M0;
75 R4 = I3;
76 R5 = I2;
77 R6 = I1;
78 R7 = I0;
79 CHECKREG r0, 0xEEEEFFFF;
80 CHECKREG r1, 0xCCCCDDDD;
81 CHECKREG r2, 0xAAAABBBB;
82 CHECKREG r3, 0x88889999;
83 CHECKREG r4, 0x66667777;
84 CHECKREG r5, 0x44445555;
85 CHECKREG r6, 0x22223333;
86
87 imm32 i0, 0x00001111;
88 imm32 i1, 0x22223333;
89 imm32 i2, 0x44445555;
90 imm32 i3, 0x66667777;
91 imm32 m0, 0x88889999;
92 imm32 m0, 0xaaaabbbb;
93 imm32 m0, 0xccccdddd;
94 imm32 m0, 0xeeeeffff;
95
96 // I,M-reg to R-reg to P-reg: no stall
97 R0 = I0;
98 P1 = R0;
99 R1 = I1;
100 P1 = R1;
101 R2 = I2;
102 P2 = R2;
103 R3 = I3;
104 P3 = R3;
105 R4 = M0;
106 P4 = R4;
107 R5 = M1;
108 P5 = R5;
109 R6 = M2;
110 SP = R6;
111 R7 = M3;
112 FP = R7;
113
114 CHECKREG p1, 0x22223333;
115 CHECKREG p2, 0x44445555;
116 CHECKREG p3, 0x66667777;
117 CHECKREG p4, 0xEEEEFFFF;
118 CHECKREG p5, 0xAAAABBBB;
119 CHECKREG sp, 0xCCCCDDDD;
120 CHECKREG fp, 0xEEEEFFFF;
121
122 imm32 i0, 0x10001111;
123 imm32 i1, 0x12221333;
124 imm32 i2, 0x14441555;
125 imm32 i3, 0x16661777;
126 imm32 m0, 0x18881999;
127 imm32 m1, 0x1aaa1bbb;
128 imm32 m2, 0x1ccc1ddd;
129 imm32 m3, 0x1eee1fff;
130
131 // I,M-reg to R-reg to L,B reg: no stall
132 R0 = I0;
133 L0 = R0;
134 R1 = I1;
135 L1 = R1;
136 R2 = I2;
137 L2 = R2;
138 R3 = I3;
139 L3 = R3;
140 R4 = M0;
141 B0 = R4;
142 R5 = M1;
143 B1 = R5;
144 R6 = M2;
145 B2 = R6;
146 R7 = M3;
147 B3 = R7;
148
149 CHECKREG r0, 0x10001111;
150 CHECKREG r1, 0x12221333;
151 CHECKREG r2, 0x14441555;
152 CHECKREG r3, 0x16661777;
153 CHECKREG r4, 0x18881999;
154 CHECKREG r5, 0x1AAA1BBB;
155 CHECKREG r6, 0x1CCC1DDD;
156 CHECKREG r7, 0x1EEE1FFF;
157
158 R0 = L3;
159 R1 = L2;
160 R2 = L1;
161 R3 = L0;
162 R4 = B3;
163 R5 = B2;
164 R6 = B1;
165 R7 = B0;
166 CHECKREG r0, 0x16661777;
167 CHECKREG r1, 0x14441555;
168 CHECKREG r2, 0x12221333;
169 CHECKREG r3, 0x10001111;
170 CHECKREG r4, 0x1EEE1FFF;
171 CHECKREG r5, 0x1CCC1DDD;
172 CHECKREG r6, 0x1AAA1BBB;
173 CHECKREG r7, 0x18881999;
174
175 imm32 l0, 0x20003111;
176 imm32 l1, 0x22223333;
177 imm32 l2, 0x24443555;
178 imm32 l3, 0x26663777;
179 imm32 b0, 0x28883999;
180 imm32 b0, 0x2aaa3bbb;
181 imm32 b0, 0x2ccc3ddd;
182 imm32 b0, 0x2eee3fff;
183
184 // L,B-reg to R-reg to I,M reg: no stall
185 R0 = L0;
186 I0 = R0;
187 R1 = L1;
188 I1 = R1;
189 R2 = L2;
190 I2 = R2;
191 R3 = L3;
192 I3 = R3;
193 R4 = B0;
194 M0 = R4;
195 R5 = B1;
196 M1 = R5;
197 R6 = B2;
198 M2 = R6;
199 R7 = B3;
200 M3 = R7;
201
202 R0 = M3;
203 R1 = M2;
204 R2 = M1;
205 R3 = M0;
206 R4 = I3;
207 R5 = I2;
208 R6 = I1;
209 R7 = I0;
210 CHECKREG r0, 0x1EEE1FFF;
211 CHECKREG r1, 0x1CCC1DDD;
212 CHECKREG r2, 0x1AAA1BBB;
213 CHECKREG r3, 0x2EEE3FFF;
214 CHECKREG r4, 0x26663777;
215 CHECKREG r5, 0x24443555;
216 CHECKREG r6, 0x22223333;
217 CHECKREG r7, 0x20003111;
218
219 imm32 r0, 0x00000030;
220 imm32 r1, 0x00000031;
221 imm32 r2, 0x00000003;
222 imm32 r3, 0x00330003;
223 imm32 r4, 0x00440004;
224 imm32 r5, 0x00550005;
225 imm32 r6, 0x00660006;
226 imm32 r7, 0x00770007;
227
228 // R-reg to R-reg to sysreg to Reg: no stall
229 R3 = R0;
230 ASTAT = R3;
231 R6 = ASTAT;
232 R4 = R1;
233 RETS = R4;
234 R7 = RETS;
235
236 CHECKREG r0, 0x00000030;
237 CHECKREG r1, 0x00000031;
238 CHECKREG r2, 0x00000003;
239 CHECKREG r3, 0x00000030;
240 CHECKREG r4, 0x00000031;
241 CHECKREG r5, 0x00550005;
242 CHECKREG r6, 0x00000030;
243 CHECKREG r7, 0x00000031;
244
245 pass
This page took 0.035671 seconds and 4 git commands to generate.