41 lines · plain
1# RUN: llc -mtriple=hexagon -run-pass if-converter -verify-machineinstrs -o - %s | FileCheck %s2 3# CHECK-LABEL: name: foo4# CHECK: $p0 = C2_cmpeqi $r16, 05# Make sure there is no implicit use of r1.6# CHECK: $r1 = L2_ploadruhf_io $p0, $r29, 67 8--- |9 define void @foo() {10 ret void11 }12...13 14 15---16name: foo17tracksRegLiveness: true18 19body: |20 bb.0:21 liveins: $r0, $r1622 successors: %bb.1, %bb.223 $p0 = C2_cmpeqi $r16, 024 J2_jumpt $p0, %bb.2, implicit-def $pc25 26 bb.1:27 ; The lane mask $d0:0002 is equivalent to $r0. LivePhysRegs would ignore28 ; it and treat it as the whole $d0, which is a pair $r1, $r0. The extra29 ; $r1 would cause an (undefined) implicit use to be added during30 ; if-conversion.31 liveins: $d0:0x00000002, $d15:0x00000001, $r1632 successors: %bb.233 $r1 = L2_loadruh_io $r29, 634 S2_storeri_io killed $r16, 0, $r135 36 bb.2:37 liveins: $r038 $d8 = L2_loadrd_io $r29, 839 $d15 = L4_return $r29, implicit-def $r29, implicit-def $pc, implicit $r30, implicit $framekey40 41