1 //Original
:/testcases
/core
/c_dsp32mult_dr_m_u
/c_dsp32mult_dr_m_u.dsp
2 // Spec Reference
: dsp32mult single dr munop u
5 .include "testutils.inc"
16 R4.
L = R0.H
* R0.
L (FU
);
17 R5.H
= R0.
L * R1.
L (FU
);
18 R6.
L = R1.
L * R0.H
(FU
);
19 R7.
L = R1.
L * R1.
L (FU
);
20 R0.H
= R0.
L * R0.
L (FU
);
21 R1.
L = R0.
L * R1.
L (FU
);
22 R2.
L = R1.H
* R0.
L (FU
);
23 R3.H
= R1.
L * R1.
L (FU
);
24 CHECKREG
r0, 0x1CFD5625;
25 CHECKREG
r1, 0x9FBA1B4F;
26 CHECKREG
r2, 0xA3FF35C0;
27 CHECKREG
r3, 0x02EAF027;
28 CHECKREG
r4, 0xB0AB5482;
29 CHECKREG
r5, 0x1B4FEF2B;
30 CHECKREG
r6, 0xC0FC4F9C;
31 CHECKREG
r7, 0xD24F19BA;
41 R4.H
= R2.
L * R2.
L (FU
);
42 R5.
L = R2.
L * R3.H
(FU
);
43 R6.
L = R3.H
* R2.
L (FU
);
44 R7.H
= R3.
L * R3.
L (FU
);
45 R2.H
= R2.
L * R2.H
(FU
);
46 R3.
L = R2.H
* R3.H
(FU
);
47 R0.H
= R3.
L * R2.
L (FU
);
48 R1.
L = R3.
L * R3.
L (FU
);
49 CHECKREG
r0, 0x0647A635;
50 CHECKREG
r1, 0x6BBA004C;
51 CHECKREG
r2, 0x0E27B7E5;
52 CHECKREG
r3, 0x9E0B08BD;
53 CHECKREG
r4, 0x8419BD39;
54 CHECKREG
r5, 0xB0AE7187;
55 CHECKREG
r6, 0xA00C7187;
56 CHECKREG
r7, 0x00007EB3;
66 R0.
L = R4.
L * R4.H
(FU
);
67 R1.H
= R4.H
* R5.
L (FU
);
68 R2.
L = R5.H
* R4.
L (FU
);
69 R3.
L = R5.
L * R5.
L (FU
);
70 R4.H
= R4.
L * R4.H
(FU
);
71 R5.
L = R4.
L * R5.H
(FU
);
72 R6.H
= R5.H
* R4.H
(FU
);
73 R7.
L = R5.H
* R5.H
(FU
);
74 CHECKREG
r0, 0xBD236F7E;
75 CHECKREG
r1, 0x6C475157;
76 CHECKREG
r2, 0x6B240CD6;
77 CHECKREG
r3, 0x00B68F09;
78 CHECKREG
r4, 0x6F7EC509;
79 CHECKREG
r5, 0x10AD0CD6;
80 CHECKREG
r6, 0x0743DB5D;
81 CHECKREG
r7, 0x12460116;
91 // test the unsigned U
=1
92 R0.
L = R6.
L * R6.
L (FU
);
93 R1.H
= R6.H
* R7.
L (FU
);
94 R2.
L = R7.
L * R6.
L (FU
);
95 R3.
L = R7.
L * R7.
L (FU
);
96 R6.
L = R6.
L * R6.
L (FU
);
97 R7.
L = R6.
L * R7.
L (FU
);
98 R4.
L = R7.
L * R6.
L (FU
);
99 R5.
L = R7.
L * R7.
L (FU
);
100 CHECKREG
r0, 0xCB2390A4;
101 CHECKREG
r1, 0x3E3D5166;
102 CHECKREG
r2, 0x1C245D88;
103 CHECKREG
r3, 0xF0063C7C;
104 CHECKREG
r4, 0x90CB27B9;
105 CHECKREG
r5, 0x10AC134F;
106 CHECKREG
r6, 0x800C90A4;
107 CHECKREG
r7, 0x1246464E;
110 imm32
r0, 0x8b23a675;
111 imm32
r1, 0xc8ba5127;
112 imm32
r2, 0x13846705;
113 imm32
r3, 0xe0088807;
114 imm32
r4, 0x9eabcd09;
115 imm32
r5, 0x10ecdfdb;
116 imm32
r6, 0x000e008d;
117 imm32
r7, 0x1246e008;
118 R0.H
= R0.
L * R7.H
(FU
);
119 R1.
L = R1.H
* R6.H
(FU
);
120 R2.
L = R2.
L * R5.
L (FU
);
121 R3.H
= R3.H
* R4.H
(FU
);
122 R4.
L = R4.
L * R3.H
(FU
);
123 R5.
L = R5.H
* R2.H
(FU
);
124 R6.H
= R6.H
* R1.
L (FU
);
125 R7.
L = R7.
L * R0.H
(FU
);
126 CHECKREG
r0, 0x0BE2A675;
127 CHECKREG
r1, 0xC8BA000B;
128 CHECKREG
r2, 0x13845A15;
129 CHECKREG
r3, 0x8ADB8807;
130 CHECKREG
r4, 0x9EAB6F36;
131 CHECKREG
r5, 0x10EC014A;
132 CHECKREG
r6, 0x0000008D;
133 CHECKREG
r7, 0x12460A66;
135 imm32
r0, 0x9b235a75;
136 imm32
r1, 0x7fba5127;
137 imm32
r2, 0x97246905;
138 imm32
r3, 0x09777007;
139 imm32
r4, 0x909bc779;
140 imm32
r5, 0x10a9e9d7;
141 imm32
r6, 0x000c9d0d;
142 imm32
r7, 0x1246790f;
143 R0.
L = R7.
L * R0.H
(FU
);
144 R1.
L = R6.
L * R1.
L (FU
);
145 R2.H
= R5.
L * R2.
L (FU
);
146 R3.
L = R4.H
* R3.
L (FU
);
147 R4.
L = R3.H
* R4.H
(FU
);
148 R5.H
= R2.H
* R5.
L (FU
);
149 R6.
L = R1.H
* R6.
L (FU
);
150 R7.
L = R0.
L * R7.
L (FU
);
151 CHECKREG
r0, 0x9B23495D;
152 CHECKREG
r1, 0x7FBA31C9;
153 CHECKREG
r2, 0x5FEE6905;
154 CHECKREG
r3, 0x09773F48;
155 CHECKREG
r4, 0x909B0559;
156 CHECKREG
r5, 0x57A0E9D7;
157 CHECKREG
r6, 0x000C4E5C;
158 CHECKREG
r7, 0x124622B1;
160 imm32
r0, 0xa9235675;
161 imm32
r1, 0xc8ba5127;
162 imm32
r2, 0x13246705;
163 imm32
r3, 0x08060007;
164 imm32
r4, 0x908bcd09;
165 imm32
r5, 0x10a88fdb;
166 imm32
r6, 0x000c080d;
167 imm32
r7, 0x1246708f;
168 R2.
L = R0.
L * R6.
L (FU
);
169 R3.
L = R1.H
* R7.H
(FU
);
170 R0.H
= R2.
L * R0.
L, R0.
L = R2.H
* R0.
L (FU
);
171 R1.H
= R3.
L * R4.
L (FU
);
172 R4.
L = R1.H
* R2.
L (FU
);
173 R5.
L = R5.
L * R3.
L (FU
);
174 R6.
L = R6.
L * R4.
L (FU
);
175 R7.H
= R7.H
* R5.
L (FU
);
176 CHECKREG
r0, 0x00EB0677;
177 CHECKREG
r1, 0x0B7A5127;
178 CHECKREG
r2, 0x132402B8;
179 CHECKREG
r3, 0x08060E54;
180 CHECKREG
r4, 0x908B001F;
181 CHECKREG
r5, 0x10A8080D;
182 CHECKREG
r6, 0x000C0001;
183 CHECKREG
r7, 0x0093708F;
185 imm32
r0, 0x7b235675;
186 imm32
r1, 0xcfba5127;
187 imm32
r2, 0x17246705;
188 imm32
r3, 0x00760007;
189 imm32
r4, 0x907bcd09;
190 imm32
r5, 0x10a7efdb;
191 imm32
r6, 0x000c700d;
192 imm32
r7, 0x1246770f;
193 R4.
L = R5.
L * R2.
L (FU
);
194 R6.
L = R6.
L * R3.H
(FU
);
195 R0.H
= R7.
L * R4.H
(FU
);
196 R1.
L = R0.H
* R5.
L (FU
);
197 R2.
L = R1.
L * R6.
L (FU
);
198 R5.
L = R2.
L * R7.H
(FU
);
199 R3.H
= R3.H
* R0.
L (FU
);
200 R7.
L = R4.H
* R1.H
(FU
);
201 CHECKREG
r0, 0x43325675;
202 CHECKREG
r1, 0xCFBA3EF5;
203 CHECKREG
r2, 0x1724000D;
204 CHECKREG
r3, 0x00280007;
205 CHECKREG
r4, 0x907B6086;
206 CHECKREG
r5, 0x10A70001;
207 CHECKREG
r6, 0x000C0034;
208 CHECKREG
r7, 0x1246753C;