35 lines · plain
1# RUN: llc -mtriple=riscv32 %s -run-pass=machine-sink -o - | FileCheck %s2# RUN: llc -mtriple=riscv32 %s -passes=machine-sink -o - | FileCheck %s3 4# Verify that sinking of '%20:gpr = LUI 1, implicit $x0' is not inhibited by5# the implicit use of '$x0'.6# Register '$x0' is a 'MRI->isConstantPhysReg()' on RISCV and such uses should7# not inhibit sinking transformation even though they are livein to the block8# they are to be sunk into (inhibit under such conditions should only happen9# for defines).10 11---12name: f13tracksRegLiveness: true14body: |15 ; CHECK-LABEL: bb.1:16 ; CHECK-NEXT: successors: %bb.3(0x80000000)17 ; CHECK-NEXT: liveins: $x018 ; CHECK-NEXT: {{ $}}19 ; CHECK-NEXT: [[LUI:%[0-9]+]]:gpr = LUI 1, implicit $x020 bb.0:21 liveins: $x1022 %10:gpr = COPY $x1023 %20:gpr = LUI 1, implicit $x024 BEQ %10, %10, %bb.225 PseudoBR %bb.126 bb.1:27 liveins: $x028 %30:gpr = ADDI %20, 529 PseudoBR %bb.330 bb.2:31 PseudoBR %bb.332 bb.3:33 PseudoRET34...35