| # RUN: llc -march=mips64 -o - %s -run-pass=simple-register-coalescing | FileCheck %s | |
| --- | |
| name: f | |
| tracksRegLiveness: true | |
| body: | | |
| bb.0: | |
| successors: %bb.1 | |
| %21:gpr32 = ADDiu $zero, 0 | |
| %22:gpr32 = COPY %21 | |
| %22:gpr32 = ADDiu %22, 1 | |
| J %bb.1, implicit-def dead $at | |
| bb.1: | |
| successors: %bb.2 | |
| BEQ %22, $zero, %bb.2, implicit-def $at | |
| bb.2: | |
| successors: %bb.2, %bb.3 | |
| %22:gpr32 = COPY %21 | |
| %21:gpr32 = COPY %22 | |
| BEQ undef %0:gpr32, $zero, %bb.2, implicit-def $at | |
| bb.3: | |
| ... | |
| # We should not hoist the | |
| # | |
| # %22:gpr32 = COPY %21 | |
| # | |
| # into bb.1 since %22 is used in the BEQ. | |
| # CHECK-LABEL: bb.1: | |
| # CHECK-NOT: COPY | |
| # CHECK: BEQ | |
| # CHECK-LABEL: bb.2: |