xref: /netbsd-src/external/gpl3/gdb/dist/sim/testsuite/bfin/c_dsp32alu_rh_p.s (revision 4b169a6ba595ae283ca507b26b15fdff40495b1c)
1//Original:/testcases/core/c_dsp32alu_rh_p/c_dsp32alu_rh_p.dsp
2// Spec Reference: dsp32alu dreg (half)
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8
9
10
11imm32 r0, 0x34678911;
12imm32 r1, 0x2789ab1d;
13imm32 r2, 0x34645515;
14imm32 r3, 0x46667717;
15imm32 r4, 0xd678891b;
16imm32 r5, 0x6e89ab1d;
17imm32 r6, 0x74b45515;
18imm32 r7, 0x866cc777;
19R0.H = R0.L + R0.L (NS);
20R1.H = R0.L + R1.H (NS);
21R2.H = R0.H + R2.L (NS);
22R3.H = R0.H + R3.H (NS);
23R4.H = R0.L + R4.L (NS);
24R5.H = R0.L + R5.H (NS);
25R6.H = R0.H + R6.L (NS);
26R7.H = R0.H + R7.H (NS);
27CHECKREG r4, 0x122C891B;
28CHECKREG r5, 0xF79AAB1D;
29CHECKREG r6, 0x67375515;
30CHECKREG r7, 0x988EC777;
31CHECKREG r4, 0x122C891B;
32CHECKREG r5, 0xF79AAB1D;
33CHECKREG r6, 0x67375515;
34CHECKREG r7, 0x988EC777;
35
36imm32 r0, 0x12348911;
37imm32 r1, 0x2e89ab1d;
38imm32 r2, 0x34f45515;
39imm32 r3, 0x46d67717;
40imm32 r4, 0x567b891b;
41imm32 r5, 0x6789ab1d;
42imm32 r6, 0x7444b515;
43imm32 r7, 0x86667a77;
44R0.H = R1.L + R0.L (NS);
45R1.H = R1.L + R1.H (NS);
46R2.H = R1.H + R2.L (NS);
47R3.H = R1.H + R3.H (NS);
48R4.H = R1.L + R4.L (NS);
49R5.H = R1.L + R5.H (NS);
50R6.H = R1.H + R6.L (NS);
51R7.H = R1.H + R7.H (NS);
52CHECKREG r4, 0x3438891B;
53CHECKREG r5, 0x12A6AB1D;
54CHECKREG r6, 0x8EBBB515;
55CHECKREG r7, 0x600C7A77;
56CHECKREG r4, 0x3438891B;
57CHECKREG r5, 0x12A6AB1D;
58CHECKREG r6, 0x8EBBB515;
59CHECKREG r7, 0x600C7A77;
60
61imm32 r0, 0x85678911;
62imm32 r1, 0x3989ab1d;
63imm32 r2, 0x34445515;
64imm32 r3, 0x46a67717;
65imm32 r4, 0x5e78891b;
66imm32 r5, 0x67d9ab1d;
67imm32 r6, 0x744b5515;
68imm32 r7, 0x86668777;
69R0.H = R2.L + R0.L (NS);
70R1.H = R2.L + R1.H (NS);
71R2.H = R2.H + R2.L (NS);
72R3.H = R2.H + R3.H (NS);
73R4.H = R2.L + R4.L (NS);
74R5.H = R2.L + R5.H (NS);
75R6.H = R2.H + R6.L (NS);
76R7.L = R2.H + R7.H (NS);
77CHECKREG r4, 0xDE30891B;
78CHECKREG r5, 0xBCEEAB1D;
79CHECKREG r6, 0xDE6E5515;
80CHECKREG r7, 0x86660FBF;
81CHECKREG r4, 0xDE30891B;
82CHECKREG r5, 0xBCEEAB1D;
83CHECKREG r6, 0xDE6E5515;
84CHECKREG r7, 0x86660FBF;
85
86imm32 r0, 0x25678911;
87imm32 r1, 0x2789ab1d;
88imm32 r2, 0x3e445515;
89imm32 r3, 0x46d67717;
90imm32 r4, 0x567f891b;
91imm32 r5, 0x6789bb1d;
92imm32 r6, 0x74445515;
93imm32 r7, 0x86667b77;
94R0.H = R3.L + R0.L (NS);
95R1.H = R3.L + R1.H (NS);
96R2.H = R3.H + R2.L (NS);
97R3.H = R3.H + R3.H (NS);
98R4.H = R3.L + R4.L (NS);
99R5.H = R3.L + R5.H (NS);
100R6.H = R3.H + R6.L (NS);
101R7.H = R3.H + R7.H (NS);
102CHECKREG r4, 0x0032891B;
103CHECKREG r5, 0xDEA0BB1D;
104CHECKREG r6, 0xE2C15515;
105CHECKREG r7, 0x14127B77;
106CHECKREG r4, 0x0032891B;
107CHECKREG r5, 0xDEA0BB1D;
108CHECKREG r6, 0xE2C15515;
109CHECKREG r7, 0x14127B77;
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.H = R4.L + R0.L (NS);
120R1.H = R4.L + R1.H (NS);
121R2.H = R4.H + R2.L (NS);
122R3.H = R4.H + R3.H (NS);
123R4.H = R4.L + R4.L (NS);
124R5.H = R4.L + R5.H (NS);
125R6.H = R4.H + R6.L (NS);
126R7.H = R4.H + R7.H (NS);
127CHECKREG r4, 0x1236891B;
128CHECKREG r5, 0xF0A4AB1D;
129CHECKREG r6, 0x674B5515;
130CHECKREG r7, 0x989C7777;
131CHECKREG r4, 0x1236891B;
132CHECKREG r5, 0xF0A4AB1D;
133CHECKREG r6, 0x674B5515;
134CHECKREG r7, 0x989C7777;
135
136imm32 r0, 0xa5678911;
137imm32 r1, 0x2a89ab1d;
138imm32 r2, 0x34d45515;
139imm32 r3, 0x466b7717;
140imm32 r4, 0x5678f91b;
141imm32 r5, 0x6789ab1d;
142imm32 r6, 0x7444a515;
143imm32 r7, 0x86667b77;
144R0.H = R5.L + R0.L (NS);
145R1.H = R5.L + R1.H (NS);
146R2.H = R5.H + R2.L (NS);
147R3.H = R5.H + R3.H (NS);
148R4.H = R5.L + R4.L (NS);
149R5.H = R5.L + R5.H (NS);
150R6.H = R5.H + R6.L (NS);
151R7.H = R5.H + R7.H (NS);
152CHECKREG r4, 0xA438F91B;
153CHECKREG r5, 0x12A6AB1D;
154CHECKREG r6, 0xB7BBA515;
155CHECKREG r7, 0x990C7B77;
156CHECKREG r4, 0xA438F91B;
157CHECKREG r5, 0x12A6AB1D;
158CHECKREG r6, 0xB7BBA515;
159CHECKREG r7, 0x990C7B77;
160
161imm32 r0, 0xf5678911;
162imm32 r1, 0x2f89ab1d;
163imm32 r2, 0x34445515;
164imm32 r3, 0x46f67717;
165imm32 r4, 0x5678891b;
166imm32 r5, 0x678fab1d;
167imm32 r6, 0x7444f515;
168imm32 r7, 0x86667f77;
169R0.L = R6.L + R0.L (NS);
170R1.H = R6.L + R1.H (NS);
171R2.H = R6.H + R2.L (NS);
172R3.H = R6.H + R3.H (NS);
173R4.H = R6.L + R4.L (NS);
174R5.H = R6.L + R5.H (NS);
175R6.H = R6.H + R6.L (NS);
176R7.H = R6.H + R7.H (NS);
177CHECKREG r4, 0x7E30891B;
178CHECKREG r5, 0x5CA4AB1D;
179CHECKREG r6, 0x6959F515;
180CHECKREG r7, 0xEFBF7F77;
181CHECKREG r4, 0x7E30891B;
182CHECKREG r5, 0x5CA4AB1D;
183CHECKREG r6, 0x6959F515;
184CHECKREG r7, 0xEFBF7F77;
185
186imm32 r0, 0x15678911;
187imm32 r1, 0x2789ab1d;
188imm32 r2, 0x34445515;
189imm32 r3, 0x46667717;
190imm32 r4, 0x5678891b;
191imm32 r5, 0x6789ab1d;
192imm32 r6, 0x74445515;
193imm32 r7, 0x86667777;
194R0.H = R7.L + R0.L (NS);
195R1.H = R7.L + R1.H (NS);
196R2.H = R7.H + R2.L (NS);
197R3.H = R7.H + R3.H (NS);
198R4.H = R7.L + R4.L (NS);
199R5.H = R7.L + R5.H (NS);
200R6.H = R7.H + R6.L (NS);
201R7.H = R7.H + R7.H (NS);
202CHECKREG r4, 0x0092891B;
203CHECKREG r5, 0xDF00AB1D;
204CHECKREG r6, 0xDB7B5515;
205CHECKREG r7, 0x0CCC7777;
206CHECKREG r4, 0x0092891B;
207CHECKREG r5, 0xDF00AB1D;
208CHECKREG r6, 0xDB7B5515;
209CHECKREG r7, 0x0CCC7777;
210
211imm32 r0, 0x56678911;
212imm32 r1, 0x2789ab1d;
213imm32 r2, 0x34645515;
214imm32 r3, 0x466a7717;
215imm32 r4, 0x5678e91b;
216imm32 r5, 0x6789af1d;
217imm32 r6, 0x744455f5;
218imm32 r7, 0x866677b7;
219R6.H = R2.L + R3.L (S);
220R1.H = R4.L + R5.H (S);
221R5.H = R7.H + R2.L (S);
222R3.H = R0.H + R0.H (S);
223R0.H = R3.L + R4.L (S);
224R2.H = R5.L + R7.H (S);
225R7.H = R6.H + R7.L (S);
226R4.H = R1.H + R6.H (S);
227CHECKREG r4, 0x7FFFE91B;
228CHECKREG r5, 0xDB7BAF1D;
229CHECKREG r6, 0x7FFF55F5;
230CHECKREG r7, 0x7FFF77B7;
231CHECKREG r4, 0x7FFFE91B;
232CHECKREG r5, 0xDB7BAF1D;
233CHECKREG r6, 0x7FFF55F5;
234CHECKREG r7, 0x7FFF77B7;
235
236imm32 r0, 0x95678911;
237imm32 r1, 0x2989ab1d;
238imm32 r2, 0x34445515;
239imm32 r3, 0x46967717;
240imm32 r4, 0x5679891b;
241imm32 r5, 0x6789ab1d;
242imm32 r6, 0x74449515;
243imm32 r7, 0x86667977;
244R3.H = R4.L + R0.L (S);
245R1.H = R6.L + R3.H (S);
246R4.H = R3.H + R2.L (S);
247R6.H = R7.H + R1.H (S);
248R2.H = R5.L + R4.L (S);
249R7.H = R2.L + R7.H (S);
250R0.H = R1.H + R6.L (S);
251R5.H = R0.H + R5.H (S);
252CHECKREG r4, 0xD515891B;
253CHECKREG r5, 0xE789AB1D;
254CHECKREG r6, 0x80009515;
255CHECKREG r7, 0xDB7B7977;
256CHECKREG r4, 0xD515891B;
257CHECKREG r5, 0xE789AB1D;
258CHECKREG r6, 0x80009515;
259CHECKREG r7, 0xDB7B7977;
260
261
262
263pass
264