1//Original:/testcases/core/c_ldstii_st_dreg/c_ldstii_st_dreg.dsp 2// Spec Reference: c_ldstii store dreg 3# mach: bfin 4 5.include "testutils.inc" 6 start 7 8 imm32 r0, 0x105f50a0; 9 imm32 r1, 0x204e60a1; 10 imm32 r2, 0x300370a2; 11 imm32 r3, 0x402c80a3; 12 imm32 r4, 0x501b90a4; 13 imm32 r5, 0x600aa0a5; 14 imm32 r6, 0x7019b0a6; 15 imm32 r7, 0xd028c0a7; 16 17 loadsym p1, DATA_ADDR_1; 18 loadsym p2, DATA_ADDR_2; 19.ifndef BFIN_HOST 20 loadsym p3, DATA_ADDR_3; 21.endif 22 loadsym p4, DATA_ADDR_4; 23 loadsym p5, DATA_ADDR_1; 24 loadsym fp, DATA_ADDR_2; 25.ifndef BFIN_HOST 26 loadsym sp, DATA_ADDR_3; 27.endif 28 29 [ P1 + 4 ] = R0; 30 [ P1 + 8 ] = R1; 31 [ P1 + 12 ] = R2; 32 [ P1 + 16 ] = R3; 33 [ P2 + 20 ] = R4; 34 [ P2 + 24 ] = R5; 35 [ P2 + 28 ] = R6; 36 [ P2 + 32 ] = R7; 37 R6 = [ P1 + 4 ]; 38 R5 = [ P1 + 8 ]; 39 R4 = [ P1 + 12 ]; 40 R3 = [ P1 + 16 ]; 41 R2 = [ P2 + 20 ]; 42 R7 = [ P2 + 24 ]; 43 R0 = [ P2 + 28 ]; 44 R1 = [ P2 + 32 ]; 45 CHECKREG r0, 0x7019B0A6; 46 CHECKREG r1, 0xD028C0A7; 47 CHECKREG r2, 0x501B90A4; 48 CHECKREG r3, 0x402C80A3; 49 CHECKREG r4, 0x300370A2; 50 CHECKREG r5, 0x204E60A1; 51 CHECKREG r6, 0x105F50A0; 52 CHECKREG r7, 0x600AA0A5; 53 54.ifndef BFIN_HOST 55 imm32 r0, 0x10bf50b0; 56 imm32 r1, 0x20be60b1; 57 imm32 r2, 0x30bd70b2; 58 imm32 r3, 0x40bc80b3; 59 imm32 r4, 0x55bb90b4; 60 imm32 r5, 0x60baa0b5; 61 imm32 r6, 0x70b9b0b6; 62 imm32 r7, 0x80b8c0b7; 63 [ P3 + 36 ] = R0; 64 [ P3 + 40 ] = R1; 65 [ P3 + 44 ] = R2; 66 [ P3 + 48 ] = R3; 67 [ P4 + 52 ] = R4; 68 [ P4 + 56 ] = R5; 69 [ P4 + 60 ] = R6; 70 [ P4 + 64 ] = R7; 71 R3 = [ P3 + 36 ]; 72 R4 = [ P3 + 40 ]; 73 R0 = [ P3 + 44 ]; 74 R1 = [ P3 + 48 ]; 75 R2 = [ P4 + 52 ]; 76 R5 = [ P4 + 56 ]; 77 R6 = [ P4 + 60 ]; 78 R7 = [ P4 + 64 ]; 79 CHECKREG r0, 0x30BD70B2; 80 CHECKREG r1, 0x40BC80B3; 81 CHECKREG r2, 0x55BB90B4; 82 CHECKREG r3, 0x10BF50B0; 83 CHECKREG r4, 0x20BE60B1; 84 CHECKREG r5, 0x60BAA0B5; 85 CHECKREG r6, 0x70B9B0B6; 86 CHECKREG r7, 0x80B8C0B7; 87.endif 88 89// initial values 90 imm32 r0, 0x10cf50c0; 91 imm32 r1, 0x20ce60c1; 92 imm32 r2, 0x30c370c2; 93 imm32 r3, 0x40cc80c3; 94 imm32 r4, 0x50cb90c4; 95 imm32 r5, 0x60caa0c5; 96 imm32 r6, 0x70c9b0c6; 97 imm32 r7, 0xd0c8c0c7; 98 [ P5 + 4 ] = R0; 99 [ P5 + 8 ] = R1; 100 [ P5 + 12 ] = R2; 101 [ P5 + 16 ] = R3; 102.ifndef BFIN_HOST 103 [ SP + 20 ] = R4; 104 [ SP + 24 ] = R5; 105 [ SP + 28 ] = R6; 106 [ SP + 32 ] = R7; 107.endif 108 R6 = [ P5 + 4 ]; 109 R5 = [ P5 + 8 ]; 110 R4 = [ P5 + 12 ]; 111 R3 = [ P5 + 16 ]; 112.ifndef BFIN_HOST 113 R2 = [ SP + 20 ]; 114 R0 = [ SP + 24 ]; 115 R7 = [ SP + 28 ]; 116 R1 = [ SP + 32 ]; 117 CHECKREG r0, 0x60CAA0C5; 118 CHECKREG r1, 0xD0C8C0C7; 119 CHECKREG r2, 0x50CB90C4; 120.endif 121 CHECKREG r3, 0x40CC80C3; 122 CHECKREG r4, 0x30C370C2; 123 CHECKREG r5, 0x20CE60C1; 124 CHECKREG r6, 0x10CF50C0; 125 126// initial values 127 imm32 r0, 0x60df50d0; 128 imm32 r1, 0x70de60d1; 129 imm32 r2, 0x80dd70d2; 130 imm32 r3, 0x90dc80d3; 131 imm32 r4, 0xa0db90d4; 132 imm32 r5, 0xb0daa0d5; 133 imm32 r6, 0xc0d9b0d6; 134 imm32 r7, 0xd0d8c0d7; 135 [ FP + 36 ] = R0; 136 [ FP + 40 ] = R1; 137 [ FP + 44 ] = R2; 138 [ FP + 48 ] = R3; 139 [ FP + 52 ] = R4; 140 [ FP + 56 ] = R5; 141 [ FP + 60 ] = R6; 142 [ FP + 64 ] = R7; 143 R3 = [ FP + 36 ]; 144 R4 = [ FP + 40 ]; 145 R0 = [ FP + 44 ]; 146 R1 = [ FP + 48 ]; 147 R2 = [ FP + 52 ]; 148 R5 = [ FP + 56 ]; 149 R6 = [ FP + 60 ]; 150 R7 = [ FP + 64 ]; 151 CHECKREG r0, 0x80DD70D2; 152 CHECKREG r1, 0x90DC80D3; 153 CHECKREG r2, 0xA0DB90D4; 154 CHECKREG r3, 0x60DF50D0; 155 CHECKREG r4, 0x70DE60D1; 156 CHECKREG r5, 0xB0DAA0D5; 157 CHECKREG r6, 0xC0D9B0D6; 158 CHECKREG r7, 0xD0D8C0D7; 159 160 pass 161 162// Pre-load memory with known data 163// More data is defined than will actually be used 164 165 .data 166DATA_ADDR_1: 167 .dd 0x00010203 168 .dd 0x04050607 169 .dd 0x08090A0B 170 .dd 0x0C0D0E0F 171 .dd 0x10111213 172 .dd 0x14151617 173 .dd 0x18191A1B 174 .dd 0x1C1D1E1F 175 .dd 0x11223344 176 .dd 0x55667788 177 .dd 0x99717273 178 .dd 0x74757677 179 .dd 0x82838485 180 .dd 0x86878889 181 .dd 0x80818283 182 .dd 0x84858687 183 .dd 0x01020304 184 .dd 0x05060708 185 .dd 0x09101112 186 .dd 0x14151617 187 .dd 0x18192021 188 .dd 0x22232425 189 .dd 0x26272829 190 .dd 0x30313233 191 .dd 0x34353637 192 .dd 0x38394041 193 .dd 0x42434445 194 .dd 0x46474849 195 .dd 0x50515253 196 .dd 0x54555657 197 .dd 0x58596061 198 .dd 0x62636465 199 .dd 0x66676869 200 .dd 0x74555657 201 .dd 0x78596067 202 .dd 0x72636467 203 .dd 0x76676867 204 .dd 0x00010203 205 .dd 0x04050607 206 .dd 0x08090A0B 207 .dd 0x0C0D0E0F 208 .dd 0x10111213 209 .dd 0x14151617 210 .dd 0x18191A1B 211 .dd 0x1C1D1E1F 212 .dd 0x11223344 213 .dd 0x55667788 214 .dd 0x99717273 215 .dd 0x74757677 216 .dd 0x82838485 217 .dd 0x86878889 218 .dd 0x80818283 219 .dd 0x84858687 220 .dd 0x01020304 221 .dd 0x05060708 222 .dd 0x09101112 223 .dd 0x14151617 224 .dd 0x18192021 225 .dd 0x22232425 226 .dd 0x26272829 227 .dd 0x30313233 228 .dd 0x34353637 229 .dd 0x38394041 230 .dd 0x42434445 231 .dd 0x46474849 232 .dd 0x50515253 233 .dd 0x54555657 234 .dd 0x58596061 235 .dd 0x62636465 236 .dd 0x66676869 237 .dd 0x74555657 238 .dd 0x78596067 239 .dd 0x72636467 240 .dd 0x76676867 241 242DATA_ADDR_2: 243 .dd 0x20212223 244 .dd 0x24252627 245 .dd 0x28292A2B 246 .dd 0x2C2D2E2F 247 .dd 0x30313233 248 .dd 0x34353637 249 .dd 0x38393A3B 250 .dd 0x3C3D3E3F 251 .dd 0x91929394 252 .dd 0x95969798 253 .dd 0x99A1A2A3 254 .dd 0xA5A6A7A8 255 .dd 0xA9B0B1B2 256 .dd 0xB3B4B5B6 257 .dd 0xB7B8B9C0 258 .dd 0x70717273 259 .dd 0x74757677 260 .dd 0x78798081 261 .dd 0x82838485 262 .dd 0x86C283C4 263 .dd 0x81C283C4 264 .dd 0x82C283C4 265 .dd 0x83C283C4 266 .dd 0x84C283C4 267 .dd 0x85C283C4 268 .dd 0x86C283C4 269 .dd 0x87C288C4 270 .dd 0x88C283C4 271 .dd 0x89C283C4 272 .dd 0x80C283C4 273 .dd 0x81C283C4 274 .dd 0x82C288C4 275 .dd 0x94555659 276 .dd 0x98596069 277 .dd 0x92636469 278 .dd 0x96676869 279 .dd 0x00010203 280 .dd 0x04050607 281 .dd 0x08090A0B 282 .dd 0x0C0D0E0F 283 .dd 0x10111213 284 .dd 0x14151617 285 .dd 0x18191A1B 286 .dd 0x1C1D1E1F 287 .dd 0x11223344 288 .dd 0x55667788 289 .dd 0x99717273 290 .dd 0x74757677 291 .dd 0x82838485 292 .dd 0x86878889 293 .dd 0x80818283 294 .dd 0x84858687 295 .dd 0x01020304 296 .dd 0x05060708 297 .dd 0x09101112 298 .dd 0x14151617 299 .dd 0x18192021 300 .dd 0x22232425 301 .dd 0x26272829 302 .dd 0x30313233 303 .dd 0x34353637 304 .dd 0x38394041 305 .dd 0x42434445 306 .dd 0x46474849 307 .dd 0x50515253 308 .dd 0x54555657 309 .dd 0x58596061 310 .dd 0x62636465 311 .dd 0x66676869 312 .dd 0x74555657 313 .dd 0x78596067 314 .dd 0x72636467 315 .dd 0x76676867 316 .dd 0x00010203 317 .dd 0x04050607 318 .dd 0x08090A0B 319 .dd 0x0C0D0E0F 320 .dd 0x10111213 321 .dd 0x14151617 322 .dd 0x18191A1B 323 .dd 0x1C1D1E1F 324 .dd 0x11223344 325 .dd 0x55667788 326 .dd 0x99717273 327 .dd 0x74757677 328 .dd 0x82838485 329 .dd 0x86878889 330 .dd 0x80818283 331 .dd 0x84858687 332 .dd 0x01020304 333 .dd 0x05060708 334 .dd 0x09101112 335 .dd 0x14151617 336 .dd 0x18192021 337 .dd 0x22232425 338 .dd 0x26272829 339 .dd 0x30313233 340 .dd 0x34353637 341 .dd 0x38394041 342 .dd 0x42434445 343 .dd 0x46474849 344 .dd 0x50515253 345 .dd 0x54555657 346 .dd 0x58596061 347 .dd 0x62636465 348 .dd 0x66676869 349 .dd 0x74555657 350 .dd 0x78596067 351 .dd 0x72636467 352 .dd 0x76676867 353 .dd 0x81C283C4 354 .dd 0x82C288C4 355 .dd 0x94555659 356 .dd 0x98596069 357 .dd 0x92636469 358 .dd 0x96676869 359 360DATA_ADDR_3: 361 .dd 0x40414243 362 .dd 0x44454647 363 .dd 0x48494A4B 364 .dd 0x4C4D4E4F 365 .dd 0x50515253 366 .dd 0x54555657 367 .dd 0x58595A5B 368 .dd 0xC5C6C7C8 369 .dd 0xC9CACBCD 370 .dd 0xCFD0D1D2 371 .dd 0xD3D4D5D6 372 .dd 0xD7D8D9DA 373 .dd 0xDBDCDDDE 374 .dd 0xDFE0E1E2 375 .dd 0xE3E4E5E6 376 .dd 0x91E899EA 377 .dd 0x92E899EA 378 .dd 0x93E899EA 379 .dd 0x94E899EA 380 .dd 0x95E899EA 381 .dd 0x96E899EA 382 .dd 0x97E899EA 383 .dd 0x98E899EA 384 .dd 0x99E899EA 385 .dd 0x91E899EA 386 .dd 0x92E899EA 387 .dd 0x93E899EA 388 .dd 0x94E899EA 389 .dd 0x95E899EA 390 .dd 0x96E899EA 391 .dd 0x977899EA 392 .dd 0xa455565a 393 .dd 0xa859606a 394 .dd 0xa263646a 395 .dd 0xa667686a 396 .dd 0x40414243 397 .dd 0x44454647 398 .dd 0x48494A4B 399 .dd 0x4C4D4E4F 400 .dd 0x50515253 401 .dd 0x54555657 402 .dd 0x58595A5B 403 .dd 0xC5C6C7C8 404 .dd 0xC9CACBCD 405 .dd 0xCFD0D1D2 406 .dd 0xD3D4D5D6 407 .dd 0xD7D8D9DA 408 .dd 0xDBDCDDDE 409 .dd 0xDFE0E1E2 410 .dd 0xE3E4E5E6 411 .dd 0x91E899EA 412 .dd 0x92E899EA 413 .dd 0x93E899EA 414 .dd 0x94E899EA 415 .dd 0x95E899EA 416 .dd 0x96E899EA 417 .dd 0x97E899EA 418 .dd 0x98E899EA 419 .dd 0x99E899EA 420 .dd 0x91E899EA 421 .dd 0x92E899EA 422 .dd 0x93E899EA 423 .dd 0x94E899EA 424 .dd 0x95E899EA 425 .dd 0x96E899EA 426 .dd 0x977899EA 427 .dd 0xa455565a 428 .dd 0xa859606a 429 .dd 0xa263646a 430 .dd 0xa667686a 431 .dd 0x20212223 432 .dd 0x24252627 433 .dd 0x28292A2B 434 .dd 0x2C2D2E2F 435 .dd 0x30313233 436 .dd 0x34353637 437 .dd 0x38393A3B 438 .dd 0x3C3D3E3F 439 .dd 0x91929394 440 .dd 0x95969798 441 .dd 0x99A1A2A3 442 .dd 0xA5A6A7A8 443 .dd 0xA9B0B1B2 444 .dd 0xB3B4B5B6 445 .dd 0xB7B8B9C0 446 .dd 0x70717273 447 .dd 0x74757677 448 .dd 0x78798081 449 .dd 0x82838485 450 .dd 0x86C283C4 451 .dd 0x81C283C4 452 .dd 0x82C283C4 453 .dd 0x83C283C4 454 .dd 0x84C283C4 455 .dd 0x85C283C4 456 .dd 0x86C283C4 457 .dd 0x87C288C4 458 .dd 0x88C283C4 459 .dd 0x89C283C4 460 .dd 0x80C283C4 461 462DATA_ADDR_4: 463 .dd 0x60616263 464 .dd 0x64656667 465 .dd 0x68696A6B 466 .dd 0x6C6D6E6F 467 .dd 0x70717273 468 .dd 0x74757677 469 .dd 0x78797A7B 470 .dd 0x7C7D7E7F 471 .dd 0xEBECEDEE 472 .dd 0xF3F4F5F6 473 .dd 0xF7F8F9FA 474 .dd 0xFBFCFDFE 475 .dd 0xFF000102 476 .dd 0x03040506 477 .dd 0x0708090A 478 .dd 0x0B0CAD0E 479 .dd 0xAB0CAD01 480 .dd 0xAB0CAD02 481 .dd 0xAB0CAD03 482 .dd 0xAB0CAD04 483 .dd 0xAB0CAD05 484 .dd 0xAB0CAD06 485 .dd 0xAB0CAA07 486 .dd 0xAB0CAD08 487 .dd 0xAB0CAD09 488 .dd 0xA00CAD1E 489 .dd 0xA10CAD2E 490 .dd 0xA20CAD3E 491 .dd 0xA30CAD4E 492 .dd 0xA40CAD5E 493 .dd 0xA50CAD6E 494 .dd 0xA60CAD7E 495 .dd 0xB455565B 496 .dd 0xB859606B 497 .dd 0xB263646B 498 .dd 0xB667686B 499 .dd 0x60616263 500 .dd 0x64656667 501 .dd 0x68696A6B 502 .dd 0x6C6D6E6F 503 .dd 0x70717273 504 .dd 0x74757677 505 .dd 0x78797A7B 506 .dd 0x7C7D7E7F 507 .dd 0xEBECEDEE 508 .dd 0xF3F4F5F6 509 .dd 0xF7F8F9FA 510 .dd 0xFBFCFDFE 511 .dd 0xFF000102 512 .dd 0x03040506 513 .dd 0x0708090A 514 .dd 0x0B0CAD0E 515 .dd 0xAB0CAD01 516 .dd 0xAB0CAD02 517 .dd 0xAB0CAD03 518 .dd 0xAB0CAD04 519 .dd 0xAB0CAD05 520 .dd 0xAB0CAD06 521 .dd 0xAB0CAA07 522 .dd 0xAB0CAD08 523 .dd 0xAB0CAD09 524 .dd 0xA00CAD1E 525 .dd 0xA10CAD2E 526 .dd 0xA20CAD3E 527 .dd 0xA30CAD4E 528 .dd 0xA40CAD5E 529 .dd 0xA50CAD6E 530 .dd 0xA60CAD7E 531 .dd 0xB455565B 532 .dd 0xB859606B 533 .dd 0xB263646B 534 .dd 0xB667686B 535 536DATA_ADDR_5: 537 .dd 0x80818283 538 .dd 0x84858687 539 .dd 0x88898A8B 540 .dd 0x8C8D8E8F 541 .dd 0x90919293 542 .dd 0x94959697 543 .dd 0x98999A9B 544 .dd 0x9C9D9E9F 545 .dd 0x0F101213 546 .dd 0x14151617 547 .dd 0x18191A1B 548 .dd 0x1C1D1E1F 549 .dd 0x20212223 550 .dd 0x24252627 551 .dd 0x28292A2B 552 .dd 0x2C2D2E2F 553 .dd 0xBC0DBE21 554 .dd 0xBC1DBE22 555 .dd 0xBC2DBE23 556 .dd 0xBC3DBE24 557 .dd 0xBC4DBE65 558 .dd 0xBC5DBE27 559 .dd 0xBC6DBE28 560 .dd 0xBC7DBE29 561 .dd 0xBC8DBE2F 562 .dd 0xBC9DBE20 563 .dd 0xBCADBE21 564 .dd 0xBCBDBE2F 565 .dd 0xBCCDBE23 566 .dd 0xBCDDBE24 567 .dd 0xBCFDBE25 568 .dd 0xC455565C 569 .dd 0xC859606C 570 .dd 0xC263646C 571 .dd 0xC667686C 572 .dd 0xCC0DBE2C 573 574DATA_ADDR_6: 575 .dd 0x00010203 576 .dd 0x04050607 577 .dd 0x08090A0B 578 .dd 0x0C0D0E0F 579 .dd 0x10111213 580 .dd 0x14151617 581 .dd 0x18191A1B 582 .dd 0x1C1D1E1F 583 .dd 0x20212223 584 .dd 0x24252627 585 .dd 0x28292A2B 586 .dd 0x2C2D2E2F 587 .dd 0x30313233 588 .dd 0x34353637 589 .dd 0x38393A3B 590 .dd 0x3C3D3E3F 591 .dd 0x40414243 592 .dd 0x44454647 593 .dd 0x48494A4B 594 .dd 0x4C4D4E4F 595 .dd 0x50515253 596 .dd 0x54555657 597 .dd 0x58595A5B 598 .dd 0x5C5D5E5F 599 .dd 0x60616263 600 .dd 0x64656667 601 .dd 0x68696A6B 602 .dd 0x6C6D6E6F 603 .dd 0x70717273 604 .dd 0x74757677 605 .dd 0x78797A7B 606 .dd 0x7C7D7E7F 607 608DATA_ADDR_7: 609 .dd 0x80818283 610 .dd 0x84858687 611 .dd 0x88898A8B 612 .dd 0x8C8D8E8F 613 .dd 0x90919293 614 .dd 0x94959697 615 .dd 0x98999A9B 616 .dd 0x9C9D9E9F 617 .dd 0xA0A1A2A3 618 .dd 0xA4A5A6A7 619 .dd 0xA8A9AAAB 620 .dd 0xACADAEAF 621 .dd 0xB0B1B2B3 622 .dd 0xB4B5B6B7 623 .dd 0xB8B9BABB 624 .dd 0xBCBDBEBF 625 .dd 0xC0C1C2C3 626 .dd 0xC4C5C6C7 627 .dd 0xC8C9CACB 628 .dd 0xCCCDCECF 629 .dd 0xD0D1D2D3 630 .dd 0xD4D5D6D7 631 .dd 0xD8D9DADB 632 .dd 0xDCDDDEDF 633 .dd 0xE0E1E2E3 634 .dd 0xE4E5E6E7 635 .dd 0xE8E9EAEB 636 .dd 0xECEDEEEF 637 .dd 0xF0F1F2F3 638 .dd 0xF4F5F6F7 639 .dd 0xF8F9FAFB 640 .dd 0xFCFDFEFF 641