46 lines · plain
1; REQUIRES: asserts2 3; RUN: llc < %s -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \4; RUN: -stop-after=postmisched -debug-only=machine-scheduler 2>&1 >/dev/null | FileCheck %s5 6define void @pr47155() {7; CHECK-LABEL: Machine code for function pr471558; CHECK: *** Final schedule for %bb.0 ***9; CHECK: ********** MI Scheduling **********10; CHECK-NEXT: pr47155:%bb.0 entry11; CHECK: SU(0): INLINEASM &"mtlr 31"{{.*}}implicit-def early-clobber $lr12; CHECK: Successors:13; CHECK-NEXT: SU(1): Out Latency=014; CHECK-NEXT: SU(1): Ord Latency=0 Barrier15; CHECK-NEXT: SU(1): INLINEASM &"mtlr 31"{{.*}}implicit-def early-clobber $lr816; CHECK: Predecessors:17; CHECK-NEXT: SU(0): Out Latency=018; CHECK-NEXT: SU(0): Ord Latency=0 Barrier19; CHECK-NEXT: ExitSU:20entry:21 call void asm sideeffect "mtlr 31", "~{lr}"()22 call void asm sideeffect "mtlr 31", "~{lr8}"()23 ret void24}25 26define void @pr47156(ptr %fn) {27; CHECK-LABEL: Machine code for function pr4715628; CHECK: *** Final schedule for %bb.0 ***29; CHECK: ********** MI Scheduling **********30; CHECK-NEXT: pr47156:%bb.0 entry31; CHECK: SU(0): INLINEASM &"mtctr 31"{{.*}}implicit-def early-clobber $ctr32; CHECK: Successors:33; CHECK-NEXT: SU(1): Out Latency=034; CHECK-NEXT: SU(1): MTCTR8 renamable $x3, implicit-def $ctr835; CHECK: Predecessors:36; CHECK-NEXT: SU(0): Out Latency=037; CHECK-NEXT: Successors:38; CHECK-NEXT: ExitSU:39; CHECK-NEXT: SU(2):40entry:41 call void asm sideeffect "mtctr 31", "~{ctr}"()42 tail call void %fn()43 ret void44}45 46