1 //Original:/testcases/core/c_dsp32alu_rpm/c_dsp32alu_rpm.dsp
2 // Spec Reference: dsp32alu dreg = +/- ( dreg, dreg)
5 .include "testutils.inc"
11 // ALU operations include parallel addition, subtraction
12 // and 32-bit data. If an operation use a single ALU only, it uses ALU0.
30 CHECKREG r0, 0xCACE0000;
31 CHECKREG r1, 0xF25754E3;
32 CHECKREG r2, 0xFF52AAEB;
33 CHECKREG r3, 0x113788E9;
34 CHECKREG r4, 0x2035E6E5;
35 CHECKREG r5, 0x32575CE3;
36 CHECKREG r6, 0x3F12AABB;
37 CHECKREG r7, 0x51348887;
55 CHECKREG r0, 0x3CF02202;
56 CHECKREG r1, 0x4F120000;
57 CHECKREG r2, 0x0356AADB;
58 CHECKREG r3, 0x157888D9;
59 CHECKREG r4, 0x279A66D7;
60 CHECKREG r5, 0x39BC44D5;
61 CHECKREG r6, 0x4BDE22D3;
62 CHECKREG r7, 0x5E000001;
80 CHECKREG r0, 0x84ABCBAA;
81 CHECKREG r1, 0xA5CDA988;
82 CHECKREG r2, 0x86880000;
83 CHECKREG r3, 0xEAEE8889;
84 CHECKREG r4, 0xCBEF7655;
85 CHECKREG r5, 0xED115433;
86 CHECKREG r6, 0xCDCCAAAB;
87 CHECKREG r7, 0xEEEE8889;
105 CHECKREG r0, 0x60CD1DFC;
106 CHECKREG r1, 0x6E0FFBFA;
107 CHECKREG r2, 0x7AB05202;
108 CHECKREG r3, 0x8CCC0000;
109 CHECKREG r4, 0x58BB89AB;
110 CHECKREG r5, 0x79DDABCD;
111 CHECKREG r6, 0x5A985555;
112 CHECKREG r7, 0x7BBA7777;
114 imm32 r0, 0x4537891b;
115 imm32 r1, 0x6759ab2d;
116 imm32 r2, 0x44555535;
117 imm32 r3, 0x66665747;
118 imm32 r4, 0x88789565;
119 imm32 r5, 0xaa8abb5b;
120 imm32 r6, 0xcc9cdd85;
121 imm32 r7, 0xeeaeff9f;
130 CHECKREG r0, 0xCDAF0C4A;
131 CHECKREG r1, 0xEFD1EA38;
132 CHECKREG r2, 0xCCCD4030;
133 CHECKREG r3, 0xEEDE3E1E;
134 CHECKREG r4, 0x10F00000;
135 CHECKREG r5, 0xBB7A44A5;
136 CHECKREG r6, 0xDD8C227B;
137 CHECKREG r7, 0xFF9E0061;
139 imm32 r0, 0x456b89ab;
140 imm32 r1, 0x69764bcd;
141 imm32 r2, 0x49736564;
142 imm32 r3, 0x61278394;
143 imm32 r4, 0x98876439;
144 imm32 r5, 0xaaaa0bbb;
145 imm32 r6, 0xcccc1ddd;
146 imm32 r7, 0x12346fff;
155 CHECKREG r0, 0xF0158210;
156 CHECKREG r1, 0x1420BFEE;
157 CHECKREG r2, 0xF41DA657;
158 CHECKREG r3, 0x0BD18827;
159 CHECKREG r4, 0x4331A782;
160 CHECKREG r5, 0x55540000;
161 CHECKREG r6, 0x2220E223;
162 CHECKREG r7, 0x67889001;
164 imm32 r0, 0x456739ab;
165 imm32 r1, 0x67694bcd;
166 imm32 r2, 0x03456755;
167 imm32 r3, 0x66666777;
168 imm32 r4, 0x12345699;
169 imm32 r5, 0x45678b6b;
170 imm32 r6, 0x043290d6;
171 imm32 r7, 0x1234567f;
180 CHECKREG r0, 0x4999572B;
181 CHECKREG r1, 0x6B9B4509;
182 CHECKREG r2, 0x07772981;
183 CHECKREG r3, 0x6A98295F;
184 CHECKREG r4, 0x16663A3D;
185 CHECKREG r5, 0x4999056B;
186 CHECKREG r6, 0x08640000;
187 CHECKREG r7, 0x1A98A981;
189 imm32 r0, 0xb76789ab;
190 imm32 r1, 0x6779abcd;
191 imm32 r2, 0x2b456755;
192 imm32 r3, 0x56789007;
193 imm32 r4, 0x78bab799;
194 imm32 r5, 0xaaaa0bbb;
195 imm32 r6, 0x89ab1d7d;
196 imm32 r7, 0xabcdbff7;
205 CHECKREG r0, 0x6334364C;
206 CHECKREG r1, 0x1346142A;
207 CHECKREG r2, 0xD71258A2;
208 CHECKREG r3, 0x02452FF0;
209 CHECKREG r4, 0x2487085E;
210 CHECKREG r5, 0x5677B43C;
211 CHECKREG r6, 0x3578A27A;
212 CHECKREG r7, 0x579A0000;
213 imm32 r0, 0x456739ab;
214 imm32 r1, 0x67694bcd;
215 imm32 r2, 0x03456755;
216 imm32 r3, 0x66666777;
217 imm32 r4, 0x12345699;
218 imm32 r5, 0x45678b6b;
219 imm32 r6, 0x043290d6;
220 imm32 r7, 0x1234567f;
223 R2 = R6 +|- R3 (SCO);
228 R7 = R7 +|- R4 (SCO);
229 CHECKREG r0, 0x7FFF123C;
230 CHECKREG r1, 0x553BE665;
231 CHECKREG r2, 0x1ECBE769;
232 CHECKREG r3, 0x66666777;
233 CHECKREG r4, 0x2468001A;
234 CHECKREG r5, 0x00008ACE;
235 CHECKREG r6, 0x69CF3991;
236 CHECKREG r7, 0x5665369C;
238 imm32 r0, 0xb76789ab;
239 imm32 r1, 0x6b79abcd;
240 imm32 r2, 0x2b456755;
241 imm32 r3, 0x56b89007;
242 imm32 r4, 0x78bab799;
243 imm32 r5, 0xaaab0bbb;
244 imm32 r6, 0x89abbd7d;
245 imm32 r7, 0xabcd2bf7;
247 R5 = R5 +|- R1 (SCO);
252 R1 = R0 +|- R6 (SCO);
253 R6 = R6 +|- R7 (SCO);
254 CHECKREG r0, 0x7FFF95A9;
255 CHECKREG r1, 0xD82C09AA;
256 CHECKREG r2, 0x568A0000;
257 CHECKREG r3, 0x30212DEE;
258 CHECKREG r4, 0x7655A8DB;
259 CHECKREG r5, 0x5FEE1624;
260 CHECKREG r6, 0xE18F87B4;
261 CHECKREG r7, 0xFE09DBEE;