c_dsp32alu_rp.s revision 1.1.1.1 1 //Original:/testcases/core/c_dsp32alu_rp/c_dsp32alu_rp.dsp
2 // Spec Reference: dsp32alu
3 # mach: bfin
4
5 .include "testutils.inc"
6 start
7
8
9
10
11 imm32 r0, 0xa5678911;
12 imm32 r1, 0x2a89ab1d;
13 imm32 r2, 0x34a45515;
14 imm32 r3, 0x466a7717;
15 imm32 r4, 0x5567891b;
16 imm32 r5, 0x6789ab1d;
17 imm32 r6, 0x74445a15;
18 imm32 r7, 0x866677a7;
19 R0 = R0 + R0 (NS);
20 R1 = R0 + R1 (NS);
21 R2 = R0 + R2 (NS);
22 R3 = R0 + R3 (NS);
23 R4 = R0 + R4 (NS);
24 R5 = R0 + R5 (NS);
25 R6 = R0 + R6 (NS);
26 R7 = R0 + R7 (NS);
27 CHECKREG r0, 0x4ACF1222;
28 CHECKREG r1, 0x7558BD3F;
29 CHECKREG r2, 0x7F736737;
30 CHECKREG r3, 0x91398939;
31 CHECKREG r4, 0xA0369B3D;
32 CHECKREG r5, 0xB258BD3F;
33 CHECKREG r6, 0xBF136C37;
34 CHECKREG r7, 0xD13589C9;
35
36 imm32 r0, 0xabc78911;
37 imm32 r1, 0x27c9ab1d;
38 imm32 r2, 0x344c5515;
39 imm32 r3, 0x4666c717;
40 imm32 r4, 0x5567c91b;
41 imm32 r5, 0x6789ab1d;
42 imm32 r6, 0x74445c15;
43 imm32 r7, 0x866677c7;
44 R0 = R1 + R0 (NS);
45 R1 = R1 + R1 (NS);
46 R2 = R1 + R2 (NS);
47 R3 = R1 + R3 (NS);
48 R4 = R1 + R4 (NS);
49 R5 = R1 + R5 (NS);
50 R6 = R1 + R6 (NS);
51 R7 = R1 + R7 (NS);
52 CHECKREG r0, 0xD391342E;
53 CHECKREG r1, 0x4F93563A;
54 CHECKREG r2, 0x83DFAB4F;
55 CHECKREG r3, 0x95FA1D51;
56 CHECKREG r4, 0xA4FB1F55;
57 CHECKREG r5, 0xB71D0157;
58 CHECKREG r6, 0xC3D7B24F;
59 CHECKREG r7, 0xD5F9CE01;
60
61 imm32 r0, 0xdd678911;
62 imm32 r1, 0x2789ab1d;
63 imm32 r2, 0x34445515;
64 imm32 r3, 0x46d67717;
65 imm32 r4, 0x5567891b;
66 imm32 r5, 0x678dab1d;
67 imm32 r6, 0x7444d515;
68 imm32 r7, 0x86667d77;
69 R0 = R2 + R0 (NS);
70 R1 = R2 + R1 (NS);
71 R2 = R2 + R2 (NS);
72 R3 = R2 + R3 (NS);
73 R4 = R2 + R4 (NS);
74 R5 = R2 + R5 (NS);
75 R6 = R2 + R6 (NS);
76 R7 = R2 + R7 (NS);
77 CHECKREG r0, 0x11ABDE26;
78 CHECKREG r1, 0x5BCE0032;
79 CHECKREG r2, 0x6888AA2A;
80 CHECKREG r3, 0xAF5F2141;
81 CHECKREG r4, 0xBDF03345;
82 CHECKREG r5, 0xD0165547;
83 CHECKREG r6, 0xDCCD7F3F;
84 CHECKREG r7, 0xEEEF27A1;
85
86 imm32 r0, 0x15678911;
87 imm32 r1, 0x2789ab1d;
88 imm32 r2, 0x34445515;
89 imm32 r3, 0x46667717;
90 imm32 r4, 0x5567891b;
91 imm32 r5, 0x6789ab1d;
92 imm32 r6, 0x74445515;
93 imm32 r7, 0x86667777;
94 R0 = R3 + R0 (NS);
95 R1 = R3 + R1 (NS);
96 R2 = R3 + R2 (NS);
97 R3 = R3 + R3 (NS);
98 R4 = R3 + R4 (NS);
99 R5 = R3 + R5 (NS);
100 R6 = R3 + R6 (NS);
101 R7 = R3 + R7 (NS);
102 CHECKREG r0, 0x5BCE0028;
103 CHECKREG r1, 0x6DF02234;
104 CHECKREG r2, 0x7AAACC2C;
105 CHECKREG r3, 0x8CCCEE2E;
106 CHECKREG r4, 0xE2347749;
107 CHECKREG r5, 0xF456994B;
108 CHECKREG r6, 0x01114343;
109 CHECKREG r7, 0x133365A5;
110
111 imm32 r0, 0xee678911;
112 imm32 r1, 0x2789ab1d;
113 imm32 r2, 0x34e45515;
114 imm32 r3, 0x46667717;
115 imm32 r4, 0x556e891b;
116 imm32 r5, 0x6789eb1d;
117 imm32 r6, 0x74445515;
118 imm32 r7, 0x86667e77;
119 R0 = R4 + R0 (NS);
120 R1 = R4 + R1 (NS);
121 R2 = R4 + R2 (NS);
122 R3 = R4 + R3 (NS);
123 R4 = R4 + R4 (NS);
124 R5 = R4 + R5 (NS);
125 R6 = R4 + R6 (NS);
126 R7 = R4 + R7 (NS);
127 CHECKREG r0, 0x43D6122C;
128 CHECKREG r1, 0x7CF83438;
129 CHECKREG r2, 0x8A52DE30;
130 CHECKREG r3, 0x9BD50032;
131 CHECKREG r4, 0xAADD1236;
132 CHECKREG r5, 0x1266FD53;
133 CHECKREG r6, 0x1F21674B;
134 CHECKREG r7, 0x314390AD;
135
136 imm32 r0, 0x15678911;
137 imm32 r1, 0x2789ab1d;
138 imm32 r2, 0x34445515;
139 imm32 r3, 0x46667717;
140 imm32 r4, 0x5567891b;
141 imm32 r5, 0x6789ab1d;
142 imm32 r6, 0x74445515;
143 imm32 r7, 0x86667777;
144 R0 = R5 + R0 (NS);
145 R1 = R5 + R1 (NS);
146 R2 = R5 + R2 (NS);
147 R3 = R5 + R3 (NS);
148 R4 = R5 + R4 (NS);
149 R5 = R5 + R5 (NS);
150 R6 = R5 + R6 (NS);
151 R7 = R5 + R7 (NS);
152 CHECKREG r0, 0x7CF1342E;
153 CHECKREG r1, 0x8F13563A;
154 CHECKREG r2, 0x9BCE0032;
155 CHECKREG r3, 0xADF02234;
156 CHECKREG r4, 0xBCF13438;
157 CHECKREG r5, 0xCF13563A;
158 CHECKREG r6, 0x4357AB4F;
159 CHECKREG r7, 0x5579CDB1;
160
161 imm32 r0, 0xff678911;
162 imm32 r1, 0x2789ab1d;
163 imm32 r2, 0x34f45515;
164 imm32 r3, 0x46667717;
165 imm32 r4, 0x556f891b;
166 imm32 r5, 0x6789ab1d;
167 imm32 r6, 0x7444f515;
168 imm32 r7, 0x86667f77;
169 R0 = R6 + R0 (NS);
170 R1 = R6 + R1 (NS);
171 R2 = R6 + R2 (NS);
172 R3 = R6 + R3 (NS);
173 R4 = R6 + R4 (NS);
174 R5 = R6 + R5 (NS);
175 R6 = R6 + R6 (NS);
176 R7 = R6 + R7 (NS);
177 CHECKREG r0, 0x73AC7E26;
178 CHECKREG r1, 0x9BCEA032;
179 CHECKREG r2, 0xA9394A2A;
180 CHECKREG r3, 0xBAAB6C2C;
181 CHECKREG r4, 0xC9B47E30;
182 CHECKREG r5, 0xDBCEA032;
183 CHECKREG r6, 0xE889EA2A;
184 CHECKREG r7, 0x6EF069A1;
185
186 imm32 r0, 0xed678911;
187 imm32 r1, 0x27d9ab1d;
188 imm32 r2, 0x344d5515;
189 imm32 r3, 0x46667717;
190 imm32 r4, 0x5567c91b;
191 imm32 r5, 0x6789ab1d;
192 imm32 r6, 0x74445c15;
193 imm32 r7, 0x866677c7;
194 R0 = R7 + R0 (NS);
195 R1 = R7 + R1 (NS);
196 R2 = R7 + R2 (NS);
197 R3 = R7 + R3 (NS);
198 R4 = R7 + R4 (NS);
199 R5 = R7 + R5 (NS);
200 R6 = R7 + R6 (NS);
201 R7 = R7 + R7 (NS);
202 CHECKREG r0, 0x73CE00D8;
203 CHECKREG r1, 0xAE4022E4;
204 CHECKREG r2, 0xBAB3CCDC;
205 CHECKREG r3, 0xCCCCEEDE;
206 CHECKREG r4, 0xDBCE40E2;
207 CHECKREG r5, 0xEDF022E4;
208 CHECKREG r6, 0xFAAAD3DC;
209 CHECKREG r7, 0x0CCCEF8E;
210
211 imm32 r0, 0x15678911;
212 imm32 r1, 0x2789ab1d;
213 imm32 r2, 0x34445515;
214 imm32 r3, 0x46667717;
215 imm32 r4, 0x5567891b;
216 imm32 r5, 0x6789ab1d;
217 imm32 r6, 0x74445515;
218 imm32 r7, 0x86667777;
219 R3 = R1 + R4 (S);
220 R7 = R4 + R6 (S);
221 R2 = R7 + R7 (S);
222 R4 = R5 + R0 (S);
223 R5 = R3 + R1 (S);
224 R6 = R2 + R3 (S);
225 R0 = R0 + R2 (S);
226 R1 = R6 + R5 (S);
227 CHECKREG r0, 0x7FFFFFFF;
228 CHECKREG r1, 0x7FFFFFFF;
229 CHECKREG r2, 0x7FFFFFFF;
230 CHECKREG r3, 0x7CF13438;
231 CHECKREG r4, 0x7CF1342E;
232 CHECKREG r5, 0x7FFFFFFF;
233 CHECKREG r6, 0x7FFFFFFF;
234 CHECKREG r7, 0x7FFFFFFF;
235
236 imm32 r0, 0x55678911;
237 imm32 r1, 0x6a89ab1d;
238 imm32 r2, 0x74d45515;
239 imm32 r3, 0x866f7717;
240 imm32 r4, 0x5567c91b;
241 imm32 r5, 0x6789ab1d;
242 imm32 r6, 0x74445515;
243 imm32 r7, 0x86667777;
244 R3 = R3 + R3 (S);
245 R1 = R7 + R6 (S);
246 R4 = R1 + R2 (S);
247 R7 = R4 + R0 (S);
248 R5 = R6 + R4 (S);
249 R2 = R5 + R5 (S);
250 R6 = R2 + R1 (S);
251 R0 = R0 + R7 (S);
252 CHECKREG r0, 0x7FFFFFFF;
253 CHECKREG r1, 0xFAAACC8C;
254 CHECKREG r2, 0x7FFFFFFF;
255 CHECKREG r3, 0x80000000;
256 CHECKREG r4, 0x6F7F21A1;
257 CHECKREG r5, 0x7FFFFFFF;
258 CHECKREG r6, 0x7AAACC8B;
259 CHECKREG r7, 0x7FFFFFFF;
260
261
262 pass
263