1 //Original:testcases/core/c_ldstidxl_ld_dr_h/c_ldstidxl_ld_dr_h.dsp
2 // Spec Reference: c_ldstidxl load dreg H (ld with indexed addressing)
5 .include "testutils.inc"
19 I1 = P3; P3 = I0; I3 = SP; SP = I2;
20 loadsym p1, DATA_ADDR_1, 0x00;
21 loadsym p2, DATA_ADDR_2, 0xA0;
22 loadsym i1, DATA_ADDR_1, 0x70;
23 loadsym p4, DATA_ADDR_2, 0x70;
24 loadsym p5, DATA_ADDR_1, 0x70;
25 loadsym fp, DATA_ADDR_2, 0x70;
26 loadsym i3, DATA_ADDR_1, 0x70;
29 R0 = W [ P1 + 154 ] (Z);
30 R1 = W [ P1 + 84 ] (Z);
31 R2 = W [ P1 + 48 ] (Z);
32 R3 = W [ P1 + 10 ] (Z);
33 R4 = W [ P1 + 34 ] (Z);
34 R5 = W [ P1 + 20 ] (Z);
35 R6 = W [ P1 + 126 ] (Z);
36 R7 = W [ P1 + 154 ] (Z);
37 CHECKREG r0, 0x00000405;
38 CHECKREG r1, 0x00002425;
39 CHECKREG r2, 0x00008485;
40 CHECKREG r3, 0x00000809;
41 CHECKREG r4, 0x00001122;
42 CHECKREG r5, 0x00001617;
43 CHECKREG r6, 0x00006263;
44 CHECKREG r7, 0x00000405;
46 R0 = W [ P2 + -120 ] (Z);
47 R1 = W [ P2 + -114 ] (Z);
48 R2 = W [ P2 + -36 ] (Z);
49 R3 = W [ P2 + -22 ] (Z);
50 R4 = W [ P2 + -44 ] (Z);
51 R5 = W [ P2 + -6 ] (Z);
52 R6 = W [ P2 + -52 ] (Z);
53 R7 = W [ P2 + -146 ] (Z);
54 CHECKREG r0, 0x0000D5D6;
55 CHECKREG r1, 0x0000D7D8;
56 CHECKREG r2, 0x0000565A;
57 CHECKREG r3, 0x0000A667;
58 CHECKREG r4, 0x000099EA;
59 CHECKREG r5, 0x00004C4D;
60 CHECKREG r6, 0x000099EA;
61 CHECKREG r7, 0x00004C4D;
63 R0 = W [ P3 + 56 ] (Z);
64 R1 = W [ P3 + 62 ] (Z);
65 R2 = W [ P3 + -64 ] (Z);
66 R3 = W [ P3 + 60 ] (Z);
67 R4 = W [ P3 + -56 ] (Z);
68 R5 = W [ P3 + 10 ] (Z);
69 R6 = W [ P3 + -28 ] (Z);
70 R7 = W [ P3 + -110 ] (Z);
71 CHECKREG r0, 0x00001617;
72 CHECKREG r1, 0x00001819;
73 CHECKREG r2, 0x00008485;
74 CHECKREG r3, 0x00001A1B;
75 CHECKREG r4, 0x00008283;
76 CHECKREG r5, 0x00005859;
77 CHECKREG r6, 0x00002425;
78 CHECKREG r7, 0x00000001;
80 R0 = W [ P4 + 42 ] (Z);
81 R1 = W [ P4 + -40 ] (Z);
82 R2 = W [ P4 + 38 ] (Z);
83 R3 = W [ P4 + -32 ] (Z);
84 R4 = W [ P4 + 28 ] (Z);
85 R5 = W [ P4 + 26 ] (Z);
86 R6 = W [ P4 + -22 ] (Z);
87 R7 = W [ P4 + 106 ] (Z);
88 CHECKREG r0, 0x00004C4D;
89 CHECKREG r1, 0x000099EA;
90 CHECKREG r2, 0x00004849;
91 CHECKREG r3, 0x000099EA;
92 CHECKREG r4, 0x00004243;
93 CHECKREG r5, 0x0000A667;
94 CHECKREG r6, 0x000098E8;
95 CHECKREG r7, 0x000095E8;
97 R0 = W [ P5 + -14 ] (Z);
98 R1 = W [ P5 + 12 ] (Z);
99 R2 = W [ P5 + -6 ] (Z);
100 R3 = W [ P5 + 4 ] (Z);
101 R4 = W [ P5 + 0 ] (Z);
102 R5 = W [ P5 + -2 ] (Z);
103 R6 = W [ P5 + 8 ] (Z);
104 R7 = W [ P5 + -108 ] (Z);
105 CHECKREG r0, 0x00003435;
106 CHECKREG r1, 0x00006465;
107 CHECKREG r2, 0x00004243;
108 CHECKREG r3, 0x00005657;
109 CHECKREG r4, 0x00005253;
110 CHECKREG r5, 0x00004647;
111 CHECKREG r6, 0x00006061;
112 CHECKREG r7, 0x00000607;
114 R0 = W [ FP + 90 ] (Z);
115 R1 = W [ FP + -14 ] (Z);
116 R2 = W [ FP + 42 ] (Z);
117 R3 = W [ FP + -66 ] (Z);
118 R4 = W [ FP + 26 ] (Z);
119 R5 = W [ FP + -34 ] (Z);
120 R6 = W [ FP + 38 ] (Z);
121 R7 = W [ FP + -98 ] (Z);
122 CHECKREG r0, 0x000091E8;
123 CHECKREG r1, 0x000091E8;
124 CHECKREG r2, 0x00004C4D;
125 CHECKREG r3, 0x0000D7D8;
126 CHECKREG r4, 0x0000A667;
127 CHECKREG r5, 0x000095E8;
128 CHECKREG r6, 0x00004849;
129 CHECKREG r7, 0x00004C4D;
131 R0 = W [ SP + 46 ] (Z);
132 R1 = W [ SP + -42 ] (Z);
133 R2 = W [ SP + 48 ] (Z);
134 R3 = W [ SP + 50 ] (Z);
135 R4 = W [ SP + -102 ] (Z);
136 R5 = W [ SP + 82 ] (Z);
137 R6 = W [ SP + 62 ] (Z);
138 R7 = W [ SP + 46 ] (Z);
139 CHECKREG r0, 0x00000809;
140 CHECKREG r1, 0x00000506;
141 CHECKREG r2, 0x00000E0F;
142 CHECKREG r3, 0x00000C0D;
143 CHECKREG r4, 0x00000809;
144 CHECKREG r5, 0x00007475;
145 CHECKREG r6, 0x00001819;
146 CHECKREG r7, 0x00000809;
151 // Pre-load memory with known data
152 // More data is defined than will actually be used