50 lines · plain
1# RUN: llc -mtriple=hexagon -run-pass expand-condsets -o - %s -verify-machineinstrs -debug-only=expand-condsets 2>&1 | FileCheck %s2# REQUIRES: asserts3 4# Check that coalesced registers are removed from live intervals.5#6# Check that %3 is coalesced into %4, and that after coalescing7# it is no longer in live intervals.8 9# CHECK-LABEL: After expand-condsets10# CHECK: INTERVALS11# CHECK-NOT: %312# CHECK: MACHINEINSTRS13 14 15--- |16 define void @fred() { ret void }17 18...19---20 21name: fred22tracksRegLiveness: true23isSSA: false24registers:25 - { id: 0, class: intregs }26 - { id: 1, class: intregs }27 - { id: 2, class: predregs }28 - { id: 3, class: intregs }29 - { id: 4, class: intregs }30liveins:31 - { reg: '$r0', virtual-reg: '%0' }32 - { reg: '$r1', virtual-reg: '%1' }33 - { reg: '$p0', virtual-reg: '%2' }34 35body: |36 bb.0:37 liveins: $r0, $r1, $p038 %0 = COPY $r039 %1 = COPY $r140 %2 = COPY $p041 ; Check that %3 was coalesced into %4.42 ; CHECK: %4:intregs = A2_abs %143 ; CHECK: %4:intregs = A2_tfrt killed %2, killed %0, implicit %444 %3 = A2_abs %145 %4 = C2_mux %2, %0, %346 $r0 = COPY %447 J2_jumpr $r31, implicit $r0, implicit-def $pc48...49 50