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