1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: llc -mtriple=mips-mti-linux-gnu -o - %s -start-before mips-delay-slot-filler -stop-after mips-branch-expansion | FileCheck %s --check-prefix=MIPS 3# RUN: llc -mtriple=mips-mti-linux-gnu -o - %s -start-before mips-delay-slot-filler -stop-after mips-branch-expansion -relocation-model=pic | FileCheck %s --check-prefix=PIC 4 5# Test the long branch expansion of various branches 6 7--- | 8 define void @expand_BEQ(i1 %a) { 9 br i1 %a, label %iftrue, label %tail 10 11 iftrue: 12 call void asm sideeffect ".space 131068", ""() 13 br label %tail 14 15 tail: 16 ret void 17 } 18 19 define void @expand_BGEZ(i1 %a) { 20 br i1 %a, label %iftrue, label %tail 21 22 iftrue: 23 call void asm sideeffect ".space 131068", ""() 24 br label %tail 25 26 tail: 27 ret void 28 } 29 30 define void @expand_BGTZ(i1 %a) { 31 br i1 %a, label %iftrue, label %tail 32 33 iftrue: 34 call void asm sideeffect ".space 131068", ""() 35 br label %tail 36 37 tail: 38 ret void 39 } 40 41 define void @expand_BLEZ(i1 %a) { 42 br i1 %a, label %iftrue, label %tail 43 44 iftrue: 45 call void asm sideeffect ".space 131068", ""() 46 br label %tail 47 48 tail: 49 ret void 50 } 51 52 define void @expand_BLTZ(i1 %a) { 53 br i1 %a, label %iftrue, label %tail 54 55 iftrue: 56 call void asm sideeffect ".space 131068", ""() 57 br label %tail 58 59 tail: 60 ret void 61 } 62 63 define void @expand_BNE(i1 %a) { 64 br i1 %a, label %iftrue, label %tail 65 66 iftrue: 67 call void asm sideeffect ".space 131068", ""() 68 br label %tail 69 70 tail: 71 ret void 72 } 73 74... 75--- 76 77name: expand_BEQ 78alignment: 2 79exposesReturnsTwice: false 80legalized: false 81regBankSelected: false 82selected: false 83failedISel: false 84tracksRegLiveness: true 85registers: 86liveins: 87 - { reg: '$a0', virtual-reg: '' } 88frameInfo: 89 isFrameAddressTaken: false 90 isReturnAddressTaken: false 91 hasStackMap: false 92 hasPatchPoint: false 93 stackSize: 0 94 offsetAdjustment: 0 95 maxAlignment: 1 96 adjustsStack: false 97 hasCalls: false 98 stackProtector: '' 99 maxCallFrameSize: 0 100 hasOpaqueSPAdjustment: false 101 hasVAStart: false 102 hasMustTailInVarArgFunc: false 103 localFrameSize: 0 104 savePoint: '' 105 restorePoint: '' 106fixedStack: 107stack: 108constants: 109body: | 110 ; MIPS-LABEL: name: expand_BEQ 111 ; MIPS: bb.0 (%ir-block.0): 112 ; MIPS: successors: %bb.2(0x40000000), %bb.1(0x40000000) 113 ; MIPS: renamable $at = ANDi killed renamable $a0, 1 114 ; MIPS: BNE $at, $zero, %bb.2, implicit-def $at { 115 ; MIPS: NOP 116 ; MIPS: } 117 ; MIPS: bb.1 (%ir-block.0): 118 ; MIPS: successors: %bb.3(0x80000000) 119 ; MIPS: J %bb.3, implicit-def $at { 120 ; MIPS: NOP 121 ; MIPS: } 122 ; MIPS: bb.2.iftrue: 123 ; MIPS: successors: %bb.3(0x80000000) 124 ; MIPS: INLINEASM &".space 131068", 1 125 ; MIPS: bb.3.tail: 126 ; MIPS: PseudoReturn undef $ra { 127 ; MIPS: NOP 128 ; MIPS: } 129 ; PIC-LABEL: name: expand_BEQ 130 ; PIC: bb.0 (%ir-block.0): 131 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000) 132 ; PIC: renamable $at = ANDi killed renamable $a0, 1 133 ; PIC: BNE $at, $zero, %bb.3, implicit-def $at { 134 ; PIC: NOP 135 ; PIC: } 136 ; PIC: bb.1 (%ir-block.0): 137 ; PIC: successors: %bb.2(0x80000000) 138 ; PIC: $sp = ADDiu $sp, -8 139 ; PIC: SW $ra, $sp, 0 140 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2 141 ; PIC: BAL_BR %bb.2, implicit-def $ra { 142 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2 143 ; PIC: } 144 ; PIC: bb.2 (%ir-block.0): 145 ; PIC: successors: %bb.4(0x80000000) 146 ; PIC: $at = ADDu $ra, $at 147 ; PIC: $ra = LW $sp, 0 148 ; PIC: JR $at { 149 ; PIC: $sp = ADDiu $sp, 8 150 ; PIC: } 151 ; PIC: bb.3.iftrue: 152 ; PIC: successors: %bb.4(0x80000000) 153 ; PIC: INLINEASM &".space 131068", 1 154 ; PIC: bb.4.tail: 155 ; PIC: PseudoReturn undef $ra { 156 ; PIC: NOP 157 ; PIC: } 158 bb.0 (%ir-block.0): 159 successors: %bb.1(0x40000000), %bb.2(0x40000000) 160 liveins: $a0 161 162 renamable $at = ANDi killed renamable $a0, 1 163 BEQ killed renamable $at, $zero, %bb.2, implicit-def $at 164 165 bb.1.iftrue: 166 successors: %bb.2(0x80000000) 167 168 INLINEASM &".space 131068", 1 169 170 bb.2.tail: 171 PseudoReturn undef $ra 172 173... 174--- 175 176name: expand_BGEZ 177alignment: 2 178exposesReturnsTwice: false 179legalized: false 180regBankSelected: false 181selected: false 182failedISel: false 183tracksRegLiveness: true 184registers: 185liveins: 186 - { reg: '$a0', virtual-reg: '' } 187frameInfo: 188 isFrameAddressTaken: false 189 isReturnAddressTaken: false 190 hasStackMap: false 191 hasPatchPoint: false 192 stackSize: 0 193 offsetAdjustment: 0 194 maxAlignment: 1 195 adjustsStack: false 196 hasCalls: false 197 stackProtector: '' 198 maxCallFrameSize: 0 199 hasOpaqueSPAdjustment: false 200 hasVAStart: false 201 hasMustTailInVarArgFunc: false 202 localFrameSize: 0 203 savePoint: '' 204 restorePoint: '' 205fixedStack: 206stack: 207constants: 208body: | 209 ; MIPS-LABEL: name: expand_BGEZ 210 ; MIPS: bb.0 (%ir-block.0): 211 ; MIPS: successors: %bb.2(0x40000000), %bb.1(0x40000000) 212 ; MIPS: renamable $at = ANDi killed renamable $a0, 1 213 ; MIPS: BLTZ $at, %bb.2, implicit-def $at { 214 ; MIPS: NOP 215 ; MIPS: } 216 ; MIPS: bb.1 (%ir-block.0): 217 ; MIPS: successors: %bb.3(0x80000000) 218 ; MIPS: J %bb.3, implicit-def $at { 219 ; MIPS: NOP 220 ; MIPS: } 221 ; MIPS: bb.2.iftrue: 222 ; MIPS: successors: %bb.3(0x80000000) 223 ; MIPS: INLINEASM &".space 131068", 1 224 ; MIPS: bb.3.tail: 225 ; MIPS: PseudoReturn undef $ra { 226 ; MIPS: NOP 227 ; MIPS: } 228 ; PIC-LABEL: name: expand_BGEZ 229 ; PIC: bb.0 (%ir-block.0): 230 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000) 231 ; PIC: renamable $at = ANDi killed renamable $a0, 1 232 ; PIC: BLTZ $at, %bb.3, implicit-def $at { 233 ; PIC: NOP 234 ; PIC: } 235 ; PIC: bb.1 (%ir-block.0): 236 ; PIC: successors: %bb.2(0x80000000) 237 ; PIC: $sp = ADDiu $sp, -8 238 ; PIC: SW $ra, $sp, 0 239 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2 240 ; PIC: BAL_BR %bb.2, implicit-def $ra { 241 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2 242 ; PIC: } 243 ; PIC: bb.2 (%ir-block.0): 244 ; PIC: successors: %bb.4(0x80000000) 245 ; PIC: $at = ADDu $ra, $at 246 ; PIC: $ra = LW $sp, 0 247 ; PIC: JR $at { 248 ; PIC: $sp = ADDiu $sp, 8 249 ; PIC: } 250 ; PIC: bb.3.iftrue: 251 ; PIC: successors: %bb.4(0x80000000) 252 ; PIC: INLINEASM &".space 131068", 1 253 ; PIC: bb.4.tail: 254 ; PIC: PseudoReturn undef $ra { 255 ; PIC: NOP 256 ; PIC: } 257 bb.0 (%ir-block.0): 258 successors: %bb.1(0x40000000), %bb.2(0x40000000) 259 liveins: $a0 260 261 renamable $at = ANDi killed renamable $a0, 1 262 BGEZ killed renamable $at, %bb.2, implicit-def $at 263 264 bb.1.iftrue: 265 successors: %bb.2(0x80000000) 266 267 INLINEASM &".space 131068", 1 268 269 bb.2.tail: 270 PseudoReturn undef $ra 271 272... 273--- 274 275name: expand_BGTZ 276alignment: 2 277exposesReturnsTwice: false 278legalized: false 279regBankSelected: false 280selected: false 281failedISel: false 282tracksRegLiveness: true 283registers: 284liveins: 285 - { reg: '$a0', virtual-reg: '' } 286frameInfo: 287 isFrameAddressTaken: false 288 isReturnAddressTaken: false 289 hasStackMap: false 290 hasPatchPoint: false 291 stackSize: 0 292 offsetAdjustment: 0 293 maxAlignment: 1 294 adjustsStack: false 295 hasCalls: false 296 stackProtector: '' 297 maxCallFrameSize: 0 298 hasOpaqueSPAdjustment: false 299 hasVAStart: false 300 hasMustTailInVarArgFunc: false 301 localFrameSize: 0 302 savePoint: '' 303 restorePoint: '' 304fixedStack: 305stack: 306constants: 307body: | 308 ; MIPS-LABEL: name: expand_BGTZ 309 ; MIPS: bb.0 (%ir-block.0): 310 ; MIPS: successors: %bb.2(0x40000000), %bb.1(0x40000000) 311 ; MIPS: renamable $at = ANDi killed renamable $a0, 1 312 ; MIPS: BLEZ $at, %bb.2, implicit-def $at { 313 ; MIPS: NOP 314 ; MIPS: } 315 ; MIPS: bb.1 (%ir-block.0): 316 ; MIPS: successors: %bb.3(0x80000000) 317 ; MIPS: J %bb.3, implicit-def $at { 318 ; MIPS: NOP 319 ; MIPS: } 320 ; MIPS: bb.2.iftrue: 321 ; MIPS: successors: %bb.3(0x80000000) 322 ; MIPS: INLINEASM &".space 131068", 1 323 ; MIPS: bb.3.tail: 324 ; MIPS: PseudoReturn undef $ra { 325 ; MIPS: NOP 326 ; MIPS: } 327 ; PIC-LABEL: name: expand_BGTZ 328 ; PIC: bb.0 (%ir-block.0): 329 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000) 330 ; PIC: renamable $at = ANDi killed renamable $a0, 1 331 ; PIC: BLEZ $at, %bb.3, implicit-def $at { 332 ; PIC: NOP 333 ; PIC: } 334 ; PIC: bb.1 (%ir-block.0): 335 ; PIC: successors: %bb.2(0x80000000) 336 ; PIC: $sp = ADDiu $sp, -8 337 ; PIC: SW $ra, $sp, 0 338 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2 339 ; PIC: BAL_BR %bb.2, implicit-def $ra { 340 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2 341 ; PIC: } 342 ; PIC: bb.2 (%ir-block.0): 343 ; PIC: successors: %bb.4(0x80000000) 344 ; PIC: $at = ADDu $ra, $at 345 ; PIC: $ra = LW $sp, 0 346 ; PIC: JR $at { 347 ; PIC: $sp = ADDiu $sp, 8 348 ; PIC: } 349 ; PIC: bb.3.iftrue: 350 ; PIC: successors: %bb.4(0x80000000) 351 ; PIC: INLINEASM &".space 131068", 1 352 ; PIC: bb.4.tail: 353 ; PIC: PseudoReturn undef $ra { 354 ; PIC: NOP 355 ; PIC: } 356 bb.0 (%ir-block.0): 357 successors: %bb.1(0x40000000), %bb.2(0x40000000) 358 liveins: $a0 359 360 renamable $at = ANDi killed renamable $a0, 1 361 BGTZ killed renamable $at, %bb.2, implicit-def $at 362 363 bb.1.iftrue: 364 successors: %bb.2(0x80000000) 365 366 INLINEASM &".space 131068", 1 367 368 bb.2.tail: 369 PseudoReturn undef $ra 370 371... 372--- 373 374name: expand_BLEZ 375alignment: 2 376exposesReturnsTwice: false 377legalized: false 378regBankSelected: false 379selected: false 380failedISel: false 381tracksRegLiveness: true 382registers: 383liveins: 384 - { reg: '$a0', virtual-reg: '' } 385frameInfo: 386 isFrameAddressTaken: false 387 isReturnAddressTaken: false 388 hasStackMap: false 389 hasPatchPoint: false 390 stackSize: 0 391 offsetAdjustment: 0 392 maxAlignment: 1 393 adjustsStack: false 394 hasCalls: false 395 stackProtector: '' 396 maxCallFrameSize: 0 397 hasOpaqueSPAdjustment: false 398 hasVAStart: false 399 hasMustTailInVarArgFunc: false 400 localFrameSize: 0 401 savePoint: '' 402 restorePoint: '' 403fixedStack: 404stack: 405constants: 406body: | 407 ; MIPS-LABEL: name: expand_BLEZ 408 ; MIPS: bb.0 (%ir-block.0): 409 ; MIPS: successors: %bb.2(0x40000000), %bb.1(0x40000000) 410 ; MIPS: renamable $at = ANDi killed renamable $a0, 1 411 ; MIPS: BGTZ $at, %bb.2, implicit-def $at { 412 ; MIPS: NOP 413 ; MIPS: } 414 ; MIPS: bb.1 (%ir-block.0): 415 ; MIPS: successors: %bb.3(0x80000000) 416 ; MIPS: J %bb.3, implicit-def $at { 417 ; MIPS: NOP 418 ; MIPS: } 419 ; MIPS: bb.2.iftrue: 420 ; MIPS: successors: %bb.3(0x80000000) 421 ; MIPS: INLINEASM &".space 131068", 1 422 ; MIPS: bb.3.tail: 423 ; MIPS: PseudoReturn undef $ra { 424 ; MIPS: NOP 425 ; MIPS: } 426 ; PIC-LABEL: name: expand_BLEZ 427 ; PIC: bb.0 (%ir-block.0): 428 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000) 429 ; PIC: renamable $at = ANDi killed renamable $a0, 1 430 ; PIC: BGTZ $at, %bb.3, implicit-def $at { 431 ; PIC: NOP 432 ; PIC: } 433 ; PIC: bb.1 (%ir-block.0): 434 ; PIC: successors: %bb.2(0x80000000) 435 ; PIC: $sp = ADDiu $sp, -8 436 ; PIC: SW $ra, $sp, 0 437 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2 438 ; PIC: BAL_BR %bb.2, implicit-def $ra { 439 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2 440 ; PIC: } 441 ; PIC: bb.2 (%ir-block.0): 442 ; PIC: successors: %bb.4(0x80000000) 443 ; PIC: $at = ADDu $ra, $at 444 ; PIC: $ra = LW $sp, 0 445 ; PIC: JR $at { 446 ; PIC: $sp = ADDiu $sp, 8 447 ; PIC: } 448 ; PIC: bb.3.iftrue: 449 ; PIC: successors: %bb.4(0x80000000) 450 ; PIC: INLINEASM &".space 131068", 1 451 ; PIC: bb.4.tail: 452 ; PIC: PseudoReturn undef $ra { 453 ; PIC: NOP 454 ; PIC: } 455 bb.0 (%ir-block.0): 456 successors: %bb.1(0x40000000), %bb.2(0x40000000) 457 liveins: $a0 458 459 renamable $at = ANDi killed renamable $a0, 1 460 BLEZ killed renamable $at, %bb.2, implicit-def $at 461 462 bb.1.iftrue: 463 successors: %bb.2(0x80000000) 464 465 INLINEASM &".space 131068", 1 466 467 bb.2.tail: 468 PseudoReturn undef $ra 469 470... 471--- 472 473name: expand_BLTZ 474alignment: 2 475exposesReturnsTwice: false 476legalized: false 477regBankSelected: false 478selected: false 479failedISel: false 480tracksRegLiveness: true 481registers: 482liveins: 483 - { reg: '$a0', virtual-reg: '' } 484frameInfo: 485 isFrameAddressTaken: false 486 isReturnAddressTaken: false 487 hasStackMap: false 488 hasPatchPoint: false 489 stackSize: 0 490 offsetAdjustment: 0 491 maxAlignment: 1 492 adjustsStack: false 493 hasCalls: false 494 stackProtector: '' 495 maxCallFrameSize: 0 496 hasOpaqueSPAdjustment: false 497 hasVAStart: false 498 hasMustTailInVarArgFunc: false 499 localFrameSize: 0 500 savePoint: '' 501 restorePoint: '' 502fixedStack: 503stack: 504constants: 505body: | 506 ; MIPS-LABEL: name: expand_BLTZ 507 ; MIPS: bb.0 (%ir-block.0): 508 ; MIPS: successors: %bb.2(0x40000000), %bb.1(0x40000000) 509 ; MIPS: renamable $at = ANDi killed renamable $a0, 1 510 ; MIPS: BGEZ $at, %bb.2, implicit-def $at { 511 ; MIPS: NOP 512 ; MIPS: } 513 ; MIPS: bb.1 (%ir-block.0): 514 ; MIPS: successors: %bb.3(0x80000000) 515 ; MIPS: J %bb.3, implicit-def $at { 516 ; MIPS: NOP 517 ; MIPS: } 518 ; MIPS: bb.2.iftrue: 519 ; MIPS: successors: %bb.3(0x80000000) 520 ; MIPS: INLINEASM &".space 131068", 1 521 ; MIPS: bb.3.tail: 522 ; MIPS: PseudoReturn undef $ra { 523 ; MIPS: NOP 524 ; MIPS: } 525 ; PIC-LABEL: name: expand_BLTZ 526 ; PIC: bb.0 (%ir-block.0): 527 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000) 528 ; PIC: renamable $at = ANDi killed renamable $a0, 1 529 ; PIC: BGEZ $at, %bb.3, implicit-def $at { 530 ; PIC: NOP 531 ; PIC: } 532 ; PIC: bb.1 (%ir-block.0): 533 ; PIC: successors: %bb.2(0x80000000) 534 ; PIC: $sp = ADDiu $sp, -8 535 ; PIC: SW $ra, $sp, 0 536 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2 537 ; PIC: BAL_BR %bb.2, implicit-def $ra { 538 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2 539 ; PIC: } 540 ; PIC: bb.2 (%ir-block.0): 541 ; PIC: successors: %bb.4(0x80000000) 542 ; PIC: $at = ADDu $ra, $at 543 ; PIC: $ra = LW $sp, 0 544 ; PIC: JR $at { 545 ; PIC: $sp = ADDiu $sp, 8 546 ; PIC: } 547 ; PIC: bb.3.iftrue: 548 ; PIC: successors: %bb.4(0x80000000) 549 ; PIC: INLINEASM &".space 131068", 1 550 ; PIC: bb.4.tail: 551 ; PIC: PseudoReturn undef $ra { 552 ; PIC: NOP 553 ; PIC: } 554 bb.0 (%ir-block.0): 555 successors: %bb.1(0x40000000), %bb.2(0x40000000) 556 liveins: $a0 557 558 renamable $at = ANDi killed renamable $a0, 1 559 BLTZ killed renamable $at, %bb.2, implicit-def $at 560 561 bb.1.iftrue: 562 successors: %bb.2(0x80000000) 563 564 INLINEASM &".space 131068", 1 565 566 bb.2.tail: 567 PseudoReturn undef $ra 568 569... 570--- 571 572name: expand_BNE 573alignment: 2 574exposesReturnsTwice: false 575legalized: false 576regBankSelected: false 577selected: false 578failedISel: false 579tracksRegLiveness: true 580registers: 581liveins: 582 - { reg: '$a0', virtual-reg: '' } 583frameInfo: 584 isFrameAddressTaken: false 585 isReturnAddressTaken: false 586 hasStackMap: false 587 hasPatchPoint: false 588 stackSize: 0 589 offsetAdjustment: 0 590 maxAlignment: 1 591 adjustsStack: false 592 hasCalls: false 593 stackProtector: '' 594 maxCallFrameSize: 0 595 hasOpaqueSPAdjustment: false 596 hasVAStart: false 597 hasMustTailInVarArgFunc: false 598 localFrameSize: 0 599 savePoint: '' 600 restorePoint: '' 601fixedStack: 602stack: 603constants: 604body: | 605 ; MIPS-LABEL: name: expand_BNE 606 ; MIPS: bb.0 (%ir-block.0): 607 ; MIPS: successors: %bb.2(0x40000000), %bb.1(0x40000000) 608 ; MIPS: renamable $at = ANDi killed renamable $a0, 1 609 ; MIPS: BEQ $at, $zero, %bb.2, implicit-def $at { 610 ; MIPS: NOP 611 ; MIPS: } 612 ; MIPS: bb.1 (%ir-block.0): 613 ; MIPS: successors: %bb.3(0x80000000) 614 ; MIPS: J %bb.3, implicit-def $at { 615 ; MIPS: NOP 616 ; MIPS: } 617 ; MIPS: bb.2.iftrue: 618 ; MIPS: successors: %bb.3(0x80000000) 619 ; MIPS: INLINEASM &".space 131068", 1 620 ; MIPS: bb.3.tail: 621 ; MIPS: PseudoReturn undef $ra { 622 ; MIPS: NOP 623 ; MIPS: } 624 ; PIC-LABEL: name: expand_BNE 625 ; PIC: bb.0 (%ir-block.0): 626 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000) 627 ; PIC: renamable $at = ANDi killed renamable $a0, 1 628 ; PIC: BEQ $at, $zero, %bb.3, implicit-def $at { 629 ; PIC: NOP 630 ; PIC: } 631 ; PIC: bb.1 (%ir-block.0): 632 ; PIC: successors: %bb.2(0x80000000) 633 ; PIC: $sp = ADDiu $sp, -8 634 ; PIC: SW $ra, $sp, 0 635 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2 636 ; PIC: BAL_BR %bb.2, implicit-def $ra { 637 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2 638 ; PIC: } 639 ; PIC: bb.2 (%ir-block.0): 640 ; PIC: successors: %bb.4(0x80000000) 641 ; PIC: $at = ADDu $ra, $at 642 ; PIC: $ra = LW $sp, 0 643 ; PIC: JR $at { 644 ; PIC: $sp = ADDiu $sp, 8 645 ; PIC: } 646 ; PIC: bb.3.iftrue: 647 ; PIC: successors: %bb.4(0x80000000) 648 ; PIC: INLINEASM &".space 131068", 1 649 ; PIC: bb.4.tail: 650 ; PIC: PseudoReturn undef $ra { 651 ; PIC: NOP 652 ; PIC: } 653 bb.0 (%ir-block.0): 654 successors: %bb.1(0x40000000), %bb.2(0x40000000) 655 liveins: $a0 656 657 renamable $at = ANDi killed renamable $a0, 1 658 BNE killed renamable $at, $zero, %bb.2, implicit-def $at 659 660 bb.1.iftrue: 661 successors: %bb.2(0x80000000) 662 663 INLINEASM &".space 131068", 1 664 665 bb.2.tail: 666 PseudoReturn undef $ra 667 668... 669