1 //Original:/testcases/core/c_dsp32mac_a1a0_iuw32/c_dsp32mac_a1a0_iuw32.dsp
2 // Spec Reference: dsp32mac a1 a0 iuw32 MNOP
5 .include "testutils.inc"
17 // test the (signed integer: no ) I=1
26 A1 = R0.L * R7.L, A0 = R0.L * R7.L (IS);
29 A1 = R6.L * R1.L, A0 += R6.L * R1.H (IS);
32 A1 += R2.L * R3.L, A0 = R2.H * R3.L (IS);
35 A1 += R5.L * R4.L, A0 += R5.H * R4.H (IS);
38 CHECKREG r0, 0x175B7218;
39 CHECKREG r1, 0x1BDDC43F;
40 CHECKREG r2, 0xE7B2F96C;
41 CHECKREG r3, 0xE41233D3;
42 CHECKREG r4, 0xDC3712BF;
43 CHECKREG r5, 0x0AAB87A4;
44 CHECKREG r6, 0x20E26A9B;
45 CHECKREG r7, 0x175B7218;
55 A1 = R2.L * R7.H, A0 += R2.L * R7.L (IS);
58 A1 = R6.L * R1.H, A0 += R6.L * R1.H (IS);
61 A1 += R0.L * R5.H, A0 = R0.H * R5.L (IS);
64 A1 += R4.L * R3.H, A0 = R4.H * R3.H (IS);
67 CHECKREG r0, 0x015D7C5C;
68 CHECKREG r1, 0x098F3EF5;
69 CHECKREG r2, 0x2B5D8F9A;
70 CHECKREG r3, 0x53474FE6;
71 CHECKREG r4, 0xE1CF7E79;
72 CHECKREG r5, 0x2B2BE65D;
73 CHECKREG r6, 0x34ECCE8F;
74 CHECKREG r7, 0xE262970E;
84 A1 += R4.H * R0.L, A0 = R4.L * R0.L (IS);
87 A1 = R3.H * R1.L, A0 += R3.L * R1.H (IS);
90 A1 = R2.H * R6.L, A0 = R2.H * R6.L (IS);
93 A1 += R7.H * R5.L, A0 += R7.H * R5.H (IS);
96 CHECKREG r0, 0x6FCF3826;
97 CHECKREG r1, 0x1BAA0C1F;
98 CHECKREG r2, 0x0E29B1DA;
99 CHECKREG r3, 0xC9B44442;
100 CHECKREG r4, 0xDA8DCA68;
101 CHECKREG r5, 0x09AD7526;
102 CHECKREG r6, 0x0E29B1DA;
103 CHECKREG r7, 0xF4BD2295;
105 imm32 r0, 0x15345678;
106 imm32 r1, 0x23556789;
107 imm32 r2, 0x3455789a;
108 imm32 r3, 0x45675912;
109 imm32 r4, 0x56789523;
110 imm32 r5, 0x67891234;
111 imm32 r6, 0xa1234557;
112 imm32 r7, 0xc1234565;
113 A1 += R0.H * R1.H, A0 = R0.L * R1.L (IS);
116 A1 = R5.H * R6.H, A0 = R5.L * R6.H (IS);
119 A1 = R4.H * R3.H, A0 += R4.H * R3.L (IS);
122 A1 = R2.H * R7.H, A0 = R2.H * R7.H (IS);
125 CHECKREG r0, 0x22F88E38;
126 CHECKREG r1, 0x0C9A9B6A;
127 CHECKREG r2, 0xF3263C9F;
128 CHECKREG r3, 0x17712248;
129 CHECKREG r4, 0x1756FD8C;
130 CHECKREG r5, 0xF941311C;
131 CHECKREG r6, 0xD9A250BB;
132 CHECKREG r7, 0xF3263C9F;
134 // test the (unsigned or integer :no ) U=1
135 imm32 r0, 0x62345678;
136 imm32 r1, 0x26456789;
137 imm32 r2, 0x3466789a;
138 imm32 r3, 0x45668912;
139 imm32 r4, 0x56786123;
140 imm32 r5, 0x67891634;
141 imm32 r6, 0xa1234567;
142 imm32 r7, 0xc1234566;
143 A1 = R0.L * R2.L, A0 = R0.L * R2.L (FU);
146 A1 = R1.L * R3.L, A0 += R1.L * R3.H (FU);
149 A1 += R4.L * R6.L, A0 = R4.H * R6.L (FU);
152 A1 += R5.L * R7.L, A0 += R5.H * R7.H (FU);
155 CHECKREG r0, 0x28BC4430;
156 CHECKREG r1, 0x44CD71C6;
157 CHECKREG r2, 0x28BC4430;
158 CHECKREG r3, 0x376F98A2;
159 CHECKREG r4, 0x17712248;
160 CHECKREG r5, 0x658D9303;
161 CHECKREG r6, 0x51C51CB7;
162 CHECKREG r7, 0x57C9F96F;
164 imm32 r0, 0x12345678;
165 imm32 r1, 0x73456789;
166 imm32 r2, 0x8456789a;
167 imm32 r3, 0x49998912;
168 imm32 r4, 0x56782123;
169 imm32 r5, 0x67891234;
170 imm32 r6, 0xa1234577;
171 imm32 r7, 0xc1234567;
172 A1 = R2.L * R3.H, A0 = R2.L * R3.L (FU);
175 A1 = R0.L * R1.H, A0 = R0.L * R1.H (FU);
178 A1 += R4.L * R5.H, A0 = R4.H * R5.L (FU);
181 A1 = R7.L * R6.H, A0 += R7.H * R6.H (FU);
184 CHECKREG r0, 0x26EF3658;
185 CHECKREG r1, 0x26EF3658;
186 CHECKREG r2, 0x4092E4D4;
187 CHECKREG r3, 0x22ABFE0A;
188 CHECKREG r4, 0x06260060;
189 CHECKREG r5, 0x34560713;
190 CHECKREG r6, 0x7FB76B29;
191 CHECKREG r7, 0x2BAF4415;
193 imm32 r0, 0x1234567a;
194 imm32 r1, 0x2345678a;
195 imm32 r2, 0x3456a89a;
196 imm32 r3, 0x4a678912;
197 imm32 r4, 0xa6789123;
198 imm32 r5, 0xc7891234;
199 imm32 r6, 0xa1234567;
200 imm32 r7, 0xc1234567;
201 A1 = R5.H * R4.L, A0 = R5.L * R4.L (FU);
204 A1 = R3.H * R2.L, A0 = R3.L * R2.H (FU);
207 A1 = R1.H * R0.L, A0 = R1.H * R0.L (FU);
210 A1 = R7.H * R6.L, A0 = R7.H * R6.H (FU);
213 CHECKREG r0, 0x0BE9FCE2;
214 CHECKREG r1, 0x0BE9FCE2;
215 CHECKREG r2, 0x1C05B40C;
216 CHECKREG r3, 0x310059F6;
217 CHECKREG r4, 0x0A51F11C;
218 CHECKREG r5, 0x711FE0BB;
219 CHECKREG r6, 0x79916AC9;
220 CHECKREG r7, 0x345C2415;
222 imm32 r0, 0xb2345678;
223 imm32 r1, 0x2b456789;
224 imm32 r2, 0x34b6789a;
225 imm32 r3, 0xc56b8912;
226 imm32 r4, 0x5c78b123;
227 imm32 r5, 0x67c91b34;
228 imm32 r6, 0xa12345b7;
229 imm32 r7, 0xc123456b;
230 A1 = R6.H * R7.H, A0 = R6.L * R7.L (FU);
233 A1 = R5.H * R4.H, A0 = R5.L * R4.H (FU);
236 A1 = R2.H * R3.H, A0 = R2.H * R3.L (FU);
239 A1 = R0.H * R1.H, A0 = R0.H * R1.H (FU);
242 CHECKREG r0, 0x1E1EC404;
243 CHECKREG r1, 0x1E1EC404;
244 CHECKREG r2, 0x1C391ACC;
245 CHECKREG r3, 0x28A61612;
246 CHECKREG r4, 0x09D37060;
247 CHECKREG r5, 0x257CE238;
248 CHECKREG r6, 0x12E7767D;
249 CHECKREG r7, 0x79916AC9;
252 imm32 r0, 0x123df178;
253 imm32 r1, 0x2245e189;
254 imm32 r2, 0x3256719a;
255 imm32 r3, 0x42678112;
256 imm32 r4, 0xa2789123;
257 imm32 r5, 0x62891134;
258 imm32 r6, 0xa2b34167;
259 imm32 r7, 0xc22d4167;
260 A1 = R0.L * R4.L, A0 += R0.L * R4.L (W32);
263 A1 = R1.L * R5.L, A0 += R1.L * R5.H (W32);
266 A1 = R2.L * R6.L, A0 += R2.H * R6.L (W32);
269 A1 = R3.L * R4.L, A0 += R3.H * R4.H (W32);
272 CHECKREG r0, 0x2AB4BAD4;
273 CHECKREG r1, 0x13410376;
274 CHECKREG r2, 0x2CF930AA;
275 CHECKREG r3, 0x33802490;
276 CHECKREG r4, 0x091C5540;
277 CHECKREG r5, 0xFBE7D1A8;
278 CHECKREG r6, 0x3A0B9DEC;
279 CHECKREG r7, 0xC22D4167;
281 imm32 r0, 0x553df344;
282 imm32 r1, 0x2525e349;
283 imm32 r2, 0x3252734a;
284 imm32 r3, 0x42658342;
285 imm32 r4, 0xa5789343;
286 imm32 r5, 0x63591344;
287 imm32 r6, 0xa3b54347;
288 imm32 r7, 0xc32d4347;
289 A1 += R0.L * R4.H, A0 = R0.L * R4.L (W32);
292 A1 += R1.L * R5.H, A0 = R1.L * R5.H (W32);
295 A1 += R2.L * R6.H, A0 = R2.H * R6.L (W32);
298 A1 += R3.L * R4.H, A0 = R3.H * R4.H (W32);
301 CHECKREG r0, 0x0AD16D98;
302 CHECKREG r1, 0xE9B67EC2;
303 CHECKREG r2, 0x1A72D57C;
304 CHECKREG r3, 0x0965C3AC;
305 CHECKREG r4, 0x970BD9DE;
306 CHECKREG r5, 0xFBD48BC2;
307 CHECKREG r6, 0xA8B3CE66;
308 CHECKREG r7, 0xC32D4347;
310 imm32 r0, 0x163df678;
311 imm32 r1, 0x2625e689;
312 imm32 r2, 0x3652769a;
313 imm32 r3, 0x46628612;
314 imm32 r4, 0xa6789623;
315 imm32 r5, 0x63691634;
316 imm32 r6, 0xa3634367;
317 imm32 r7, 0xc3264667;
318 A1 += R0.H * R4.L, A0 = R0.L * R4.L (W32);
321 A1 = R1.H * R5.L, A0 += R1.L * R5.H (W32);
324 A1 += R2.H * R6.L, A0 = R2.H * R6.L (W32);
327 A1 += R3.H * R4.L, A0 += R3.H * R4.H (W32);
330 CHECKREG r0, 0x07E204D0;
331 CHECKREG r1, 0xF41B1732;
332 CHECKREG r2, 0x1C9AA1FC;
333 CHECKREG r3, 0xD8C785D8;
334 CHECKREG r4, 0x5DCEA034;
335 CHECKREG r5, 0x069DDB08;
336 CHECKREG r6, 0x23387D04;
337 CHECKREG r7, 0xC3264667;
339 imm32 r0, 0x123df378;
340 imm32 r1, 0x2225e389;
341 imm32 r2, 0x3252739a;
342 imm32 r3, 0x42628312;
343 imm32 r4, 0xa3789323;
344 imm32 r5, 0x63891334;
345 imm32 r6, 0xa3b34367;
346 imm32 r7, 0xc32d4367;
347 A1 += R0.H * R4.H, A0 = R0.L * R4.L (W32);
350 A1 = R1.H * R5.H, A0 = R1.L * R5.H (W32);
353 A1 += R2.H * R6.H, A0 = R2.H * R6.L (W32);
356 A1 = R3.H * R4.H, A0 = R3.H * R4.H (W32);
359 CHECKREG r0, 0x0AA862D0;
360 CHECKREG r1, 0xE9DD7EA2;
361 CHECKREG r2, 0x1A7F69FC;
362 CHECKREG r3, 0x29CFB5BC;
363 CHECKREG r4, 0x29CFB5BC;
364 CHECKREG r5, 0x1A8D299A;
365 CHECKREG r6, 0xF643F446;
366 CHECKREG r7, 0xC32D4367;
368 imm32 r0, 0x123df678;
369 imm32 r1, 0x2345e789;
370 imm32 r2, 0x34567b9a;
371 imm32 r3, 0x45678c12;
372 imm32 r4, 0xa6789123;
373 imm32 r5, 0x6c891234;
374 imm32 r6, 0xa1b34567;
375 imm32 r7, 0xc12d4567;
376 A1 = R0.H * R4.L, A0 = R0.H * R4.L (W32);
379 A1 = R1.H * R5.L, A0 = R1.H * R5.H (W32);
382 A1 = R2.H * R6.H, A0 = R2.L * R6.L (W32);
385 A1 = R3.H * R4.H, A0 = R3.L * R4.H (W32);
388 CHECKREG r0, 0xF03416AE;
389 CHECKREG r1, 0x1DE7F7DA;
390 CHECKREG r2, 0x430479EC;
391 CHECKREG r3, 0x0E4EA750;
392 CHECKREG r4, 0xF76F51D8;
393 CHECKREG r5, 0x05040808;
394 CHECKREG r6, 0xD9715C44;
395 CHECKREG r7, 0xC12D4567;
398 imm32 r0, 0x623df17a;
399 imm32 r1, 0x7245e18b;
400 imm32 r2, 0x8256719a;
401 imm32 r3, 0x92678112;
402 imm32 r4, 0xa2789123;
403 imm32 r5, 0xb2891134;
404 imm32 r6, 0xc2b34167;
405 imm32 r7, 0xd22d4167;
406 A0 += R0.L * R4.L (W32);
409 A0 = R1.L * R5.H (W32);
412 A0 += R2.H * R6.L (W32);
415 A0 = R3.H * R7.H (W32);
418 CHECKREG r0, 0x1AE2E2AC;
419 CHECKREG r1, 0x126EB2C6;
420 CHECKREG r2, 0xD2393FFA;
421 CHECKREG r3, 0x273C7436;
422 CHECKREG r4, 0xF76F51D8;
423 CHECKREG r5, 0xF76F51D8;
424 CHECKREG r6, 0xF76F51D8;
425 CHECKREG r7, 0xF76F51D8;
427 imm32 r0, 0xa23df17a;
428 imm32 r1, 0x7b45e18b;
429 imm32 r2, 0x82c6719a;
430 imm32 r3, 0x126d8112;
431 imm32 r4, 0xc278e123;
432 imm32 r5, 0xb2491f34;
433 imm32 r6, 0x89b54167;
434 imm32 r7, 0xd25d6767;
435 A1 += R0.L * R4.L (W32);
438 A1 = R1.L * R5.H (W32);
441 A1 += R2.H * R6.L (W32);
444 A1 = R3.H * R7.H (W32);
447 CHECKREG r0, 0x273C7436;
448 CHECKREG r1, 0x273C7436;
449 CHECKREG r2, 0x273C7436;
450 CHECKREG r3, 0x273C7436;
451 CHECKREG r4, 0xFAEFCD34;
452 CHECKREG r5, 0x127DED46;
453 CHECKREG r6, 0xD281B49A;
454 CHECKREG r7, 0xF96E3732;
456 // test MM=1(Mix mode), MAC1 executes a mixed mode multiplication: (one input is
457 // signed, the other input is unsigned
458 imm32 r0, 0x22345628;
459 imm32 r1, 0x23456729;
460 imm32 r2, 0x3456782a;
461 imm32 r3, 0x45678922;
462 imm32 r4, 0x56789123;
463 imm32 r5, 0x67891224;
464 imm32 r6, 0xa1234527;
465 imm32 r7, 0xc1234567;
466 A1 += R0.L * R7.L (M), A0 = R0.L * R7.L (IS);
469 A1 = R6.L * R1.L (M), A0 += R6.L * R1.H (IS);
472 A1 = R2.L * R3.L (M), A0 = R2.H * R3.L (IS);
475 A1 += R5.L * R4.L (M), A0 += R5.H * R4.H (IS);
478 CHECKREG r0, 0x175B7218;
479 CHECKREG r1, 0x1BDDC43F;
480 CHECKREG r2, 0xE7B2F96C;
481 CHECKREG r3, 0x405E6F94;
482 CHECKREG r4, 0x4AA74E80;
483 CHECKREG r5, 0x0AAB87A4;
484 CHECKREG r6, 0x20E26A9B;
485 CHECKREG r7, 0x10C9A94A;
487 imm32 r0, 0x13335678;
488 imm32 r1, 0x23436789;
489 imm32 r2, 0x3353789a;
490 imm32 r3, 0xa3638912;
491 imm32 r4, 0x53739123;
492 imm32 r5, 0x63831234;
493 imm32 r6, 0xa1234567;
494 imm32 r7, 0xc1234567;
495 A1 += R2.L * R7.H (M), A0 = R2.L * R7.L (IS);
498 A1 = R6.L * R1.H (M), A0 = R6.L * R1.H (IS);
501 A1 += R0.L * R5.H (M), A0 = R0.H * R5.L (IS);
504 A1 = R4.L * R3.H (M), A0 += R4.H * R3.H (IS);
507 CHECKREG r0, 0x015D7C5C;
508 CHECKREG r1, 0x098F3EF5;
509 CHECKREG r2, 0x20B207F6;
510 CHECKREG r3, 0xB93E6989;
511 CHECKREG r4, 0xE32CFAD5;
512 CHECKREG r5, 0x2B2BE65D;
513 CHECKREG r6, 0x098F3EF5;
514 CHECKREG r7, 0xA5A3E58E;
516 imm32 r0, 0x14345678;
517 imm32 r1, 0x24456789;
518 imm32 r2, 0x3456789a;
519 imm32 r3, 0x44678912;
520 imm32 r4, 0x54789123;
521 imm32 r5, 0x67891244;
522 imm32 r6, 0xa1234547;
523 imm32 r7, 0xc1234547;
524 A1 = R4.H * R0.L (M), A0 = R4.L * R0.L (IS);
527 A1 = R3.H * R1.L (M), A0 = R3.L * R1.H (IS);
530 A1 = R2.H * R6.L (M), A0 = R2.H * R6.L (IS);
533 A1 = R7.H * R5.L (M), A0 = R7.H * R5.H (IS);
536 CHECKREG r0, 0x1C87E840;
537 CHECKREG r1, 0x1BAA0C1F;
538 CHECKREG r2, 0x0E29B1DA;
539 CHECKREG r3, 0xEF2679DA;
540 CHECKREG r4, 0xDA8DCA68;
541 CHECKREG r5, 0xFB83C34C;
542 CHECKREG r6, 0x0E29B1DA;
543 CHECKREG r7, 0xE69370BB;
545 imm32 r0, 0x15345678;
546 imm32 r1, 0x23556789;
547 imm32 r2, 0x3455789a;
548 imm32 r3, 0x45675912;
549 imm32 r4, 0x56789523;
550 imm32 r5, 0x67891234;
551 imm32 r6, 0xa1234557;
552 imm32 r7, 0xc1234565;
553 A1 = R0.H * R1.H (M), A0 = R0.L * R1.L (IS);
556 A1 = R5.H * R6.H (M), A0 = R5.L * R6.H (IS);
559 A1 += R4.H * R3.H (M), A0 = R4.H * R3.L (IS);
562 A1 += R2.H * R7.H (M), A0 = R2.H * R7.H (IS);
565 CHECKREG r0, 0x22F88E38;
566 CHECKREG r1, 0x02ED2644;
567 CHECKREG r2, 0xF3263C9F;
568 CHECKREG r3, 0x589C7303;
569 CHECKREG r4, 0x1E15CC70;
570 CHECKREG r5, 0xF941311C;
571 CHECKREG r6, 0x412B50BB;
572 CHECKREG r7, 0x8017AFA2;
574 // test the (unsigned or integer :no ) U=1
575 imm32 r0, 0x62345678;
576 imm32 r1, 0x26456789;
577 imm32 r2, 0x3466789a;
578 imm32 r3, 0x45668912;
579 imm32 r4, 0x56786123;
580 imm32 r5, 0x67891634;
581 imm32 r6, 0xa1234567;
582 imm32 r7, 0xc1234566;
583 A1 = R0.L * R2.L (M), A0 = R0.L * R2.L (FU);
586 A1 += R1.L * R3.L (M), A0 = R1.L * R3.H (FU);
589 A1 = R4.L * R6.L (M), A0 = R4.H * R6.L (FU);
592 A1 += R5.L * R7.L (M), A0 = R5.H * R7.H (FU);
595 CHECKREG r0, 0x28BC4430;
596 CHECKREG r1, 0x1C112D96;
597 CHECKREG r2, 0x28BC4430;
598 CHECKREG r3, 0x602BDCD2;
599 CHECKREG r4, 0x17712248;
600 CHECKREG r5, 0x4E1C70BB;
601 CHECKREG r6, 0x1A558415;
602 CHECKREG r7, 0x205A60CD;
604 imm32 r0, 0x12345678;
605 imm32 r1, 0x73456789;
606 imm32 r2, 0x8456789a;
607 imm32 r3, 0x49998912;
608 imm32 r4, 0x56782123;
609 imm32 r5, 0x67891234;
610 imm32 r6, 0xa1234577;
611 imm32 r7, 0xc1234567;
612 A1 = R2.L * R3.H (M), A0 = R2.L * R3.L (FU);
615 A1 = R0.L * R1.H (M), A0 = R0.L * R1.H (FU);
618 A1 = R4.L * R5.H (M), A0 = R4.H * R5.L (FU);
621 A1 = R7.L * R6.H (M), A0 = R7.H * R6.H (FU);
624 CHECKREG r0, 0x26EF3658;
625 CHECKREG r1, 0x26EF3658;
626 CHECKREG r2, 0x4092E4D4;
627 CHECKREG r3, 0x22ABFE0A;
628 CHECKREG r4, 0x06260060;
629 CHECKREG r5, 0x0D66D0BB;
630 CHECKREG r6, 0x79916AC9;
631 CHECKREG r7, 0x2BAF4415;
633 imm32 r0, 0x1234567a;
634 imm32 r1, 0x2345678a;
635 imm32 r2, 0x3456a89a;
636 imm32 r3, 0x4a678912;
637 imm32 r4, 0xa6789123;
638 imm32 r5, 0xc7891234;
639 imm32 r6, 0xa1234567;
640 imm32 r7, 0xc1234567;
641 A1 = R5.H * R4.L (M), A0 += R5.L * R4.L (FU);
644 A1 = R3.H * R2.L (M), A0 = R3.L * R2.H (FU);
647 A1 = R1.H * R0.L (M), A0 += R1.H * R0.L (FU);
650 A1 = R7.H * R6.L (M), A0 = R7.H * R6.H (FU);
653 CHECKREG r0, 0x27EFB0EE;
654 CHECKREG r1, 0x0BE9FCE2;
655 CHECKREG r2, 0x1C05B40C;
656 CHECKREG r3, 0x310059F6;
657 CHECKREG r4, 0x83E35BE5;
658 CHECKREG r5, 0xDFFCE0BB;
659 CHECKREG r6, 0x79916AC9;
660 CHECKREG r7, 0xEEF52415;
662 imm32 r0, 0xb2345678;
663 imm32 r1, 0x2b456789;
664 imm32 r2, 0x34b6789a;
665 imm32 r3, 0xc56b8912;
666 imm32 r4, 0x5c78b123;
667 imm32 r5, 0x67c91b34;
668 imm32 r6, 0xa12345b7;
669 imm32 r7, 0xc123456b;
670 A1 += R6.H * R7.H (M), A0 = R6.L * R7.L (FU);
673 A1 += R5.H * R4.H (M), A0 = R5.L * R4.H (FU);
676 A1 = R2.H * R3.H (M), A0 += R2.H * R3.L (FU);
679 A1 = R0.H * R1.H (M), A0 += R0.H * R1.H (FU);
682 CHECKREG r0, 0x442B4F30;
683 CHECKREG r1, 0xF2D9C404;
684 CHECKREG r2, 0x260C8B2C;
685 CHECKREG r3, 0x28A61612;
686 CHECKREG r4, 0x09D37060;
687 CHECKREG r5, 0xCCE07116;
688 CHECKREG r6, 0x12E7767D;
689 CHECKREG r7, 0xA7638EDE;
692 imm32 r0, 0x123df178;
693 imm32 r1, 0x2245e189;
694 imm32 r2, 0x3256719a;
695 imm32 r3, 0x42678112;
696 imm32 r4, 0xa2789123;
697 imm32 r5, 0x62891134;
698 imm32 r6, 0xa2b34167;
699 imm32 r7, 0xc22d4167;
700 A1 = R0.L * R7.L (M), A0 = R0.L * R7.L (W32);
703 A1 += R1.L * R5.L (M), A0 = R1.L * R5.H (W32);
706 A1 = R2.L * R6.L (M), A0 = R2.H * R6.L (W32);
709 A1 += R3.L * R4.L (M), A0 = R3.H * R4.H (W32);
712 CHECKREG r0, 0xF8933E90;
713 CHECKREG r1, 0xE88C48A2;
714 CHECKREG r2, 0x19B82D34;
715 CHECKREG r3, 0xCF7A9C90;
716 CHECKREG r4, 0xD50FA66C;
717 CHECKREG r5, 0xFA3D881C;
718 CHECKREG r6, 0x1D05CEF6;
719 CHECKREG r7, 0xFC499F48;
721 imm32 r0, 0x553df344;
722 imm32 r1, 0x2525e349;
723 imm32 r2, 0x3252734a;
724 imm32 r3, 0x42658342;
725 imm32 r4, 0xa5789343;
726 imm32 r5, 0x63591344;
727 imm32 r6, 0xa3b54347;
728 imm32 r7, 0xc32d4347;
729 A1 = R0.L * R7.H (M), A0 = R0.L * R7.L (W32);
732 A1 = R1.L * R5.H (M), A0 += R1.L * R5.H (W32);
735 A1 = R2.L * R6.H (M), A0 = R2.H * R6.L (W32);
738 A1 = R3.L * R4.H (M), A0 += R3.H * R4.H (W32);
741 CHECKREG r0, 0xF94E87B8;
742 CHECKREG r1, 0xE305067A;
743 CHECKREG r2, 0x1A72D57C;
744 CHECKREG r3, 0xEB7D462C;
745 CHECKREG r4, 0xAF5F10F0;
746 CHECKREG r5, 0xF4DB3F61;
747 CHECKREG r6, 0x49B9A152;
748 CHECKREG r7, 0xF64A8EF4;
750 imm32 r0, 0x163df678;
751 imm32 r1, 0x2625e689;
752 imm32 r2, 0x3652769a;
753 imm32 r3, 0x46628612;
754 imm32 r4, 0xa6789623;
755 imm32 r5, 0x63691634;
756 imm32 r6, 0xa3634367;
757 imm32 r7, 0xc3264667;
758 A1 = R0.H * R7.L (M), A0 = R0.L * R7.L (W32);
761 A1 = R1.H * R5.L (M), A0 = R1.L * R5.H (W32);
764 A1 += R2.H * R6.L (M), A0 = R2.H * R6.L (W32);
767 A1 = R3.H * R4.L (M), A0 = R3.H * R4.H (W32);
770 CHECKREG r0, 0xFAC1F490;
771 CHECKREG r1, 0xEC391262;
772 CHECKREG r2, 0x1C9AA1FC;
773 CHECKREG r3, 0xCEC513E0;
774 CHECKREG r4, 0x29470B66;
775 CHECKREG r5, 0x034EED84;
776 CHECKREG r6, 0x119C3E82;
777 CHECKREG r7, 0x061DA08B;
779 imm32 r0, 0x123df378;
780 imm32 r1, 0x2225e389;
781 imm32 r2, 0x3252739a;
782 imm32 r3, 0x42628312;
783 imm32 r4, 0xa3789323;
784 imm32 r5, 0x63891334;
785 imm32 r6, 0xa3b34367;
786 imm32 r7, 0xc32d4367;
787 A1 = R0.H * R7.H (M), A0 = R0.L * R7.L (W32);
790 A1 = R1.H * R5.H (M), A0 = R1.L * R5.H (W32);
793 A1 += R2.H * R6.H (M), A0 += R2.H * R6.L (W32);
796 A1 += R3.H * R4.H (M), A0 += R3.H * R4.H (W32);
799 CHECKREG r0, 0xF966BA90;
800 CHECKREG r1, 0xE9DD7EA2;
801 CHECKREG r2, 0x045CE89E;
802 CHECKREG r3, 0xD45FF07E;
803 CHECKREG r4, 0x57D77E13;
804 CHECKREG r5, 0x0D4694CD;
805 CHECKREG r6, 0x2D73FA23;
806 CHECKREG r7, 0x0DE7ABB9;
808 imm32 r0, 0x123df678;
809 imm32 r1, 0x2345e789;
810 imm32 r2, 0x34567b9a;
811 imm32 r3, 0x45678c12;
812 imm32 r4, 0xa6789123;
813 imm32 r5, 0x6c891234;
814 imm32 r6, 0xa1b34567;
815 imm32 r7, 0xc12d4567;
816 A1 = R0.H * R4.L (M), A0 = R0.H * R4.L (W32);
819 A1 = R1.H * R5.L (M), A0 = R1.H * R5.H (W32);
822 A1 = R2.H * R6.H (M), A0 = R2.L * R6.L (W32);
825 A1 = R3.H * R4.H (M), A0 = R3.L * R4.H (W32);
828 CHECKREG r0, 0xF03416AE;
829 CHECKREG r1, 0x1DE7F7DA;
830 CHECKREG r2, 0x430479EC;
831 CHECKREG r3, 0xF6A29C3C;
832 CHECKREG r4, 0x02CD9C01;
833 CHECKREG r5, 0x02820404;
834 CHECKREG r6, 0x210EAE22;
835 CHECKREG r7, 0xC12D4567;
838 imm32 r0, 0x623df17a;
839 imm32 r1, 0x7245e18b;
840 imm32 r2, 0x8256719a;
841 imm32 r3, 0x92678112;
842 imm32 r4, 0xa2789123;
843 imm32 r5, 0xb2891134;
844 imm32 r6, 0xc2b34167;
845 imm32 r7, 0xd22d4167;
846 A0 = R0.L * R4.L (W32);
849 A0 += R1.L * R5.H (W32);
852 A0 = R2.H * R6.L (W32);
855 A0 += R3.H * R7.H (W32);
858 CHECKREG r0, 0x0C943B5C;
859 CHECKREG r1, 0x1F02EE22;
860 CHECKREG r2, 0xBFCA8D34;
861 CHECKREG r3, 0xE707016A;
862 CHECKREG r4, 0x02CD9C01;
863 CHECKREG r5, 0x02CD9C01;
864 CHECKREG r6, 0x02CD9C01;
865 CHECKREG r7, 0x02CD9C01;
867 imm32 r0, 0xa23df17a;
868 imm32 r1, 0x7b45e18b;
869 imm32 r2, 0x82c6719a;
870 imm32 r3, 0x126d8112;
871 imm32 r4, 0xc278e123;
872 imm32 r5, 0xb2491f34;
873 imm32 r6, 0x89b54167;
874 imm32 r7, 0xd25d6767;
875 A1 += R0.L * R4.L (M,W32);
878 A1 = R1.L * R5.H (M,W32);
881 A1 += R2.H * R6.L (M,W32);
884 A1 = R3.H * R7.H (M,W32);
887 CHECKREG r0, 0xE707016A;
888 CHECKREG r1, 0xE707016A;
889 CHECKREG r2, 0xE707016A;
890 CHECKREG r3, 0xE707016A;
891 CHECKREG r4, 0xF607D9AF;
892 CHECKREG r5, 0xEAC9F6A3;
893 CHECKREG r6, 0xCACBDA4D;
894 CHECKREG r7, 0x0F241B99;
896 imm32 r0, 0x123df678;
897 imm32 r1, 0x2345e789;
898 imm32 r2, 0x34567b9a;
899 imm32 r3, 0x45678c12;
900 imm32 r4, 0xa6789123;
901 imm32 r5, 0x6c891234;
902 imm32 r6, 0xa1b34567;
903 imm32 r7, 0xc12d4567;
904 A1 -= R0.H * R4.L (M), A0 += R0.H * R4.L (IS);
907 A1 -= R1.H * R5.L (M), A0 -= R1.H * R5.H (FU);
910 A1 += R2.H * R6.H (M), A0 -= R2.L * R6.L (W32);
913 A1 -= R3.H * R4.H (M), A0 -= R3.L * R4.H (W32);
916 CHECKREG r0, 0xDF210CC1;
917 CHECKREG r1, 0xD02D10D4;
918 CHECKREG r2, 0x8D2896E8;
919 CHECKREG r3, 0x9181B214;
920 CHECKREG r4, 0x220C8AE5;
921 CHECKREG r5, 0x024B0C3E;
922 CHECKREG r6, 0x2359BA60;
923 CHECKREG r7, 0xC12D4567;
925 imm32 r0, 0x123df678;
926 imm32 r1, 0x2345e789;
927 imm32 r2, 0x34567b9a;
928 imm32 r3, 0x45678c12;
929 imm32 r4, 0xa6789123;
930 imm32 r5, 0x6c891234;
931 imm32 r6, 0xa1b34567;
932 imm32 r7, 0xc12d4567;
933 A1 -= R0.H * R4.L (M), A0 = R0.H * R4.L (IS);
936 A1 -= R1.H * R5.L (M), A0 = R1.H * R5.H (FU);
939 A1 -= R2.H * R6.H (M), A0 = R2.L * R6.L (W32);
942 A1 -= R3.H * R4.H (M), A0 = R3.L * R4.H (W32);
945 CHECKREG r0, 0xF81A0B57;
946 CHECKREG r1, 0x0EF3FBED;
947 CHECKREG r2, 0x430479EC;
948 CHECKREG r3, 0xEA874D74;
949 CHECKREG r4, 0xEDB77A95;
950 CHECKREG r5, 0x15337B8A;
951 CHECKREG r6, 0xF424CD68;
952 CHECKREG r7, 0xC12D4567;
955 imm32 r0, 0x623df17a;
956 imm32 r1, 0x7245e18b;
957 imm32 r2, 0x8256719a;
958 imm32 r3, 0x92678112;
959 imm32 r4, 0xa2789123;
960 imm32 r5, 0xb2891134;
961 imm32 r6, 0xc2b34167;
962 imm32 r7, 0xd22d4167;
963 A0 -= R0.L * R4.L (IS);
966 A0 -= R1.L * R5.H (FU);
969 A0 -= R2.H * R6.L (W32);
972 A0 -= R3.H * R7.H (W32);
975 CHECKREG r0, 0xE43D2FC6;
976 CHECKREG r1, 0x46F1D663;
977 CHECKREG r2, 0x8727492F;
978 CHECKREG r3, 0x80000000;
979 CHECKREG r4, 0xEDB77A95;
980 CHECKREG r5, 0xEDB77A95;
981 CHECKREG r6, 0xEDB77A95;
982 CHECKREG r7, 0xEDB77A95;
984 imm32 r0, 0xa23df17a;
985 imm32 r1, 0x7b45e18b;
986 imm32 r2, 0x82c6719a;
987 imm32 r3, 0x126d8112;
988 imm32 r4, 0xc278e123;
989 imm32 r5, 0xb2491f34;
990 imm32 r6, 0x89b54167;
991 imm32 r7, 0xd25d6767;
992 A1 -= R0.L * R4.L (M,IS);
995 A1 -= R1.L * R5.H (M,FU);
998 A1 -= R2.H * R6.L (M,W32);
1001 A1 -= R3.H * R7.H (M,FU);
1004 CHECKREG r0, 0x80000000;
1005 CHECKREG r1, 0x80000000;
1006 CHECKREG r2, 0x80000000;
1007 CHECKREG r3, 0x80000000;
1008 CHECKREG r4, 0xFA7D3CE7;
1009 CHECKREG r5, 0x0FB34644;
1010 CHECKREG r6, 0x2FB1629A;
1011 CHECKREG r7, 0x208D4701;