1185 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=mips-img-linux-gnu -mcpu=mips32r6 -o - %s -start-before mips-delay-slot-filler -stop-after mips-branch-expansion | FileCheck %s --check-prefix=R63# RUN: llc -mtriple=mips-img-linux-gnu -mcpu=mips32r6 -o - %s -start-before mips-delay-slot-filler -stop-after mips-branch-expansion -relocation-model=pic | FileCheck %s --check-prefix=PIC4 5# Test the long branch expansion of various branches6 7--- |8 define void @expand_BEQC(i1 %a) {9 br i1 %a, label %iftrue, label %tail10 11 iftrue:12 call void asm sideeffect ".space 131068", ""()13 br label %tail14 15 tail:16 ret void17 }18 19 define void @expand_BNEC(i1 %a) {20 br i1 %a, label %iftrue, label %tail21 22 iftrue:23 call void asm sideeffect ".space 131068", ""()24 br label %tail25 26 tail:27 ret void28 }29 30 define void @expand_BGEC(i1 %a) {31 br i1 %a, label %iftrue, label %tail32 33 iftrue:34 call void asm sideeffect ".space 131068", ""()35 br label %tail36 37 tail:38 ret void39 }40 41 define void @expand_BGEUC(i1 %a) {42 br i1 %a, label %iftrue, label %tail43 44 iftrue:45 call void asm sideeffect ".space 131068", ""()46 br label %tail47 48 tail:49 ret void50 }51 52 define void @expand_BGEZC(i1 %a) {53 br i1 %a, label %iftrue, label %tail54 55 iftrue:56 call void asm sideeffect ".space 131068", ""()57 br label %tail58 59 tail:60 ret void61 }62 63 define void @expand_BGTZC(i1 %a) {64 br i1 %a, label %iftrue, label %tail65 66 iftrue:67 call void asm sideeffect ".space 131068", ""()68 br label %tail69 70 tail:71 ret void72 }73 74 define void @expand_BLEZC(i1 %a) {75 br i1 %a, label %iftrue, label %tail76 77 iftrue:78 call void asm sideeffect ".space 131068", ""()79 br label %tail80 81 tail:82 ret void83 }84 85 define void @expand_BLTC(i1 %a) {86 br i1 %a, label %iftrue, label %tail87 88 iftrue:89 call void asm sideeffect ".space 131068", ""()90 br label %tail91 92 tail:93 ret void94 }95 96 define void @expand_BLTUC(i1 %a) {97 br i1 %a, label %iftrue, label %tail98 99 iftrue:100 call void asm sideeffect ".space 131068", ""()101 br label %tail102 103 tail:104 ret void105 }106 107 define void @expand_BLTZC(i1 %a) {108 br i1 %a, label %iftrue, label %tail109 110 iftrue:111 call void asm sideeffect ".space 131068", ""()112 br label %tail113 114 tail:115 ret void116 }117 118 define void @expand_BEQZC(i1 %a) {119 br i1 %a, label %iftrue, label %tail120 121 iftrue:122 call void asm sideeffect ".space 8388608", ""()123 br label %tail124 125 tail:126 ret void127 }128 129 define void @expand_BNEZC(i1 %a) {130 br i1 %a, label %iftrue, label %tail131 132 iftrue:133 call void asm sideeffect ".space 8388608", ""()134 br label %tail135 136 tail:137 ret void138 }139 140...141---142 143name: expand_BEQC144alignment: 4145exposesReturnsTwice: false146legalized: false147regBankSelected: false148selected: false149failedISel: false150tracksRegLiveness: true151registers:152liveins:153 - { reg: '$a0', virtual-reg: '' }154frameInfo:155 isFrameAddressTaken: false156 isReturnAddressTaken: false157 hasStackMap: false158 hasPatchPoint: false159 stackSize: 0160 offsetAdjustment: 0161 maxAlignment: 1162 adjustsStack: false163 hasCalls: false164 stackProtector: ''165 maxCallFrameSize: 0166 hasOpaqueSPAdjustment: false167 hasVAStart: false168 hasMustTailInVarArgFunc: false169 localFrameSize: 0170 savePoint: []171 restorePoint: []172fixedStack:173stack:174constants:175body: |176 ; R6-LABEL: name: expand_BEQC177 ; R6: bb.0 (%ir-block.0):178 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)179 ; R6: renamable $at = ANDi killed renamable $a0, 1180 ; R6: BNEC $at, $zero, %bb.2, implicit-def $at181 ; R6: bb.1 (%ir-block.0):182 ; R6: successors: %bb.3(0x80000000)183 ; R6: BC %bb.3184 ; R6: bb.2.iftrue:185 ; R6: successors: %bb.3(0x80000000)186 ; R6: INLINEASM &".space 131068", 1187 ; R6: bb.3.tail:188 ; R6: JIC undef $ra, 0, implicit-def $at189 ; PIC-LABEL: name: expand_BEQC190 ; PIC: bb.0 (%ir-block.0):191 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)192 ; PIC: renamable $at = ANDi killed renamable $a0, 1193 ; PIC: BNEC $at, $zero, %bb.3, implicit-def $at194 ; PIC: bb.1 (%ir-block.0):195 ; PIC: successors: %bb.2(0x80000000)196 ; PIC: $sp = ADDiu $sp, -8197 ; PIC: SW $ra, $sp, 0198 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2199 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2200 ; PIC: BALC %bb.2, implicit-def $ra201 ; PIC: bb.2 (%ir-block.0):202 ; PIC: successors: %bb.4(0x80000000)203 ; PIC: $at = ADDu $ra, $at204 ; PIC: $ra = LW $sp, 0205 ; PIC: $sp = ADDiu $sp, 8206 ; PIC: JIC $at, 0, implicit-def $at207 ; PIC: bb.3.iftrue:208 ; PIC: successors: %bb.4(0x80000000)209 ; PIC: INLINEASM &".space 131068", 1210 ; PIC: bb.4.tail:211 ; PIC: JIC undef $ra, 0, implicit-def $at212 bb.0 (%ir-block.0):213 successors: %bb.1(0x40000000), %bb.2(0x40000000)214 liveins: $a0215 216 renamable $at = ANDi killed renamable $a0, 1217 BEQC killed renamable $at, $zero, %bb.2, implicit-def $at218 219 bb.1.iftrue:220 successors: %bb.2(0x80000000)221 222 INLINEASM &".space 131068", 1223 224 bb.2.tail:225 PseudoReturn undef $ra226 227...228---229 230name: expand_BNEC231alignment: 4232exposesReturnsTwice: false233legalized: false234regBankSelected: false235selected: false236failedISel: false237tracksRegLiveness: true238registers:239liveins:240 - { reg: '$a0', virtual-reg: '' }241frameInfo:242 isFrameAddressTaken: false243 isReturnAddressTaken: false244 hasStackMap: false245 hasPatchPoint: false246 stackSize: 0247 offsetAdjustment: 0248 maxAlignment: 1249 adjustsStack: false250 hasCalls: false251 stackProtector: ''252 maxCallFrameSize: 0253 hasOpaqueSPAdjustment: false254 hasVAStart: false255 hasMustTailInVarArgFunc: false256 localFrameSize: 0257 savePoint: []258 restorePoint: []259fixedStack:260stack:261constants:262body: |263 ; R6-LABEL: name: expand_BNEC264 ; R6: bb.0 (%ir-block.0):265 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)266 ; R6: renamable $at = ANDi killed renamable $a0, 1267 ; R6: BEQC $at, $zero, %bb.2, implicit-def $at268 ; R6: bb.1 (%ir-block.0):269 ; R6: successors: %bb.3(0x80000000)270 ; R6: BC %bb.3271 ; R6: bb.2.iftrue:272 ; R6: successors: %bb.3(0x80000000)273 ; R6: INLINEASM &".space 131068", 1274 ; R6: bb.3.tail:275 ; R6: JIC undef $ra, 0, implicit-def $at276 ; PIC-LABEL: name: expand_BNEC277 ; PIC: bb.0 (%ir-block.0):278 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)279 ; PIC: renamable $at = ANDi killed renamable $a0, 1280 ; PIC: BEQC $at, $zero, %bb.3, implicit-def $at281 ; PIC: bb.1 (%ir-block.0):282 ; PIC: successors: %bb.2(0x80000000)283 ; PIC: $sp = ADDiu $sp, -8284 ; PIC: SW $ra, $sp, 0285 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2286 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2287 ; PIC: BALC %bb.2, implicit-def $ra288 ; PIC: bb.2 (%ir-block.0):289 ; PIC: successors: %bb.4(0x80000000)290 ; PIC: $at = ADDu $ra, $at291 ; PIC: $ra = LW $sp, 0292 ; PIC: $sp = ADDiu $sp, 8293 ; PIC: JIC $at, 0, implicit-def $at294 ; PIC: bb.3.iftrue:295 ; PIC: successors: %bb.4(0x80000000)296 ; PIC: INLINEASM &".space 131068", 1297 ; PIC: bb.4.tail:298 ; PIC: JIC undef $ra, 0, implicit-def $at299 bb.0 (%ir-block.0):300 successors: %bb.1(0x40000000), %bb.2(0x40000000)301 liveins: $a0302 303 renamable $at = ANDi killed renamable $a0, 1304 BNEC killed renamable $at, $zero, %bb.2, implicit-def $at305 306 bb.1.iftrue:307 successors: %bb.2(0x80000000)308 309 INLINEASM &".space 131068", 1310 311 bb.2.tail:312 PseudoReturn undef $ra313 314...315---316 317name: expand_BGEC318alignment: 4319exposesReturnsTwice: false320legalized: false321regBankSelected: false322selected: false323failedISel: false324tracksRegLiveness: true325registers:326liveins:327 - { reg: '$a0', virtual-reg: '' }328frameInfo:329 isFrameAddressTaken: false330 isReturnAddressTaken: false331 hasStackMap: false332 hasPatchPoint: false333 stackSize: 0334 offsetAdjustment: 0335 maxAlignment: 1336 adjustsStack: false337 hasCalls: false338 stackProtector: ''339 maxCallFrameSize: 0340 hasOpaqueSPAdjustment: false341 hasVAStart: false342 hasMustTailInVarArgFunc: false343 localFrameSize: 0344 savePoint: []345 restorePoint: []346fixedStack:347stack:348constants:349body: |350 ; R6-LABEL: name: expand_BGEC351 ; R6: bb.0 (%ir-block.0):352 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)353 ; R6: renamable $at = ANDi killed renamable $a0, 1354 ; R6: BLTC $at, $zero, %bb.2, implicit-def $at355 ; R6: bb.1 (%ir-block.0):356 ; R6: successors: %bb.3(0x80000000)357 ; R6: BC %bb.3358 ; R6: bb.2.iftrue:359 ; R6: successors: %bb.3(0x80000000)360 ; R6: INLINEASM &".space 131068", 1361 ; R6: bb.3.tail:362 ; R6: JIC undef $ra, 0, implicit-def $at363 ; PIC-LABEL: name: expand_BGEC364 ; PIC: bb.0 (%ir-block.0):365 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)366 ; PIC: renamable $at = ANDi killed renamable $a0, 1367 ; PIC: BLTC $at, $zero, %bb.3, implicit-def $at368 ; PIC: bb.1 (%ir-block.0):369 ; PIC: successors: %bb.2(0x80000000)370 ; PIC: $sp = ADDiu $sp, -8371 ; PIC: SW $ra, $sp, 0372 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2373 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2374 ; PIC: BALC %bb.2, implicit-def $ra375 ; PIC: bb.2 (%ir-block.0):376 ; PIC: successors: %bb.4(0x80000000)377 ; PIC: $at = ADDu $ra, $at378 ; PIC: $ra = LW $sp, 0379 ; PIC: $sp = ADDiu $sp, 8380 ; PIC: JIC $at, 0, implicit-def $at381 ; PIC: bb.3.iftrue:382 ; PIC: successors: %bb.4(0x80000000)383 ; PIC: INLINEASM &".space 131068", 1384 ; PIC: bb.4.tail:385 ; PIC: JIC undef $ra, 0, implicit-def $at386 bb.0 (%ir-block.0):387 successors: %bb.1(0x40000000), %bb.2(0x40000000)388 liveins: $a0389 390 renamable $at = ANDi killed renamable $a0, 1391 BGEC killed renamable $at, $zero, %bb.2, implicit-def $at392 393 bb.1.iftrue:394 successors: %bb.2(0x80000000)395 396 INLINEASM &".space 131068", 1397 398 bb.2.tail:399 PseudoReturn undef $ra400 401...402---403 404name: expand_BGEUC405alignment: 4406exposesReturnsTwice: false407legalized: false408regBankSelected: false409selected: false410failedISel: false411tracksRegLiveness: true412registers:413liveins:414 - { reg: '$a0', virtual-reg: '' }415frameInfo:416 isFrameAddressTaken: false417 isReturnAddressTaken: false418 hasStackMap: false419 hasPatchPoint: false420 stackSize: 0421 offsetAdjustment: 0422 maxAlignment: 1423 adjustsStack: false424 hasCalls: false425 stackProtector: ''426 maxCallFrameSize: 0427 hasOpaqueSPAdjustment: false428 hasVAStart: false429 hasMustTailInVarArgFunc: false430 localFrameSize: 0431 savePoint: []432 restorePoint: []433fixedStack:434stack:435constants:436body: |437 ; R6-LABEL: name: expand_BGEUC438 ; R6: bb.0 (%ir-block.0):439 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)440 ; R6: renamable $at = ANDi killed renamable $a0, 1441 ; R6: BLTUC $at, $zero, %bb.2, implicit-def $at442 ; R6: bb.1 (%ir-block.0):443 ; R6: successors: %bb.3(0x80000000)444 ; R6: BC %bb.3445 ; R6: bb.2.iftrue:446 ; R6: successors: %bb.3(0x80000000)447 ; R6: INLINEASM &".space 131068", 1448 ; R6: bb.3.tail:449 ; R6: JIC undef $ra, 0, implicit-def $at450 ; PIC-LABEL: name: expand_BGEUC451 ; PIC: bb.0 (%ir-block.0):452 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)453 ; PIC: renamable $at = ANDi killed renamable $a0, 1454 ; PIC: BLTUC $at, $zero, %bb.3, implicit-def $at455 ; PIC: bb.1 (%ir-block.0):456 ; PIC: successors: %bb.2(0x80000000)457 ; PIC: $sp = ADDiu $sp, -8458 ; PIC: SW $ra, $sp, 0459 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2460 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2461 ; PIC: BALC %bb.2, implicit-def $ra462 ; PIC: bb.2 (%ir-block.0):463 ; PIC: successors: %bb.4(0x80000000)464 ; PIC: $at = ADDu $ra, $at465 ; PIC: $ra = LW $sp, 0466 ; PIC: $sp = ADDiu $sp, 8467 ; PIC: JIC $at, 0, implicit-def $at468 ; PIC: bb.3.iftrue:469 ; PIC: successors: %bb.4(0x80000000)470 ; PIC: INLINEASM &".space 131068", 1471 ; PIC: bb.4.tail:472 ; PIC: JIC undef $ra, 0, implicit-def $at473 bb.0 (%ir-block.0):474 successors: %bb.1(0x40000000), %bb.2(0x40000000)475 liveins: $a0476 477 renamable $at = ANDi killed renamable $a0, 1478 BGEUC killed renamable $at, $zero, %bb.2, implicit-def $at479 480 bb.1.iftrue:481 successors: %bb.2(0x80000000)482 483 INLINEASM &".space 131068", 1484 485 bb.2.tail:486 PseudoReturn undef $ra487 488...489---490 491name: expand_BGEZC492alignment: 4493exposesReturnsTwice: false494legalized: false495regBankSelected: false496selected: false497failedISel: false498tracksRegLiveness: true499registers:500liveins:501 - { reg: '$a0', virtual-reg: '' }502frameInfo:503 isFrameAddressTaken: false504 isReturnAddressTaken: false505 hasStackMap: false506 hasPatchPoint: false507 stackSize: 0508 offsetAdjustment: 0509 maxAlignment: 1510 adjustsStack: false511 hasCalls: false512 stackProtector: ''513 maxCallFrameSize: 0514 hasOpaqueSPAdjustment: false515 hasVAStart: false516 hasMustTailInVarArgFunc: false517 localFrameSize: 0518 savePoint: []519 restorePoint: []520fixedStack:521stack:522constants:523body: |524 ; R6-LABEL: name: expand_BGEZC525 ; R6: bb.0 (%ir-block.0):526 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)527 ; R6: renamable $at = ANDi killed renamable $a0, 1528 ; R6: BLTZC $at, %bb.2, implicit-def $at529 ; R6: bb.1 (%ir-block.0):530 ; R6: successors: %bb.3(0x80000000)531 ; R6: BC %bb.3532 ; R6: bb.2.iftrue:533 ; R6: successors: %bb.3(0x80000000)534 ; R6: INLINEASM &".space 131068", 1535 ; R6: bb.3.tail:536 ; R6: JIC undef $ra, 0, implicit-def $at537 ; PIC-LABEL: name: expand_BGEZC538 ; PIC: bb.0 (%ir-block.0):539 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)540 ; PIC: renamable $at = ANDi killed renamable $a0, 1541 ; PIC: BLTZC $at, %bb.3, implicit-def $at542 ; PIC: bb.1 (%ir-block.0):543 ; PIC: successors: %bb.2(0x80000000)544 ; PIC: $sp = ADDiu $sp, -8545 ; PIC: SW $ra, $sp, 0546 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2547 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2548 ; PIC: BALC %bb.2, implicit-def $ra549 ; PIC: bb.2 (%ir-block.0):550 ; PIC: successors: %bb.4(0x80000000)551 ; PIC: $at = ADDu $ra, $at552 ; PIC: $ra = LW $sp, 0553 ; PIC: $sp = ADDiu $sp, 8554 ; PIC: JIC $at, 0, implicit-def $at555 ; PIC: bb.3.iftrue:556 ; PIC: successors: %bb.4(0x80000000)557 ; PIC: INLINEASM &".space 131068", 1558 ; PIC: bb.4.tail:559 ; PIC: JIC undef $ra, 0, implicit-def $at560 bb.0 (%ir-block.0):561 successors: %bb.1(0x40000000), %bb.2(0x40000000)562 liveins: $a0563 564 renamable $at = ANDi killed renamable $a0, 1565 BGEZC killed renamable $at, %bb.2, implicit-def $at566 567 bb.1.iftrue:568 successors: %bb.2(0x80000000)569 570 INLINEASM &".space 131068", 1571 572 bb.2.tail:573 PseudoReturn undef $ra574 575...576---577 578name: expand_BGTZC579alignment: 4580exposesReturnsTwice: false581legalized: false582regBankSelected: false583selected: false584failedISel: false585tracksRegLiveness: true586registers:587liveins:588 - { reg: '$a0', virtual-reg: '' }589frameInfo:590 isFrameAddressTaken: false591 isReturnAddressTaken: false592 hasStackMap: false593 hasPatchPoint: false594 stackSize: 0595 offsetAdjustment: 0596 maxAlignment: 1597 adjustsStack: false598 hasCalls: false599 stackProtector: ''600 maxCallFrameSize: 0601 hasOpaqueSPAdjustment: false602 hasVAStart: false603 hasMustTailInVarArgFunc: false604 localFrameSize: 0605 savePoint: []606 restorePoint: []607fixedStack:608stack:609constants:610body: |611 ; R6-LABEL: name: expand_BGTZC612 ; R6: bb.0 (%ir-block.0):613 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)614 ; R6: renamable $at = ANDi killed renamable $a0, 1615 ; R6: BLEZC $at, %bb.2, implicit-def $at616 ; R6: bb.1 (%ir-block.0):617 ; R6: successors: %bb.3(0x80000000)618 ; R6: BC %bb.3619 ; R6: bb.2.iftrue:620 ; R6: successors: %bb.3(0x80000000)621 ; R6: INLINEASM &".space 131068", 1622 ; R6: bb.3.tail:623 ; R6: JIC undef $ra, 0, implicit-def $at624 ; PIC-LABEL: name: expand_BGTZC625 ; PIC: bb.0 (%ir-block.0):626 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)627 ; PIC: renamable $at = ANDi killed renamable $a0, 1628 ; PIC: BLEZC $at, %bb.3, implicit-def $at629 ; PIC: bb.1 (%ir-block.0):630 ; PIC: successors: %bb.2(0x80000000)631 ; PIC: $sp = ADDiu $sp, -8632 ; PIC: SW $ra, $sp, 0633 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2634 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2635 ; PIC: BALC %bb.2, implicit-def $ra636 ; PIC: bb.2 (%ir-block.0):637 ; PIC: successors: %bb.4(0x80000000)638 ; PIC: $at = ADDu $ra, $at639 ; PIC: $ra = LW $sp, 0640 ; PIC: $sp = ADDiu $sp, 8641 ; PIC: JIC $at, 0, implicit-def $at642 ; PIC: bb.3.iftrue:643 ; PIC: successors: %bb.4(0x80000000)644 ; PIC: INLINEASM &".space 131068", 1645 ; PIC: bb.4.tail:646 ; PIC: JIC undef $ra, 0, implicit-def $at647 bb.0 (%ir-block.0):648 successors: %bb.1(0x40000000), %bb.2(0x40000000)649 liveins: $a0650 651 renamable $at = ANDi killed renamable $a0, 1652 BGTZC killed renamable $at, %bb.2, implicit-def $at653 654 bb.1.iftrue:655 successors: %bb.2(0x80000000)656 657 INLINEASM &".space 131068", 1658 659 bb.2.tail:660 PseudoReturn undef $ra661 662...663---664 665name: expand_BLEZC666alignment: 4667exposesReturnsTwice: false668legalized: false669regBankSelected: false670selected: false671failedISel: false672tracksRegLiveness: true673registers:674liveins:675 - { reg: '$a0', virtual-reg: '' }676frameInfo:677 isFrameAddressTaken: false678 isReturnAddressTaken: false679 hasStackMap: false680 hasPatchPoint: false681 stackSize: 0682 offsetAdjustment: 0683 maxAlignment: 1684 adjustsStack: false685 hasCalls: false686 stackProtector: ''687 maxCallFrameSize: 0688 hasOpaqueSPAdjustment: false689 hasVAStart: false690 hasMustTailInVarArgFunc: false691 localFrameSize: 0692 savePoint: []693 restorePoint: []694fixedStack:695stack:696constants:697body: |698 ; R6-LABEL: name: expand_BLEZC699 ; R6: bb.0 (%ir-block.0):700 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)701 ; R6: renamable $at = ANDi killed renamable $a0, 1702 ; R6: BGTZC $at, %bb.2, implicit-def $at703 ; R6: bb.1 (%ir-block.0):704 ; R6: successors: %bb.3(0x80000000)705 ; R6: BC %bb.3706 ; R6: bb.2.iftrue:707 ; R6: successors: %bb.3(0x80000000)708 ; R6: INLINEASM &".space 131068", 1709 ; R6: bb.3.tail:710 ; R6: JIC undef $ra, 0, implicit-def $at711 ; PIC-LABEL: name: expand_BLEZC712 ; PIC: bb.0 (%ir-block.0):713 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)714 ; PIC: renamable $at = ANDi killed renamable $a0, 1715 ; PIC: BGTZC $at, %bb.3, implicit-def $at716 ; PIC: bb.1 (%ir-block.0):717 ; PIC: successors: %bb.2(0x80000000)718 ; PIC: $sp = ADDiu $sp, -8719 ; PIC: SW $ra, $sp, 0720 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2721 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2722 ; PIC: BALC %bb.2, implicit-def $ra723 ; PIC: bb.2 (%ir-block.0):724 ; PIC: successors: %bb.4(0x80000000)725 ; PIC: $at = ADDu $ra, $at726 ; PIC: $ra = LW $sp, 0727 ; PIC: $sp = ADDiu $sp, 8728 ; PIC: JIC $at, 0, implicit-def $at729 ; PIC: bb.3.iftrue:730 ; PIC: successors: %bb.4(0x80000000)731 ; PIC: INLINEASM &".space 131068", 1732 ; PIC: bb.4.tail:733 ; PIC: JIC undef $ra, 0, implicit-def $at734 bb.0 (%ir-block.0):735 successors: %bb.1(0x40000000), %bb.2(0x40000000)736 liveins: $a0737 738 renamable $at = ANDi killed renamable $a0, 1739 BLEZC killed renamable $at, %bb.2, implicit-def $at740 741 bb.1.iftrue:742 successors: %bb.2(0x80000000)743 744 INLINEASM &".space 131068", 1745 746 bb.2.tail:747 PseudoReturn undef $ra748 749...750---751 752name: expand_BLTC753alignment: 4754exposesReturnsTwice: false755legalized: false756regBankSelected: false757selected: false758failedISel: false759tracksRegLiveness: true760registers:761liveins:762 - { reg: '$a0', virtual-reg: '' }763frameInfo:764 isFrameAddressTaken: false765 isReturnAddressTaken: false766 hasStackMap: false767 hasPatchPoint: false768 stackSize: 0769 offsetAdjustment: 0770 maxAlignment: 1771 adjustsStack: false772 hasCalls: false773 stackProtector: ''774 maxCallFrameSize: 0775 hasOpaqueSPAdjustment: false776 hasVAStart: false777 hasMustTailInVarArgFunc: false778 localFrameSize: 0779 savePoint: []780 restorePoint: []781fixedStack:782stack:783constants:784body: |785 ; R6-LABEL: name: expand_BLTC786 ; R6: bb.0 (%ir-block.0):787 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)788 ; R6: renamable $at = ANDi killed renamable $a0, 1789 ; R6: BGEC $at, $zero, %bb.2, implicit-def $at790 ; R6: bb.1 (%ir-block.0):791 ; R6: successors: %bb.3(0x80000000)792 ; R6: BC %bb.3793 ; R6: bb.2.iftrue:794 ; R6: successors: %bb.3(0x80000000)795 ; R6: INLINEASM &".space 131068", 1796 ; R6: bb.3.tail:797 ; R6: JIC undef $ra, 0, implicit-def $at798 ; PIC-LABEL: name: expand_BLTC799 ; PIC: bb.0 (%ir-block.0):800 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)801 ; PIC: renamable $at = ANDi killed renamable $a0, 1802 ; PIC: BGEC $at, $zero, %bb.3, implicit-def $at803 ; PIC: bb.1 (%ir-block.0):804 ; PIC: successors: %bb.2(0x80000000)805 ; PIC: $sp = ADDiu $sp, -8806 ; PIC: SW $ra, $sp, 0807 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2808 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2809 ; PIC: BALC %bb.2, implicit-def $ra810 ; PIC: bb.2 (%ir-block.0):811 ; PIC: successors: %bb.4(0x80000000)812 ; PIC: $at = ADDu $ra, $at813 ; PIC: $ra = LW $sp, 0814 ; PIC: $sp = ADDiu $sp, 8815 ; PIC: JIC $at, 0, implicit-def $at816 ; PIC: bb.3.iftrue:817 ; PIC: successors: %bb.4(0x80000000)818 ; PIC: INLINEASM &".space 131068", 1819 ; PIC: bb.4.tail:820 ; PIC: JIC undef $ra, 0, implicit-def $at821 bb.0 (%ir-block.0):822 successors: %bb.1(0x40000000), %bb.2(0x40000000)823 liveins: $a0824 825 renamable $at = ANDi killed renamable $a0, 1826 BLTC killed renamable $at, $zero, %bb.2, implicit-def $at827 828 bb.1.iftrue:829 successors: %bb.2(0x80000000)830 831 INLINEASM &".space 131068", 1832 833 bb.2.tail:834 PseudoReturn undef $ra835 836...837---838 839name: expand_BLTUC840alignment: 4841exposesReturnsTwice: false842legalized: false843regBankSelected: false844selected: false845failedISel: false846tracksRegLiveness: true847registers:848liveins:849 - { reg: '$a0', virtual-reg: '' }850frameInfo:851 isFrameAddressTaken: false852 isReturnAddressTaken: false853 hasStackMap: false854 hasPatchPoint: false855 stackSize: 0856 offsetAdjustment: 0857 maxAlignment: 1858 adjustsStack: false859 hasCalls: false860 stackProtector: ''861 maxCallFrameSize: 0862 hasOpaqueSPAdjustment: false863 hasVAStart: false864 hasMustTailInVarArgFunc: false865 localFrameSize: 0866 savePoint: []867 restorePoint: []868fixedStack:869stack:870constants:871body: |872 ; R6-LABEL: name: expand_BLTUC873 ; R6: bb.0 (%ir-block.0):874 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)875 ; R6: renamable $at = ANDi killed renamable $a0, 1876 ; R6: BGEUC $at, $zero, %bb.2, implicit-def $at877 ; R6: bb.1 (%ir-block.0):878 ; R6: successors: %bb.3(0x80000000)879 ; R6: BC %bb.3880 ; R6: bb.2.iftrue:881 ; R6: successors: %bb.3(0x80000000)882 ; R6: INLINEASM &".space 131068", 1883 ; R6: bb.3.tail:884 ; R6: JIC undef $ra, 0, implicit-def $at885 ; PIC-LABEL: name: expand_BLTUC886 ; PIC: bb.0 (%ir-block.0):887 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)888 ; PIC: renamable $at = ANDi killed renamable $a0, 1889 ; PIC: BGEUC $at, $zero, %bb.3, implicit-def $at890 ; PIC: bb.1 (%ir-block.0):891 ; PIC: successors: %bb.2(0x80000000)892 ; PIC: $sp = ADDiu $sp, -8893 ; PIC: SW $ra, $sp, 0894 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2895 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2896 ; PIC: BALC %bb.2, implicit-def $ra897 ; PIC: bb.2 (%ir-block.0):898 ; PIC: successors: %bb.4(0x80000000)899 ; PIC: $at = ADDu $ra, $at900 ; PIC: $ra = LW $sp, 0901 ; PIC: $sp = ADDiu $sp, 8902 ; PIC: JIC $at, 0, implicit-def $at903 ; PIC: bb.3.iftrue:904 ; PIC: successors: %bb.4(0x80000000)905 ; PIC: INLINEASM &".space 131068", 1906 ; PIC: bb.4.tail:907 ; PIC: JIC undef $ra, 0, implicit-def $at908 bb.0 (%ir-block.0):909 successors: %bb.1(0x40000000), %bb.2(0x40000000)910 liveins: $a0911 912 renamable $at = ANDi killed renamable $a0, 1913 BLTUC killed renamable $at, $zero, %bb.2, implicit-def $at914 915 bb.1.iftrue:916 successors: %bb.2(0x80000000)917 918 INLINEASM &".space 131068", 1919 920 bb.2.tail:921 PseudoReturn undef $ra922 923...924---925 926name: expand_BLTZC927alignment: 4928exposesReturnsTwice: false929legalized: false930regBankSelected: false931selected: false932failedISel: false933tracksRegLiveness: true934registers:935liveins:936 - { reg: '$a0', virtual-reg: '' }937frameInfo:938 isFrameAddressTaken: false939 isReturnAddressTaken: false940 hasStackMap: false941 hasPatchPoint: false942 stackSize: 0943 offsetAdjustment: 0944 maxAlignment: 1945 adjustsStack: false946 hasCalls: false947 stackProtector: ''948 maxCallFrameSize: 0949 hasOpaqueSPAdjustment: false950 hasVAStart: false951 hasMustTailInVarArgFunc: false952 localFrameSize: 0953 savePoint: []954 restorePoint: []955fixedStack:956stack:957constants:958body: |959 ; R6-LABEL: name: expand_BLTZC960 ; R6: bb.0 (%ir-block.0):961 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)962 ; R6: renamable $at = ANDi killed renamable $a0, 1963 ; R6: BGEZC $at, %bb.2, implicit-def $at964 ; R6: bb.1 (%ir-block.0):965 ; R6: successors: %bb.3(0x80000000)966 ; R6: BC %bb.3967 ; R6: bb.2.iftrue:968 ; R6: successors: %bb.3(0x80000000)969 ; R6: INLINEASM &".space 131068", 1970 ; R6: bb.3.tail:971 ; R6: JIC undef $ra, 0, implicit-def $at972 ; PIC-LABEL: name: expand_BLTZC973 ; PIC: bb.0 (%ir-block.0):974 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)975 ; PIC: renamable $at = ANDi killed renamable $a0, 1976 ; PIC: BGEZC $at, %bb.3, implicit-def $at977 ; PIC: bb.1 (%ir-block.0):978 ; PIC: successors: %bb.2(0x80000000)979 ; PIC: $sp = ADDiu $sp, -8980 ; PIC: SW $ra, $sp, 0981 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.2982 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.2983 ; PIC: BALC %bb.2, implicit-def $ra984 ; PIC: bb.2 (%ir-block.0):985 ; PIC: successors: %bb.4(0x80000000)986 ; PIC: $at = ADDu $ra, $at987 ; PIC: $ra = LW $sp, 0988 ; PIC: $sp = ADDiu $sp, 8989 ; PIC: JIC $at, 0, implicit-def $at990 ; PIC: bb.3.iftrue:991 ; PIC: successors: %bb.4(0x80000000)992 ; PIC: INLINEASM &".space 131068", 1993 ; PIC: bb.4.tail:994 ; PIC: JIC undef $ra, 0, implicit-def $at995 bb.0 (%ir-block.0):996 successors: %bb.1(0x40000000), %bb.2(0x40000000)997 liveins: $a0998 999 renamable $at = ANDi killed renamable $a0, 11000 BLTZC killed renamable $at, %bb.2, implicit-def $at1001 1002 bb.1.iftrue:1003 successors: %bb.2(0x80000000)1004 1005 INLINEASM &".space 131068", 11006 1007 bb.2.tail:1008 PseudoReturn undef $ra1009 1010...1011---1012 1013name: expand_BEQZC1014alignment: 41015exposesReturnsTwice: false1016legalized: false1017regBankSelected: false1018selected: false1019failedISel: false1020tracksRegLiveness: true1021registers:1022liveins:1023 - { reg: '$a0', virtual-reg: '' }1024frameInfo:1025 isFrameAddressTaken: false1026 isReturnAddressTaken: false1027 hasStackMap: false1028 hasPatchPoint: false1029 stackSize: 01030 offsetAdjustment: 01031 maxAlignment: 11032 adjustsStack: false1033 hasCalls: false1034 stackProtector: ''1035 maxCallFrameSize: 01036 hasOpaqueSPAdjustment: false1037 hasVAStart: false1038 hasMustTailInVarArgFunc: false1039 localFrameSize: 01040 savePoint: []1041 restorePoint: []1042fixedStack:1043stack:1044constants:1045body: |1046 ; R6-LABEL: name: expand_BEQZC1047 ; R6: bb.0 (%ir-block.0):1048 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)1049 ; R6: renamable $at = ANDi killed renamable $a0, 11050 ; R6: BNEZC $at, %bb.2, implicit-def $at1051 ; R6: bb.1 (%ir-block.0):1052 ; R6: successors: %bb.3(0x80000000)1053 ; R6: BC %bb.31054 ; R6: bb.2.iftrue:1055 ; R6: successors: %bb.3(0x80000000)1056 ; R6: INLINEASM &".space 8388608", 11057 ; R6: bb.3.tail:1058 ; R6: JIC undef $ra, 0, implicit-def $at1059 ; PIC-LABEL: name: expand_BEQZC1060 ; PIC: bb.0 (%ir-block.0):1061 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)1062 ; PIC: renamable $at = ANDi killed renamable $a0, 11063 ; PIC: BNEZC $at, %bb.3, implicit-def $at1064 ; PIC: bb.1 (%ir-block.0):1065 ; PIC: successors: %bb.2(0x80000000)1066 ; PIC: $sp = ADDiu $sp, -81067 ; PIC: SW $ra, $sp, 01068 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.21069 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.21070 ; PIC: BALC %bb.2, implicit-def $ra1071 ; PIC: bb.2 (%ir-block.0):1072 ; PIC: successors: %bb.4(0x80000000)1073 ; PIC: $at = ADDu $ra, $at1074 ; PIC: $ra = LW $sp, 01075 ; PIC: $sp = ADDiu $sp, 81076 ; PIC: JIC $at, 0, implicit-def $at1077 ; PIC: bb.3.iftrue:1078 ; PIC: successors: %bb.4(0x80000000)1079 ; PIC: INLINEASM &".space 8388608", 11080 ; PIC: bb.4.tail:1081 ; PIC: JIC undef $ra, 0, implicit-def $at1082 bb.0 (%ir-block.0):1083 successors: %bb.1(0x40000000), %bb.2(0x40000000)1084 liveins: $a01085 1086 renamable $at = ANDi killed renamable $a0, 11087 BEQZC killed renamable $at, %bb.2, implicit-def $at1088 1089 bb.1.iftrue:1090 successors: %bb.2(0x80000000)1091 1092 INLINEASM &".space 8388608", 11093 1094 bb.2.tail:1095 PseudoReturn undef $ra1096 1097...1098---1099 1100name: expand_BNEZC1101alignment: 41102exposesReturnsTwice: false1103legalized: false1104regBankSelected: false1105selected: false1106failedISel: false1107tracksRegLiveness: true1108registers:1109liveins:1110 - { reg: '$a0', virtual-reg: '' }1111frameInfo:1112 isFrameAddressTaken: false1113 isReturnAddressTaken: false1114 hasStackMap: false1115 hasPatchPoint: false1116 stackSize: 01117 offsetAdjustment: 01118 maxAlignment: 11119 adjustsStack: false1120 hasCalls: false1121 stackProtector: ''1122 maxCallFrameSize: 01123 hasOpaqueSPAdjustment: false1124 hasVAStart: false1125 hasMustTailInVarArgFunc: false1126 localFrameSize: 01127 savePoint: []1128 restorePoint: []1129fixedStack:1130stack:1131constants:1132body: |1133 ; R6-LABEL: name: expand_BNEZC1134 ; R6: bb.0 (%ir-block.0):1135 ; R6: successors: %bb.2(0x40000000), %bb.1(0x40000000)1136 ; R6: renamable $at = ANDi killed renamable $a0, 11137 ; R6: BEQZC $at, %bb.2, implicit-def $at1138 ; R6: bb.1 (%ir-block.0):1139 ; R6: successors: %bb.3(0x80000000)1140 ; R6: BC %bb.31141 ; R6: bb.2.iftrue:1142 ; R6: successors: %bb.3(0x80000000)1143 ; R6: INLINEASM &".space 8388608", 11144 ; R6: bb.3.tail:1145 ; R6: JIC undef $ra, 0, implicit-def $at1146 ; PIC-LABEL: name: expand_BNEZC1147 ; PIC: bb.0 (%ir-block.0):1148 ; PIC: successors: %bb.3(0x40000000), %bb.1(0x40000000)1149 ; PIC: renamable $at = ANDi killed renamable $a0, 11150 ; PIC: BEQZC $at, %bb.3, implicit-def $at1151 ; PIC: bb.1 (%ir-block.0):1152 ; PIC: successors: %bb.2(0x80000000)1153 ; PIC: $sp = ADDiu $sp, -81154 ; PIC: SW $ra, $sp, 01155 ; PIC: $at = LONG_BRANCH_LUi target-flags(mips-abs-hi) %bb.4, %bb.21156 ; PIC: $at = LONG_BRANCH_ADDiu $at, target-flags(mips-abs-lo) %bb.4, %bb.21157 ; PIC: BALC %bb.2, implicit-def $ra1158 ; PIC: bb.2 (%ir-block.0):1159 ; PIC: successors: %bb.4(0x80000000)1160 ; PIC: $at = ADDu $ra, $at1161 ; PIC: $ra = LW $sp, 01162 ; PIC: $sp = ADDiu $sp, 81163 ; PIC: JIC $at, 0, implicit-def $at1164 ; PIC: bb.3.iftrue:1165 ; PIC: successors: %bb.4(0x80000000)1166 ; PIC: INLINEASM &".space 8388608", 11167 ; PIC: bb.4.tail:1168 ; PIC: JIC undef $ra, 0, implicit-def $at1169 bb.0 (%ir-block.0):1170 successors: %bb.1(0x40000000), %bb.2(0x40000000)1171 liveins: $a01172 1173 renamable $at = ANDi killed renamable $a0, 11174 BNEZC killed renamable $at, %bb.2, implicit-def $at1175 1176 bb.1.iftrue:1177 successors: %bb.2(0x80000000)1178 1179 INLINEASM &".space 8388608", 11180 1181 bb.2.tail:1182 PseudoReturn undef $ra1183 1184...1185