1//Original:/testcases/core/c_ldst_ld_d_p_pp/c_ldst_ld_d_p_pp.dsp
2// Spec Reference: c_ldst ld d [p++]
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8	INIT_R_REGS 0;
9
10	loadsym p5, DATA_ADDR_1;
11	loadsym p1, DATA_ADDR_2;
12	loadsym p2, DATA_ADDR_3;
13	loadsym p4, DATA_ADDR_5;
14	loadsym fp, DATA_ADDR_6;
15
16	R0 = [ P5 ++ ];
17	R1 = [ P1 ++ ];
18	R2 = [ P2 ++ ];
19	R4 = [ P4 ++ ];
20	R5 = [ FP ++ ];
21	CHECKREG r0, 0x00010203;
22	CHECKREG r1, 0x20212223;
23	CHECKREG r2, 0x40414243;
24	CHECKREG r4, 0x80818283;
25	CHECKREG r5, 0x00010203;
26	R1 = [ P5 ++ ];
27	R2 = [ P1 ++ ];
28	R3 = [ P2 ++ ];
29	R5 = [ P4 ++ ];
30	R6 = [ FP ++ ];
31	CHECKREG r0, 0x00010203;
32	CHECKREG r1, 0x04050607;
33	CHECKREG r2, 0x24252627;
34	CHECKREG r3, 0x44454647;
35	CHECKREG r5, 0x84858687;
36	CHECKREG r6, 0x04050607;
37	R2 = [ P5 ++ ];
38	R3 = [ P1 ++ ];
39	R4 = [ P2 ++ ];
40	R6 = [ P4 ++ ];
41	R7 = [ FP ++ ];
42	CHECKREG r1, 0x04050607;
43	CHECKREG r2, 0x08090A0B;
44	CHECKREG r3, 0x28292A2B;
45	CHECKREG r4, 0x48494A4B;
46	CHECKREG r6, 0x88898A8B;
47	CHECKREG r7, 0x08090A0B;
48
49	R3 = [ P5 ++ ];
50	R4 = [ P1 ++ ];
51	R5 = [ P2 ++ ];
52	R7 = [ P4 ++ ];
53	R0 = [ FP ++ ];
54	CHECKREG r0, 0x0C0D0E0F;
55	CHECKREG r2, 0x08090A0B;
56	CHECKREG r3, 0x0C0D0E0F;
57	CHECKREG r4, 0x2C2D2E2F;
58	CHECKREG r5, 0x4C4D4E4F;
59	CHECKREG r7, 0x8C8D8E8F;
60
61	R4 = [ P5 ++ ];
62	R5 = [ P1 ++ ];
63	R6 = [ P2 ++ ];
64	R0 = [ P4 ++ ];
65	R1 = [ FP ++ ];
66	CHECKREG r0, 0x90919293;
67	CHECKREG r1, 0x10111213;
68	CHECKREG r3, 0x0C0D0E0F;
69	CHECKREG r4, 0x10111213;
70	CHECKREG r5, 0x30313233;
71	CHECKREG r6, 0x50515253;
72
73	R5 = [ P5 ++ ];
74	R6 = [ P1 ++ ];
75	R7 = [ P2 ++ ];
76	R1 = [ P4 ++ ];
77	R2 = [ FP ++ ];
78	CHECKREG r1, 0x94959697;
79	CHECKREG r2, 0x14151617;
80	CHECKREG r4, 0x10111213;
81	CHECKREG r5, 0x14151617;
82	CHECKREG r6, 0x34353637;
83	CHECKREG r7, 0x54555657;
84
85	R6 = [ P5 ++ ];
86	R7 = [ P1 ++ ];
87	R0 = [ P2 ++ ];
88	R2 = [ P4 ++ ];
89	R3 = [ FP ++ ];
90	CHECKREG r0, 0x58595A5B;
91	CHECKREG r2, 0x98999A9B;
92	CHECKREG r3, 0x18191A1B;
93	CHECKREG r5, 0x14151617;
94	CHECKREG r6, 0x18191A1B;
95	CHECKREG r7, 0x38393A3B;
96
97	R7 = [ P5 ++ ];
98	R0 = [ P1 ++ ];
99	R1 = [ P2 ++ ];
100	R3 = [ P4 ++ ];
101	R4 = [ FP ++ ];
102	CHECKREG r0, 0x3C3D3E3F;
103	CHECKREG r1, 0xC5C6C7C8;
104	CHECKREG r3, 0x9C9D9E9F;
105	CHECKREG r4, 0x1C1D1E1F;
106	CHECKREG r6, 0x18191A1B;
107	CHECKREG r7, 0x1C1D1E1F;
108
109	pass
110
111// Pre-load memory with known data
112// More data is defined than will actually be used
113
114	.data
115DATA_ADDR_1:
116	.dd 0x00010203
117	.dd 0x04050607
118	.dd 0x08090A0B
119	.dd 0x0C0D0E0F
120	.dd 0x10111213
121	.dd 0x14151617
122	.dd 0x18191A1B
123	.dd 0x1C1D1E1F
124	.dd 0x11223344
125	.dd 0x55667788
126	.dd 0x99717273
127	.dd 0x74757677
128	.dd 0x82838485
129	.dd 0x86878889
130	.dd 0x80818283
131	.dd 0x84858687
132	.dd 0x01020304
133	.dd 0x05060708
134	.dd 0x09101112
135	.dd 0x14151617
136	.dd 0x18192021
137	.dd 0x22232425
138	.dd 0x26272829
139	.dd 0x30313233
140	.dd 0x34353637
141	.dd 0x38394041
142	.dd 0x42434445
143	.dd 0x46474849
144	.dd 0x50515253
145	.dd 0x54555657
146	.dd 0x58596061
147	.dd 0x62636465
148	.dd 0x66676869
149	.dd 0x74555657
150	.dd 0x78596067
151	.dd 0x72636467
152	.dd 0x76676867
153
154DATA_ADDR_2:
155	.dd 0x20212223
156	.dd 0x24252627
157	.dd 0x28292A2B
158	.dd 0x2C2D2E2F
159	.dd 0x30313233
160	.dd 0x34353637
161	.dd 0x38393A3B
162	.dd 0x3C3D3E3F
163	.dd 0x91929394
164	.dd 0x95969798
165	.dd 0x99A1A2A3
166	.dd 0xA5A6A7A8
167	.dd 0xA9B0B1B2
168	.dd 0xB3B4B5B6
169	.dd 0xB7B8B9C0
170	.dd 0x70717273
171	.dd 0x74757677
172	.dd 0x78798081
173	.dd 0x82838485
174	.dd 0x86C283C4
175	.dd 0x81C283C4
176	.dd 0x82C283C4
177	.dd 0x83C283C4
178	.dd 0x84C283C4
179	.dd 0x85C283C4
180	.dd 0x86C283C4
181	.dd 0x87C288C4
182	.dd 0x88C283C4
183	.dd 0x89C283C4
184	.dd 0x80C283C4
185	.dd 0x81C283C4
186	.dd 0x82C288C4
187	.dd 0x94555659
188	.dd 0x98596069
189	.dd 0x92636469
190	.dd 0x96676869
191
192DATA_ADDR_3:
193	.dd 0x40414243
194	.dd 0x44454647
195	.dd 0x48494A4B
196	.dd 0x4C4D4E4F
197	.dd 0x50515253
198	.dd 0x54555657
199	.dd 0x58595A5B
200	.dd 0xC5C6C7C8
201	.dd 0xC9CACBCD
202	.dd 0xCFD0D1D2
203	.dd 0xD3D4D5D6
204	.dd 0xD7D8D9DA
205	.dd 0xDBDCDDDE
206	.dd 0xDFE0E1E2
207	.dd 0xE3E4E5E6
208	.dd 0x91E899EA
209	.dd 0x92E899EA
210	.dd 0x93E899EA
211	.dd 0x94E899EA
212	.dd 0x95E899EA
213	.dd 0x96E899EA
214	.dd 0x97E899EA
215	.dd 0x98E899EA
216	.dd 0x99E899EA
217	.dd 0x91E899EA
218	.dd 0x92E899EA
219	.dd 0x93E899EA
220	.dd 0x94E899EA
221	.dd 0x95E899EA
222	.dd 0x96E899EA
223	.dd 0x977899EA
224	.dd 0xa455565a
225	.dd 0xa859606a
226	.dd 0xa263646a
227	.dd 0xa667686a
228
229DATA_ADDR_4:
230	.dd 0x60616263
231	.dd 0x64656667
232	.dd 0x68696A6B
233	.dd 0x6C6D6E6F
234	.dd 0x70717273
235	.dd 0x74757677
236	.dd 0x78797A7B
237	.dd 0x7C7D7E7F
238	.dd 0xEBECEDEE
239	.dd 0xF3F4F5F6
240	.dd 0xF7F8F9FA
241	.dd 0xFBFCFDFE
242	.dd 0xFF000102
243	.dd 0x03040506
244	.dd 0x0708090A
245	.dd 0x0B0CAD0E
246	.dd 0xAB0CAD01
247	.dd 0xAB0CAD02
248	.dd 0xAB0CAD03
249	.dd 0xAB0CAD04
250	.dd 0xAB0CAD05
251	.dd 0xAB0CAD06
252	.dd 0xAB0CAA07
253	.dd 0xAB0CAD08
254	.dd 0xAB0CAD09
255	.dd 0xAB0CAD0E
256	.dd 0xAB0CAD0E
257	.dd 0xAB0CAD0E
258	.dd 0xAB0CAD0E
259	.dd 0xAB0CAD0E
260	.dd 0xAB0CAD0E
261	.dd 0xAB0CAD0E
262	.dd 0xB455565B
263	.dd 0xB859606B
264	.dd 0xB263646B
265	.dd 0xB667686B
266
267DATA_ADDR_5:
268	.dd 0x80818283
269	.dd 0x84858687
270	.dd 0x88898A8B
271	.dd 0x8C8D8E8F
272	.dd 0x90919293
273	.dd 0x94959697
274	.dd 0x98999A9B
275	.dd 0x9C9D9E9F
276	.dd 0x0F101213
277	.dd 0x14151617
278	.dd 0x18191A1B
279	.dd 0x1C1D1E1F
280	.dd 0x20212223
281	.dd 0x24252627
282	.dd 0x28292A2B
283	.dd 0x2C2D2E2F
284	.dd 0xBC0DBE21
285	.dd 0xBC1DBE22
286	.dd 0xBC2DBE23
287	.dd 0xBC3DBE24
288	.dd 0xBC4DBE65
289	.dd 0xBC5DBE27
290	.dd 0xBC6DBE28
291	.dd 0xBC7DBE29
292	.dd 0xBC8DBE2F
293	.dd 0xBC9DBE20
294	.dd 0xBCADBE21
295	.dd 0xBCBDBE2F
296	.dd 0xBCCDBE23
297	.dd 0xBCDDBE24
298	.dd 0xBCFDBE25
299	.dd 0xC455565C
300	.dd 0xC859606C
301	.dd 0xC263646C
302	.dd 0xC667686C
303	.dd 0xCC0DBE2C
304
305DATA_ADDR_6:
306	.dd 0x00010203
307	.dd 0x04050607
308	.dd 0x08090A0B
309	.dd 0x0C0D0E0F
310	.dd 0x10111213
311	.dd 0x14151617
312	.dd 0x18191A1B
313	.dd 0x1C1D1E1F
314	.dd 0x20212223
315	.dd 0x24252627
316	.dd 0x28292A2B
317	.dd 0x2C2D2E2F
318	.dd 0x30313233
319	.dd 0x34353637
320	.dd 0x38393A3B
321	.dd 0x3C3D3E3F
322	.dd 0x40414243
323	.dd 0x44454647
324	.dd 0x48494A4B
325	.dd 0x4C4D4E4F
326	.dd 0x50515253
327	.dd 0x54555657
328	.dd 0x58595A5B
329	.dd 0x5C5D5E5F
330	.dd 0x60616263
331	.dd 0x64656667
332	.dd 0x68696A6B
333	.dd 0x6C6D6E6F
334	.dd 0x70717273
335	.dd 0x74757677
336	.dd 0x78797A7B
337	.dd 0x7C7D7E7F
338
339DATA_ADDR_7:
340	.dd 0x80818283
341	.dd 0x84858687
342	.dd 0x88898A8B
343	.dd 0x8C8D8E8F
344	.dd 0x90919293
345	.dd 0x94959697
346	.dd 0x98999A9B
347	.dd 0x9C9D9E9F
348	.dd 0xA0A1A2A3
349	.dd 0xA4A5A6A7
350	.dd 0xA8A9AAAB
351	.dd 0xACADAEAF
352	.dd 0xB0B1B2B3
353	.dd 0xB4B5B6B7
354	.dd 0xB8B9BABB
355	.dd 0xBCBDBEBF
356	.dd 0xC0C1C2C3
357	.dd 0xC4C5C6C7
358	.dd 0xC8C9CACB
359	.dd 0xCCCDCECF
360	.dd 0xD0D1D2D3
361	.dd 0xD4D5D6D7
362	.dd 0xD8D9DADB
363	.dd 0xDCDDDEDF
364	.dd 0xE0E1E2E3
365	.dd 0xE4E5E6E7
366	.dd 0xE8E9EAEB
367	.dd 0xECEDEEEF
368	.dd 0xF0F1F2F3
369	.dd 0xF4F5F6F7
370	.dd 0xF8F9FAFB
371	.dd 0xFCFDFEFF
372