xref: /netbsd-src/external/gpl3/gdb/dist/sim/testsuite/bfin/c_dsp32alu_rl_p.s (revision 4b169a6ba595ae283ca507b26b15fdff40495b1c)
1//Original:/testcases/core/c_dsp32alu_rl_p/c_dsp32alu_rl_p.dsp
2// Spec Reference: dsp32alu dreg (half)
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8
9
10
11imm32 r0, 0x19678911;
12imm32 r1, 0x2799ab1d;
13imm32 r2, 0x34945515;
14imm32 r3, 0x46967717;
15imm32 r4, 0x5678891b;
16imm32 r5, 0x6789ab1d;
17imm32 r6, 0x74445515;
18imm32 r7, 0x86669977;
19R0.L = R0.L + R0.L (NS);
20R1.L = R0.L + R1.H (NS);
21R2.L = R0.H + R2.L (NS);
22R3.L = R0.H + R3.H (NS);
23R4.L = R0.L + R4.L (NS);
24R5.L = R0.L + R5.H (NS);
25R6.L = R0.H + R6.L (NS);
26R7.L = R0.H + R7.H (NS);
27CHECKREG r4, 0x56789B3D;
28CHECKREG r5, 0x678979AB;
29CHECKREG r6, 0x74446E7C;
30CHECKREG r7, 0x86669FCD;
31CHECKREG r4, 0x56789B3D;
32CHECKREG r5, 0x678979AB;
33CHECKREG r6, 0x74446E7C;
34CHECKREG r7, 0x86669FCD;
35
36imm32 r0, 0x15678911;
37imm32 r1, 0xaa89ab1d;
38imm32 r2, 0x34445515;
39imm32 r3, 0x46a67717;
40imm32 r4, 0x567a891b;
41imm32 r5, 0x6789ab1d;
42imm32 r6, 0x74445a15;
43imm32 r7, 0x866677a7;
44R0.L = R1.L + R0.L (NS);
45R1.L = R1.L + R1.H (NS);
46R2.L = R1.H + R2.L (NS);
47R3.L = R1.H + R3.H (NS);
48R4.L = R1.L + R4.L (NS);
49R5.L = R1.L + R5.H (NS);
50R6.L = R1.H + R6.L (NS);
51R7.L = R1.H + R7.H (NS);
52CHECKREG r4, 0x567ADEC1;
53CHECKREG r5, 0x6789BD2F;
54CHECKREG r6, 0x7444049E;
55CHECKREG r7, 0x866630EF;
56CHECKREG r4, 0x567ADEC1;
57CHECKREG r5, 0x6789BD2F;
58CHECKREG r6, 0x7444049E;
59CHECKREG r7, 0x866630EF;
60
61imm32 r0, 0x15678911;
62imm32 r1, 0x2789ab1d;
63imm32 r2, 0x34445515;
64imm32 r3, 0x46667717;
65imm32 r4, 0x5678891b;
66imm32 r5, 0x6789ab1d;
67imm32 r6, 0x74445515;
68imm32 r7, 0x86667777;
69R0.L = R2.L + R0.L (NS);
70R1.L = R2.L + R1.H (NS);
71R2.L = R2.H + R2.L (NS);
72R3.L = R2.H + R3.H (NS);
73R4.L = R2.L + R4.L (NS);
74R5.L = R2.L + R5.H (NS);
75R6.L = R2.H + R6.L (NS);
76R7.L = R2.H + R7.H (NS);
77CHECKREG r4, 0x56781274;
78CHECKREG r5, 0x6789F0E2;
79CHECKREG r6, 0x74448959;
80CHECKREG r7, 0x8666BAAA;
81CHECKREG r4, 0x56781274;
82CHECKREG r5, 0x6789F0E2;
83CHECKREG r6, 0x74448959;
84CHECKREG r7, 0x8666BAAA;
85
86imm32 r0, 0xb5678911;
87imm32 r1, 0x2789ab1d;
88imm32 r2, 0x3bb45515;
89imm32 r3, 0x46667717;
90imm32 r4, 0x567b891b;
91imm32 r5, 0x6789ab1d;
92imm32 r6, 0x7444b515;
93imm32 r7, 0x86667b77;
94R0.L = R3.L + R0.L (NS);
95R1.L = R3.L + R1.H (NS);
96R2.L = R3.H + R2.L (NS);
97R3.L = R3.H + R3.H (NS);
98R4.L = R3.L + R4.L (NS);
99R5.L = R3.L + R5.H (NS);
100R6.L = R3.H + R6.L (NS);
101R7.L = R3.H + R7.H (NS);
102CHECKREG r4, 0x567B15E7;
103CHECKREG r5, 0x6789F455;
104CHECKREG r6, 0x7444FB7B;
105CHECKREG r7, 0x8666CCCC;
106CHECKREG r4, 0x567B15E7;
107CHECKREG r5, 0x6789F455;
108CHECKREG r6, 0x7444FB7B;
109CHECKREG r7, 0x8666CCCC;
110
111imm32 r0, 0x15678911;
112imm32 r1, 0x2789ab1d;
113imm32 r2, 0x34445515;
114imm32 r3, 0x46667717;
115imm32 r4, 0x5678891b;
116imm32 r5, 0x6789ab1d;
117imm32 r6, 0x74445515;
118imm32 r7, 0x86667777;
119R0.L = R4.L + R0.L (NS);
120R1.L = R4.L + R1.H (NS);
121R2.L = R4.H + R2.L (NS);
122R3.L = R4.H + R3.H (NS);
123R4.L = R4.L + R4.L (NS);
124R5.L = R4.L + R5.H (NS);
125R6.L = R4.H + R6.L (NS);
126R7.L = R4.H + R7.H (NS);
127CHECKREG r4, 0x56781236;
128CHECKREG r5, 0x678979BF;
129CHECKREG r6, 0x7444AB8D;
130CHECKREG r7, 0x8666DCDE;
131CHECKREG r4, 0x56781236;
132CHECKREG r5, 0x678979BF;
133CHECKREG r6, 0x7444AB8D;
134CHECKREG r7, 0x8666DCDE;
135
136imm32 r0, 0xcc678911;
137imm32 r1, 0x2789ab1d;
138imm32 r2, 0x3c445515;
139imm32 r3, 0x46c67717;
140imm32 r4, 0x567c891b;
141imm32 r5, 0x6789cb1d;
142imm32 r6, 0x74445515;
143imm32 r7, 0x86667c77;
144R0.L = R5.L + R0.L (NS);
145R1.L = R5.L + R1.H (NS);
146R2.L = R5.H + R2.L (NS);
147R3.L = R5.H + R3.H (NS);
148R4.L = R5.L + R4.L (NS);
149R5.L = R5.L + R5.H (NS);
150R6.L = R5.H + R6.L (NS);
151R7.L = R5.H + R7.H (NS);
152CHECKREG r4, 0x567C5438;
153CHECKREG r5, 0x678932A6;
154CHECKREG r6, 0x7444BC9E;
155CHECKREG r7, 0x8666EDEF;
156CHECKREG r4, 0x567C5438;
157CHECKREG r5, 0x678932A6;
158CHECKREG r6, 0x7444BC9E;
159CHECKREG r7, 0x8666EDEF;
160
161imm32 r0, 0xd5678911;
162imm32 r1, 0x2789ab1d;
163imm32 r2, 0x3d445515;
164imm32 r3, 0x46d67717;
165imm32 r4, 0x5678891b;
166imm32 r5, 0x678dab1d;
167imm32 r6, 0x7444d515;
168imm32 r7, 0x86667d77;
169R0.L = R6.L + R0.L (NS);
170R1.L = R6.L + R1.H (NS);
171R2.L = R6.H + R2.L (NS);
172R3.L = R6.H + R3.H (NS);
173R4.L = R6.L + R4.L (NS);
174R5.L = R6.L + R5.H (NS);
175R6.L = R6.H + R6.L (NS);
176R7.L = R6.H + R7.H (NS);
177CHECKREG r4, 0x56785E30;
178CHECKREG r5, 0x678D3CA2;
179CHECKREG r6, 0x74444959;
180CHECKREG r7, 0x8666FAAA;
181CHECKREG r4, 0x56785E30;
182CHECKREG r5, 0x678D3CA2;
183CHECKREG r6, 0x74444959;
184CHECKREG r7, 0x8666FAAA;
185
186imm32 r0, 0xf5678911;
187imm32 r1, 0x2f89ab1d;
188imm32 r2, 0x34f45515;
189imm32 r3, 0x466f7717;
190imm32 r4, 0x5678f91b;
191imm32 r5, 0x6789af1d;
192imm32 r6, 0x744455f5;
193imm32 r7, 0x8666777f;
194R0.L = R7.L + R0.L (NS);
195R1.L = R7.L + R1.H (NS);
196R2.L = R7.H + R2.L (NS);
197R3.L = R7.H + R3.H (NS);
198R4.L = R7.L + R4.L (NS);
199R5.L = R7.L + R5.H (NS);
200R6.L = R7.H + R6.L (NS);
201R7.L = R7.H + R7.H (NS);
202CHECKREG r4, 0x5678709A;
203CHECKREG r5, 0x6789DF08;
204CHECKREG r6, 0x7444DC5B;
205CHECKREG r7, 0x86660CCC;
206CHECKREG r4, 0x5678709A;
207CHECKREG r5, 0x6789DF08;
208CHECKREG r6, 0x7444DC5B;
209CHECKREG r7, 0x86660CCC;
210
211imm32 r0, 0x55678911;
212imm32 r1, 0x2589ab1d;
213imm32 r2, 0x35545515;
214imm32 r3, 0x46d67717;
215imm32 r4, 0x5678891b;
216imm32 r5, 0x678dab1d;
217imm32 r6, 0x7444d515;
218imm32 r7, 0x86667d77;
219R6.L = R2.L + R3.L (S);
220R1.L = R4.L + R5.H (S);
221R5.L = R7.H + R2.L (S);
222R3.L = R0.H + R0.H (S);
223R0.L = R3.L + R4.L (S);
224R2.L = R5.L + R7.H (S);
225R7.L = R6.H + R7.L (S);
226R4.L = R1.H + R6.H (S);
227CHECKREG r4, 0x56787FFF;
228CHECKREG r5, 0x678DDB7B;
229CHECKREG r6, 0x74447FFF;
230CHECKREG r7, 0x86667FFF;
231CHECKREG r4, 0x56787FFF;
232CHECKREG r5, 0x678DDB7B;
233CHECKREG r6, 0x74447FFF;
234CHECKREG r7, 0x86667FFF;
235
236imm32 r0, 0x15678911;
237imm32 r1, 0x2789ab1d;
238imm32 r2, 0x34445515;
239imm32 r3, 0x46667717;
240imm32 r4, 0x5678891b;
241imm32 r5, 0x6789ab1d;
242imm32 r6, 0x74445515;
243imm32 r7, 0x86667777;
244R3.L = R4.L + R0.L (S);
245R1.L = R6.L + R3.H (S);
246R4.L = R3.H + R2.L (S);
247R6.L = R7.H + R1.H (S);
248R2.L = R5.L + R4.L (S);
249R7.L = R2.L + R7.H (S);
250R0.L = R1.H + R6.L (S);
251R5.L = R0.H + R5.H (S);
252CHECKREG r4, 0x56787FFF;
253CHECKREG r5, 0x67897CF0;
254CHECKREG r6, 0x7444ADEF;
255CHECKREG r7, 0x8666B182;
256CHECKREG r4, 0x56787FFF;
257CHECKREG r5, 0x67897CF0;
258CHECKREG r6, 0x7444ADEF;
259CHECKREG r7, 0x8666B182;
260
261
262
263pass
264