xref: /llvm-project/llvm/test/CodeGen/AArch64/dump-reserved-cycles.mir (revision f0a290faf8011805db785782f3a21458c3034ea5)
1# RUN: llc -mtriple=aarch64-none-linux-gnu -mcpu=cortex-a55 -misched-dump-reserved-cycles=true \
2# RUN: -run-pass=machine-scheduler -debug-only=machine-scheduler -o - %s 2>&1 | FileCheck %s
3
4# RUN: llc -mtriple=aarch64-none-linux-gnu -mcpu=cortex-a55 -misched-dump-reserved-cycles=false\
5# RUN: -run-pass=machine-scheduler -debug-only=machine-scheduler -o - %s 2>&1 | FileCheck %s --check-prefix=NODUMP
6
7# REQUIRES: asserts
8---
9name: f
10tracksRegLiveness: true
11body:             |
12  bb.0:
13    liveins: $x0, $x1, $x2
14    $x3 = ADDXrr $x0, $x0
15    $x4 = ADDXrr $x1, $x1
16    $x5 = ADDXrr $x2, $x2
17
18# It is enough to check the last one of the printout of the state of
19# the schedule boundary, just before the final schedule is printed.
20
21# CHECK-LABEL:   Ready @1c
22# CHECK-NEXT:   CortexA55UnitALU +1x1u
23# CHECK-NEXT: BotQ.A @1c
24# CHECK-NEXT:   Retired: 3
25# CHECK-NEXT:   Executed: 1c
26# CHECK-NEXT:   Critical: 1c, 3 MOps
27# CHECK-NEXT:   ExpectedLatency: 0c
28# CHECK-NEXT:   - Latency limited.
29# CHECK-NEXT: CortexA55UnitALU(0) = 1
30# CHECK-NEXT: CortexA55UnitALU(1) = 0
31# CHECK-NEXT: CortexA55UnitB(0) = 4294967295
32# CHECK-NEXT: CortexA55UnitDiv(0) = 4294967295
33# CHECK-NEXT: CortexA55UnitFPALU(0) = 4294967295
34# CHECK-NEXT: CortexA55UnitFPALU(1) = 4294967295
35# CHECK-NEXT: CortexA55UnitFPDIV(0) = 4294967295
36# CHECK-NEXT: CortexA55UnitFPMAC(0) = 4294967295
37# CHECK-NEXT: CortexA55UnitFPMAC(1) = 4294967295
38# CHECK-NEXT: CortexA55UnitLd(0) = 4294967295
39# CHECK-NEXT: CortexA55UnitMAC(0) = 4294967295
40# CHECK-NEXT: CortexA55UnitSt(0) = 4294967295
41# CHECK-NEXT: ** ScheduleDAGMILive::schedule picking next node
42# CHECK-NEXT: *** Final schedule for %bb.0 ***
43# CHECK-NEXT: SU(0):   $x3 = ADDXrr $x0, $x0
44# CHECK-NEXT: SU(1):   $x4 = ADDXrr $x1, $x1
45# CHECK-NEXT: SU(2):   $x5 = ADDXrr $x2, $x2
46
47# NODUMP-LABEL:   Ready @1c
48# NODUMP-NEXT:   CortexA55UnitALU +1x1u
49# NODUMP-NEXT: BotQ.A @1c
50# NODUMP-NEXT:   Retired: 3
51# NODUMP-NEXT:   Executed: 1c
52# NODUMP-NEXT:   Critical: 1c, 3 MOps
53# NODUMP-NEXT:   ExpectedLatency: 0c
54# NODUMP-NEXT:   - Latency limited.
55# NODUMP-NEXT: ** ScheduleDAGMILive::schedule picking next node
56# NODUMP-NEXT: *** Final schedule for %bb.0 ***
57# NODUMP-NEXT: SU(0):   $x3 = ADDXrr $x0, $x0
58# NODUMP-NEXT: SU(1):   $x4 = ADDXrr $x1, $x1
59# NODUMP-NEXT: SU(2):   $x5 = ADDXrr $x2, $x2
60
61