| # RUN: llc -march=hexagon -run-pass expand-condsets %s -o - | FileCheck %s | |
| # REQUIRES: asserts | |
| # The physical register as an operand to C2_mux caused a crash. | |
| # Check that this compiles successfully and that the mux is expanded. | |
| # CHECK: %2:intregs = A2_tfrt %1, $r31 | |
| # CHECK: %2:intregs = A2_tfrf killed %1, killed %0, implicit %2(tied-def 0) | |
| name: fred | |
| tracksRegLiveness: true | |
| body: | | |
| bb.0: | |
| successors: %bb.1, %bb.2 | |
| liveins: $r0 | |
| %0:intregs = A2_tfrsi 0 ;; Multiple defs to ensure IsSSA = false | |
| %0:intregs = L2_loadri_io $r0, 0 | |
| %1:predregs = C2_cmplt %0, 10 | |
| %2:intregs = C2_mux %1, $r31, %0 | |
| %3:predregs = C2_cmpeqi %2, 0 | |
| J2_jumpt %3, %bb.1, implicit-def $pc | |
| J2_jump %bb.2, implicit-def $pc | |
| bb.1: | |
| PS_jmpret $r31, implicit-def $pc | |
| bb.2: | |
| PS_jmpret $r31, implicit-def $pc | |
| ... |