1//Original:/testcases/core/c_ldst_st_p_p/c_ldst_st_p_p.dsp
2// Spec Reference: c_ldst st_p_p
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8	imm32 r0, 0x0a231507;
9	imm32 r1, 0x1b342618;
10	imm32 r2, 0x2c453729;
11	imm32 r3, 0x3d56483a;
12	imm32 r4, 0x4e67594b;
13	imm32 r5, 0x5f786a5c;
14	imm32 r6, 0x60897b6d;
15	imm32 r7, 0x719a8c7e;
16
17// initial values  p-p
18	imm32 p5, 0x0a231507;
19	imm32 p1, 0x1b342618;
20	imm32 p2, 0x2c453729;
21
22	loadsym p4, DATA_ADDR_5;
23	loadsym fp, DATA_ADDR_6;
24
25	[ P4 ] = P1;
26	[ FP ] = P2;
27	R5 = [ P4 ];
28	R6 = [ FP ];
29	CHECKREG r5, 0x1B342618;
30	CHECKREG r6, 0x2C453729;
31
32	[ P4 ] = P2;
33	[ FP ] = R3;
34	R5 = [ P4 ];
35	R6 = [ FP ];
36	CHECKREG r5, 0x2C453729;
37	CHECKREG r6, 0x3D56483A;
38
39	[ P4 ] = R3;
40	[ FP ] = P5;
41	R5 = [ P4 ];
42	R6 = [ FP ];
43	CHECKREG r5, 0x3D56483A;
44	CHECKREG r6, 0x0A231507;
45
46	pass
47
48// Pre-load memory with known data
49// More data is defined than will actually be used
50	.data
51
52DATA_ADDR_1:
53	.dd 0x00010203
54	.dd 0x04050607
55	.dd 0x08090A0B
56	.dd 0x0C0D0E0F
57	.dd 0x10111213
58	.dd 0x14151617
59	.dd 0x18191A1B
60	.dd 0x1C1D1E1F
61
62DATA_ADDR_2:
63	.dd 0x20212223
64	.dd 0x24252627
65	.dd 0x28292A2B
66	.dd 0x2C2D2E2F
67	.dd 0x30313233
68	.dd 0x34353637
69	.dd 0x38393A3B
70	.dd 0x3C3D3E3F
71
72DATA_ADDR_3:
73	.dd 0x40414243
74	.dd 0x44454647
75	.dd 0x48494A4B
76	.dd 0x4C4D4E4F
77	.dd 0x50515253
78	.dd 0x54555657
79	.dd 0x58595A5B
80	.dd 0x5C5D5E5F
81
82DATA_ADDR_4:
83	.dd 0x60616263
84	.dd 0x64656667
85	.dd 0x68696A6B
86	.dd 0x6C6D6E6F
87	.dd 0x70717273
88	.dd 0x74757677
89	.dd 0x78797A7B
90	.dd 0x7C7D7E7F
91
92DATA_ADDR_5:
93	.dd 0x80818283
94	.dd 0x84858687
95	.dd 0x88898A8B
96	.dd 0x8C8D8E8F
97	.dd 0x90919293
98	.dd 0x94959697
99	.dd 0x98999A9B
100	.dd 0x9C9D9E9F
101
102DATA_ADDR_6:
103	.dd 0xA0A1A2A3
104	.dd 0xA4A5A6A7
105	.dd 0xA8A9AAAB
106	.dd 0xACADAEAF
107	.dd 0xB0B1B2B3
108	.dd 0xB4B5B6B7
109	.dd 0xB8B9BABB
110	.dd 0xBCBDBEBF
111
112DATA_ADDR_7:
113	.dd 0xC0C1C2C3
114	.dd 0xC4C5C6C7
115	.dd 0xC8C9CACB
116	.dd 0xCCCDCECF
117	.dd 0xD0D1D2D3
118	.dd 0xD4D5D6D7
119	.dd 0xD8D9DADB
120	.dd 0xDCDDDEDF
121	.dd 0xE0E1E2E3
122	.dd 0xE4E5E6E7
123	.dd 0xE8E9EAEB
124	.dd 0xECEDEEEF
125	.dd 0xF0F1F2F3
126	.dd 0xF4F5F6F7
127	.dd 0xF8F9FAFB
128	.dd 0xFCFDFEFF
129