]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/testsuite/sim/bfin/c_dsp32alu_rl_rnd20_p.s
sim: bfin: import testsuite
[thirdparty/binutils-gdb.git] / sim / testsuite / sim / bfin / c_dsp32alu_rl_rnd20_p.s
1 //Original:/testcases/core/c_dsp32alu_rl_rnd20_p/c_dsp32alu_rl_rnd20_p.dsp
2 // Spec Reference: dsp32alu dreg (half)
3 # mach: bfin
4
5 .include "testutils.inc"
6 start
7
8 imm32 r0, 0x75678911;
9 imm32 r1, 0xa789ab1d;
10 imm32 r2, 0x34745515;
11 imm32 r3, 0x4b677717;
12 imm32 r4, 0x5678791b;
13 imm32 r5, 0xc789a71d;
14 imm32 r6, 0x74445515;
15 imm32 r7, 0x86667777;
16 R0.L = R0 + R0 (RND20);
17 R1.L = R0 + R1 (RND20);
18 R2.L = R0 + R2 (RND20);
19 R3.L = R0 + R3 (RND20);
20 R4.L = R0 + R4 (RND20);
21 R5.L = R0 + R5 (RND20);
22 R6.L = R0 + R6 (RND20);
23 R7.L = R0 + R7 (RND20);
24 CHECKREG r0, 0x75670EAD;
25 CHECKREG r1, 0xA78901CF;
26 CHECKREG r2, 0x34740A9E;
27 CHECKREG r3, 0x4B670C0D;
28 CHECKREG r4, 0x56780CBE;
29 CHECKREG r5, 0xC78903CF;
30 CHECKREG r6, 0x74440E9B;
31 CHECKREG r7, 0x8666FFBD;
32
33 imm32 r0, 0xe5678911;
34 imm32 r1, 0x2789ab1d;
35 imm32 r2, 0x3e445515;
36 imm32 r3, 0x46667717;
37 imm32 r4, 0x56e8891b;
38 imm32 r5, 0x678eab1d;
39 imm32 r6, 0x74445515;
40 imm32 r7, 0x86e67e77;
41 R0.L = R1 + R0 (RND20);
42 R1.L = R1 + R1 (RND20);
43 R2.L = R1 + R2 (RND20);
44 R3.L = R1 + R3 (RND20);
45 R4.L = R1 + R4 (RND20);
46 R5.L = R1 + R5 (RND20);
47 R6.L = R1 + R6 (RND20);
48 R7.L = R1 + R7 (RND20);
49 CHECKREG r0, 0xE56700CF;
50 CHECKREG r1, 0x278904F1;
51 CHECKREG r2, 0x3E44065D;
52 CHECKREG r3, 0x466606DF;
53 CHECKREG r4, 0x56E807E7;
54 CHECKREG r5, 0x678E08F1;
55 CHECKREG r6, 0x744409BD;
56 CHECKREG r7, 0x86E6FAE7;
57
58 imm32 r0, 0xdd678911;
59 imm32 r1, 0x2789ab1d;
60 imm32 r2, 0x3d445515;
61 imm32 r3, 0x46667717;
62 imm32 r4, 0x56d8891b;
63 imm32 r5, 0x678dab1d;
64 imm32 r6, 0x7444d515;
65 imm32 r7, 0x86667d77;
66 R0.L = R2 + R0 (RND20);
67 R1.L = R2 + R1 (RND20);
68 R2.L = R2 + R2 (RND20);
69 R3.L = R2 + R3 (RND20);
70 R4.L = R2 + R4 (RND20);
71 R5.L = R2 + R5 (RND20);
72 R6.L = R2 + R6 (RND20);
73 R7.L = R2 + R7 (RND20);
74 CHECKREG r0, 0xDD6701AB;
75 CHECKREG r1, 0x2789064D;
76 CHECKREG r2, 0x3D4407A9;
77 CHECKREG r3, 0x4666083B;
78 CHECKREG r4, 0x56D80942;
79 CHECKREG r5, 0x678D0A4D;
80 CHECKREG r6, 0x74440B19;
81 CHECKREG r7, 0x8666FC3B;
82
83 imm32 r0, 0xa5678911;
84 imm32 r1, 0x2a89ab1d;
85 imm32 r2, 0x34445515;
86 imm32 r3, 0x46a67717;
87 imm32 r4, 0x567a891b;
88 imm32 r5, 0x6789ab1d;
89 imm32 r6, 0x7444c515;
90 imm32 r7, 0x86667c77;
91 R0.L = R3 + R0 (RND20);
92 R1.L = R3 + R1 (RND20);
93 R2.L = R3 + R2 (RND20);
94 R3.L = R3 + R3 (RND20);
95 R4.L = R3 + R4 (RND20);
96 R5.L = R3 + R5 (RND20);
97 R6.L = R3 + R6 (RND20);
98 R7.L = R3 + R7 (RND20);
99 CHECKREG r0, 0xA567FEC1;
100 CHECKREG r1, 0x2A890713;
101 CHECKREG r2, 0x344407AF;
102 CHECKREG r3, 0x46A608D5;
103 CHECKREG r4, 0x567A09D2;
104 CHECKREG r5, 0x67890AE3;
105 CHECKREG r6, 0x74440BAF;
106 CHECKREG r7, 0x8666FCD1;
107
108 imm32 r0, 0x15678911;
109 imm32 r1, 0x2789ab1d;
110 imm32 r2, 0x34445515;
111 imm32 r3, 0x46667717;
112 imm32 r4, 0x5678891b;
113 imm32 r5, 0x6789ab1d;
114 imm32 r6, 0x74445515;
115 imm32 r7, 0x86667777;
116 R0.L = R4 + R0 (RND20);
117 R1.L = R4 + R1 (RND20);
118 R2.L = R4 + R2 (RND20);
119 R3.L = R4 + R3 (RND20);
120 R4.L = R4 + R4 (RND20);
121 R5.L = R4 + R5 (RND20);
122 R6.L = R4 + R6 (RND20);
123 R7.L = R4 + R7 (RND20);
124 CHECKREG r0, 0x156706BE;
125 CHECKREG r1, 0x278907E0;
126 CHECKREG r2, 0x344408AC;
127 CHECKREG r3, 0x466609CE;
128 CHECKREG r4, 0x56780ACF;
129 CHECKREG r5, 0x67890BE0;
130 CHECKREG r6, 0x74440CAC;
131 CHECKREG r7, 0x8666FDCE;
132
133 imm32 r0, 0x95678911;
134 imm32 r1, 0x8789ab1d;
135 imm32 r2, 0x74445515;
136 imm32 r3, 0x4a667717;
137 imm32 r4, 0x56b8891b;
138 imm32 r5, 0x678dab1d;
139 imm32 r6, 0x7444e515;
140 imm32 r7, 0x86667d77;
141 R0.L = R5 + R0 (RND20);
142 R1.L = R5 + R1 (RND20);
143 R2.L = R5 + R2 (RND20);
144 R3.L = R5 + R3 (RND20);
145 R4.L = R5 + R4 (RND20);
146 R5.L = R5 + R5 (RND20);
147 R6.L = R5 + R6 (RND20);
148 R7.L = R5 + R7 (RND20);
149 CHECKREG r0, 0x9567FFCF;
150 CHECKREG r1, 0x8789FEF1;
151 CHECKREG r2, 0x74440DBD;
152 CHECKREG r3, 0x4A660B1F;
153 CHECKREG r4, 0x56B80BE4;
154 CHECKREG r5, 0x678D0CF2;
155 CHECKREG r6, 0x74440DBD;
156 CHECKREG r7, 0x8666FEDF;
157
158 imm32 r0, 0x35678911;
159 imm32 r1, 0x2459ab1d;
160 imm32 r2, 0x34465515;
161 imm32 r3, 0xe6667717;
162 imm32 r4, 0x5d78891b;
163 imm32 r5, 0x67b9ab1d;
164 imm32 r6, 0x744a5515;
165 imm32 r7, 0x8666c777;
166 R0.L = R6 + R0 (RND20);
167 R1.L = R6 + R1 (RND20);
168 R2.L = R6 + R2 (RND20);
169 R3.L = R6 + R3 (RND20);
170 R4.L = R6 + R4 (RND20);
171 R5.L = R6 + R5 (RND20);
172 R6.L = R6 + R6 (RND20);
173 R7.L = R6 + R7 (RND20);
174 CHECKREG r0, 0x35670A9B;
175 CHECKREG r1, 0x2459098A;
176 CHECKREG r2, 0x34460A89;
177 CHECKREG r3, 0xE66605AB;
178 CHECKREG r4, 0x5D780D1C;
179 CHECKREG r5, 0x67B90DC0;
180 CHECKREG r6, 0x744A0E89;
181 CHECKREG r7, 0x8666FFAB;
182
183 imm32 r0, 0xa5678911;
184 imm32 r1, 0x2789ab1d;
185 imm32 r2, 0x3a445515;
186 imm32 r3, 0x4c667717;
187 imm32 r4, 0x56b8891b;
188 imm32 r5, 0x678dab1d;
189 imm32 r6, 0x74445515;
190 imm32 r7, 0x8666d777;
191 R0.L = R7 + R0 (RND20);
192 R1.L = R7 + R1 (RND20);
193 R2.L = R7 + R2 (RND20);
194 R3.L = R7 + R3 (RND20);
195 R4.L = R7 + R4 (RND20);
196 R5.L = R7 + R5 (RND20);
197 R6.L = R7 + R6 (RND20);
198 R7.L = R7 + R7 (RND20);
199 CHECKREG r0, 0xA567F2BD;
200 CHECKREG r1, 0x2789FADF;
201 CHECKREG r2, 0x3A44FC0B;
202 CHECKREG r3, 0x4C66FD2D;
203 CHECKREG r4, 0x56B8FDD2;
204 CHECKREG r5, 0x678DFEDF;
205 CHECKREG r6, 0x7444FFAB;
206 CHECKREG r7, 0x8666F0CD;
207
208 imm32 r0, 0xabd78911;
209 imm32 r1, 0x2789ab1d;
210 imm32 r2, 0xd4445515;
211 imm32 r3, 0x4e667717;
212 imm32 r4, 0x56f8891b;
213 imm32 r5, 0x678aab1d;
214 imm32 r6, 0x7444b515;
215 imm32 r7, 0x86667d77;
216 R6.L = R2 + R3 (RND20);
217 R1.L = R4 + R5 (RND20);
218 R5.L = R7 + R2 (RND20);
219 R3.L = R0 + R0 (RND20);
220 R0.L = R3 + R4 (RND20);
221 R2.L = R5 + R7 (RND20);
222 R7.L = R6 + R7 (RND20);
223 R4.L = R1 + R6 (RND20);
224 CHECKREG r0, 0xABD70A56;
225 CHECKREG r1, 0x27890BE8;
226 CHECKREG r2, 0xD444FEDF;
227 CHECKREG r3, 0x4E66F57B;
228 CHECKREG r4, 0x56F809BD;
229 CHECKREG r5, 0x678AF5AB;
230 CHECKREG r6, 0x7444022B;
231 CHECKREG r7, 0x8666FFAB;
232
233 imm32 r0, 0x15678911;
234 imm32 r1, 0x2789ab1d;
235 imm32 r2, 0x34445515;
236 imm32 r3, 0x46667717;
237 imm32 r4, 0x5678891b;
238 imm32 r5, 0x6789ab1d;
239 imm32 r6, 0x74445515;
240 imm32 r7, 0x86667777;
241 R3.L = R4 + R0 (RND20);
242 R1.L = R6 + R3 (RND20);
243 R4.L = R3 + R2 (RND20);
244 R6.L = R7 + R1 (RND20);
245 R2.L = R5 + R4 (RND20);
246 R7.L = R2 + R7 (RND20);
247 R0.L = R1 + R6 (RND20);
248 R5.L = R0 + R5 (RND20);
249 CHECKREG r0, 0x156709BD;
250 CHECKREG r1, 0x27890BAB;
251 CHECKREG r2, 0x34440BE0;
252 CHECKREG r3, 0x466606BE;
253 CHECKREG r4, 0x567807AB;
254 CHECKREG r5, 0x678907CF;
255 CHECKREG r6, 0x7444FADF;
256 CHECKREG r7, 0x8666FBAB;
257
258 pass