1//Original:testcases/core/c_dspldst_st_dr_ipp/c_dspldst_st_dr_ipp.dsp 2// Spec Reference: c_dspldst st_dr_ipp 3# mach: bfin 4 5.include "testutils.inc" 6 start 7 8// set all regs 9 10//INIT_I_REGS -1; 11init_b_regs 0; 12init_l_regs 0; 13init_m_regs -1; 14 15 imm32 r0, 0x0a234507; 16 imm32 r1, 0x1b345618; 17 imm32 r2, 0x2c456729; 18 imm32 r3, 0x3d56783a; 19 imm32 r4, 0x4e67894b; 20 imm32 r5, 0x5f789a5c; 21 imm32 r6, 0x6089ab6d; 22 imm32 r7, 0x719abc7e; 23 24// initial values 25 loadsym i0, DATA_ADDR_3; 26 loadsym i1, DATA_ADDR_4; 27 loadsym i2, DATA_ADDR_5; 28 loadsym i3, DATA_ADDR_6; 29 30 [ I0 ++ ] = R0; 31 [ I1 ++ ] = R1; 32 [ I2 ++ ] = R2; 33 [ I3 ++ ] = R3; 34 35 [ I0 ++ ] = R1; 36 [ I1 ++ ] = R2; 37 [ I2 ++ ] = R3; 38 [ I3 ++ ] = R4; 39 40 [ I0 ++ ] = R3; 41 [ I1 ++ ] = R4; 42 [ I2 ++ ] = R5; 43 [ I3 ++ ] = R6; 44 45 [ I0 ++ ] = R4; 46 [ I1 ++ ] = R5; 47 [ I2 ++ ] = R6; 48 [ I3 ++ ] = R7; 49 loadsym i0, DATA_ADDR_3; 50 loadsym i1, DATA_ADDR_4; 51 loadsym i2, DATA_ADDR_5; 52 loadsym i3, DATA_ADDR_6; 53 R0 = [ I0 ++ ]; 54 R1 = [ I1 ++ ]; 55 R2 = [ I2 ++ ]; 56 R3 = [ I3 ++ ]; 57 R4 = [ I0 ++ ]; 58 R5 = [ I1 ++ ]; 59 R6 = [ I2 ++ ]; 60 R7 = [ I3 ++ ]; 61 CHECKREG r0, 0x0a234507; 62 CHECKREG r1, 0x1b345618; 63 CHECKREG r2, 0x2c456729; 64 CHECKREG r3, 0x3d56783a; 65 CHECKREG r4, 0x1B345618; 66 CHECKREG r5, 0x2C456729; 67 CHECKREG r6, 0x3D56783A; 68 CHECKREG r7, 0x4E67894B; 69 R0 = [ I0 ++ ]; 70 R1 = [ I1 ++ ]; 71 R2 = [ I2 ++ ]; 72 R3 = [ I3 ++ ]; 73 R4 = [ I0 ++ ]; 74 R5 = [ I1 ++ ]; 75 R6 = [ I2 ++ ]; 76 R7 = [ I3 ++ ]; 77 CHECKREG r0, 0x3D56783A; 78 CHECKREG r1, 0x4E67894B; 79 CHECKREG r2, 0x5F789A5C; 80 CHECKREG r3, 0x6089AB6D; 81 CHECKREG r4, 0x4E67894B; 82 CHECKREG r5, 0x5F789A5C; 83 CHECKREG r6, 0x6089AB6D; 84 CHECKREG r7, 0x719ABC7E; 85 86// initial values 87 88 imm32 r0, 0xa0b2c3d4; 89 imm32 r1, 0x1b245618; 90 imm32 r2, 0x22b36729; 91 imm32 r3, 0xbd3c483a; 92 imm32 r4, 0xde64d54b; 93 imm32 r5, 0x5f785e6c; 94 imm32 r6, 0x30896bf7; 95 imm32 r7, 0x719ab770; 96 loadsym i0, DATA_ADDR_3, 0x20; 97 loadsym i1, DATA_ADDR_4, 0x20; 98 loadsym i2, DATA_ADDR_5, 0x20; 99 loadsym i3, DATA_ADDR_6, 0x20; 100 101 [ I0 -- ] = R0; 102 [ I1 -- ] = R1; 103 [ I2 -- ] = R2; 104 [ I3 -- ] = R3; 105 [ I0 -- ] = R4; 106 [ I1 -- ] = R5; 107 [ I2 -- ] = R6; 108 [ I3 -- ] = R7; 109 loadsym i0, DATA_ADDR_3, 0x20; 110 loadsym i1, DATA_ADDR_4, 0x20; 111 loadsym i2, DATA_ADDR_5, 0x20; 112 loadsym i3, DATA_ADDR_6, 0x20; 113 R0 = [ I0 -- ]; 114 R1 = [ I1 -- ]; 115 R2 = [ I2 -- ]; 116 R3 = [ I3 -- ]; 117 R4 = [ I0 -- ]; 118 R5 = [ I1 -- ]; 119 R6 = [ I2 -- ]; 120 R7 = [ I3 -- ]; 121 CHECKREG r0, 0xA0B2C3D4; 122 CHECKREG r1, 0x1B245618; 123 CHECKREG r2, 0x22B36729; 124 CHECKREG r3, 0xBD3C483A; 125 CHECKREG r4, 0xDE64D54B; 126 CHECKREG r5, 0x5F785E6C; 127 CHECKREG r6, 0x30896BF7; 128 CHECKREG r7, 0x719AB770; 129 130 pass 131 132// Pre-load memory with known data 133// More data is defined than will actually be used 134 135 .data 136DATA_ADDR_3: 137 .dd 0x00010203 138 .dd 0x04050607 139 .dd 0x08090A0B 140 .dd 0x0C0D0E0F 141 .dd 0x10111213 142 .dd 0x14151617 143 .dd 0x18191A1B 144 .dd 0x1C1D1E1F 145 .dd 0x00000000 146 .dd 0x00000000 147 .dd 0x00000000 148 .dd 0x00000000 149 .dd 0x00000000 150 .dd 0x00000000 151 .dd 0x00000000 152 .dd 0x00000000 153 .dd 0x00000000 154 .dd 0x00000000 155 .dd 0x00000000 156 .dd 0x00000000 157 .dd 0x00000000 158 .dd 0x00000000 159 .dd 0x00000000 160 .dd 0x00000000 161 .dd 0x00000000 162 .dd 0x00000000 163 .dd 0x00000000 164 .dd 0x00000000 165 .dd 0x00000000 166 .dd 0x00000000 167 .dd 0x00000000 168 .dd 0x00000000 169 .dd 0x00000000 170 171DATA_ADDR_4: 172 .dd 0x20212223 173 .dd 0x24252627 174 .dd 0x28292A2B 175 .dd 0x2C2D2E2F 176 .dd 0x30313233 177 .dd 0x34353637 178 .dd 0x38393A3B 179 .dd 0x3C3D3E3F 180 .dd 0x00000000 181 .dd 0x00000000 182 .dd 0x00000000 183 .dd 0x00000000 184 .dd 0x00000000 185 .dd 0x00000000 186 .dd 0x00000000 187 .dd 0x00000000 188 .dd 0x00000000 189 .dd 0x00000000 190 .dd 0x00000000 191 .dd 0x00000000 192 .dd 0x00000000 193 .dd 0x00000000 194 .dd 0x00000000 195 .dd 0x00000000 196 197DATA_ADDR_5: 198 .dd 0x40414243 199 .dd 0x44454647 200 .dd 0x48494A4B 201 .dd 0x4C4D4E4F 202 .dd 0x50515253 203 .dd 0x54555657 204 .dd 0x58595A5B 205 .dd 0x5C5D5E5F 206 .dd 0x00000000 207 .dd 0x00000000 208 .dd 0x00000000 209 .dd 0x00000000 210 .dd 0x00000000 211 .dd 0x00000000 212 .dd 0x00000000 213 .dd 0x00000000 214 .dd 0x00000000 215 .dd 0x00000000 216 .dd 0x00000000 217 .dd 0x00000000 218 .dd 0x00000000 219 .dd 0x00000000 220 .dd 0x00000000 221 .dd 0x00000000 222 .dd 0x00000000 223 .dd 0x00000000 224 .dd 0x00000000 225 .dd 0x00000000 226 .dd 0x00000000 227 .dd 0x00000000 228 .dd 0x00000000 229 .dd 0x00000000 230 .dd 0x00000000 231 232DATA_ADDR_6: 233 .dd 0x60616263 234 .dd 0x64656667 235 .dd 0x68696A6B 236 .dd 0x6C6D6E6F 237 .dd 0x70717273 238 .dd 0x74757677 239 .dd 0x78797A7B 240 .dd 0x7C7D7E7F 241 .dd 0x00000000 242 .dd 0x00000000 243 .dd 0x00000000 244 .dd 0x00000000 245 .dd 0x00000000 246 .dd 0x00000000 247 .dd 0x00000000 248 .dd 0x00000000 249 .dd 0x00000000 250 .dd 0x00000000 251 .dd 0x00000000 252 .dd 0x00000000 253 .dd 0x00000000 254 .dd 0x00000000 255 .dd 0x00000000 256 .dd 0x00000000 257 .dd 0x00000000 258 .dd 0x00000000 259 .dd 0x00000000 260 .dd 0x00000000 261 .dd 0x00000000 262 .dd 0x00000000 263 .dd 0x00000000 264 .dd 0x00000000 265 .dd 0x00000000 266 267DATA_ADDR_7: 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 0x00000000 277 .dd 0x00000000 278 .dd 0x00000000 279 .dd 0x00000000 280 .dd 0x00000000 281 .dd 0x00000000 282 .dd 0x00000000 283 .dd 0x00000000 284 .dd 0x00000000 285 .dd 0x00000000 286 .dd 0x00000000 287 .dd 0x00000000 288 .dd 0x00000000 289 .dd 0x00000000 290 .dd 0x00000000 291 .dd 0x00000000 292 .dd 0x00000000 293 .dd 0x00000000 294 .dd 0x00000000 295 .dd 0x00000000 296 .dd 0x00000000 297 .dd 0x00000000 298 .dd 0x00000000 299 .dd 0x00000000 300 .dd 0x00000000 301 302DATA_ADDR_8: 303 .dd 0xA0A1A2A3 304 .dd 0xA4A5A6A7 305 .dd 0xA8A9AAAB 306 .dd 0xACADAEAF 307 .dd 0xB0B1B2B3 308 .dd 0xB4B5B6B7 309 .dd 0xB8B9BABB 310 .dd 0xBCBDBEBF 311 .dd 0xC0C1C2C3 312 .dd 0xC4C5C6C7 313 .dd 0xC8C9CACB 314 .dd 0xCCCDCECF 315 .dd 0xD0D1D2D3 316 .dd 0xD4D5D6D7 317 .dd 0xD8D9DADB 318 .dd 0xDCDDDEDF 319 .dd 0xE0E1E2E3 320 .dd 0xE4E5E6E7 321 .dd 0xE8E9EAEB 322 .dd 0xECEDEEEF 323 .dd 0xF0F1F2F3 324 .dd 0xF4F5F6F7 325 .dd 0xF8F9FAFB 326 .dd 0xFCFDFEFF 327