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