1# RUN: llc -mtriple=arm64-apple-macos -mcpu=apple-m1 -sched-print-cycles=true \ 2# RUN: -run-pass=machine-scheduler -debug-only=machine-scheduler -o - %s 2>&1 | FileCheck %s 3 4# RUN: llc -mtriple=arm64-apple-macos -mcpu=apple-m1 -sched-print-cycles=false \ 5# RUN: -run-pass=machine-scheduler -debug-only=machine-scheduler -o - %s 2>&1 | FileCheck %s --check-prefix=NOCYCLES 6 7# REQUIRES: asserts 8--- 9name: mul_mul 10tracksRegLiveness: true 11body: | 12 bb.0: 13 liveins: $x0 14 $x1 = ADDXrr $x0, $x0 15 $x2 = ADDXrr $x1, $x1 16 $x3 = ADDXrr $x2, $x2 17 $x4 = ADDXrr $x2, $x2 18 19# CHECK-LABEL: *** Final schedule for %bb.0 *** 20# CHECK-NEXT: SU(0) [TopReadyCycle = 0, BottomReadyCycle = 0]: $x1 = ADDXrr $x0, $x0 21# CHECK-NEXT: SU(1) [TopReadyCycle = 0, BottomReadyCycle = 1]: $x2 = ADDXrr $x1, $x1 22# CHECK-NEXT: SU(2) [TopReadyCycle = 1, BottomReadyCycle = 0]: $x3 = ADDXrr $x2, $x2 23# CHECK-NEXT: SU(3) [TopReadyCycle = 1, BottomReadyCycle = 0]: $x4 = ADDXrr $x2, $x2 24 25# NOCYCLES-LABEL: *** Final schedule for %bb.0 *** 26# NOCYCLES-NEXT: SU(0): $x1 = ADDXrr $x0, $x0 27# NOCYCLES-NEXT: SU(1): $x2 = ADDXrr $x1, $x1 28# NOCYCLES-NEXT: SU(2): $x3 = ADDXrr $x2, $x2 29# NOCYCLES-NEXT: SU(3): $x4 = ADDXrr $x2, $x2 30