| # 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: |