217 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 42# RUN: llc -mtriple=aarch64-none-linux-gnu -mcpu=cortex-a510 -run-pass=machine-scheduler -debug-only=machine-scheduler %s -o - 2>&1 | FileCheck %s3# RUN: llc -mtriple=aarch64-none-linux-gnu -mcpu=cortex-a510 -passes=machine-scheduler -debug-only=machine-scheduler %s -o - 2>&1 | FileCheck %s4# REQUIRES: asserts5 6# CHECK: SU(0): renamable $z0 = LD1H renamable $p0, renamable $x1, renamable $x10 :: (load unknown-size, align 1)7# CHECK-NEXT: # preds left : 08# CHECK-NEXT: # succs left : 49# CHECK-NEXT: # rdefs left : 010# CHECK-NEXT: Latency : 311# CHECK-NEXT: Depth : 012# CHECK-NEXT: Height : 713# CHECK-NEXT: Successors:14# CHECK-NEXT: SU(6): Out Latency=115# CHECK-NEXT: SU(6): Data Latency=3 Reg=$z016# CHECK-NEXT: SU(9): Ord Latency=0 Memory17# CHECK-NEXT: SU(8): Ord Latency=0 Memory18# CHECK-NEXT: Single Issue : false;19# CHECK-NEXT: SU(1): renamable $z1 = LD1H renamable $p0, renamable $x2, renamable $x10 :: (load unknown-size, align 1)20# CHECK-NEXT: # preds left : 021# CHECK-NEXT: # succs left : 922# CHECK-NEXT: # rdefs left : 023# CHECK-NEXT: Latency : 324# CHECK-NEXT: Depth : 025# CHECK-NEXT: Height : 726# CHECK-NEXT: Successors:27# CHECK-NEXT: SU(7): Out Latency=128# CHECK-NEXT: SU(7): Out Latency=129# CHECK-NEXT: SU(7): Out Latency=130# CHECK-NEXT: SU(7): Out Latency=131# CHECK-NEXT: SU(7): Out Latency=132# CHECK-NEXT: SU(7): Out Latency=133# CHECK-NEXT: SU(6): Data Latency=3 Reg=$z134# CHECK-NEXT: SU(9): Ord Latency=0 Memory35# CHECK-NEXT: SU(8): Ord Latency=0 Memory36# CHECK-NEXT: Single Issue : false;37# CHECK-NEXT: SU(2): renamable $z2 = LD1H renamable $p0, renamable $x0, renamable $x10 :: (load unknown-size, align 1)38# CHECK-NEXT: # preds left : 039# CHECK-NEXT: # succs left : 340# CHECK-NEXT: # rdefs left : 041# CHECK-NEXT: Latency : 342# CHECK-NEXT: Depth : 043# CHECK-NEXT: Height : 744# CHECK-NEXT: Successors:45# CHECK-NEXT: SU(6): Data Latency=3 Reg=$z246# CHECK-NEXT: SU(9): Ord Latency=0 Memory47# CHECK-NEXT: SU(8): Ord Latency=0 Memory48# CHECK-NEXT: Single Issue : false;49# CHECK-NEXT: SU(3): renamable $z3 = LD1H renamable $p0, renamable $x11, renamable $x10 :: (load unknown-size, align 1)50# CHECK-NEXT: # preds left : 051# CHECK-NEXT: # succs left : 352# CHECK-NEXT: # rdefs left : 053# CHECK-NEXT: Latency : 354# CHECK-NEXT: Depth : 055# CHECK-NEXT: Height : 756# CHECK-NEXT: Successors:57# CHECK-NEXT: SU(7): Data Latency=3 Reg=$z358# CHECK-NEXT: SU(9): Ord Latency=0 Memory59# CHECK-NEXT: SU(8): Ord Latency=0 Memory60# CHECK-NEXT: Single Issue : false;61# CHECK-NEXT: SU(4): renamable $z4 = LD1H renamable $p0, renamable $x12, renamable $x10 :: (load unknown-size, align 1)62# CHECK-NEXT: # preds left : 063# CHECK-NEXT: # succs left : 364# CHECK-NEXT: # rdefs left : 065# CHECK-NEXT: Latency : 366# CHECK-NEXT: Depth : 067# CHECK-NEXT: Height : 768# CHECK-NEXT: Successors:69# CHECK-NEXT: SU(7): Data Latency=3 Reg=$z470# CHECK-NEXT: SU(9): Ord Latency=0 Memory71# CHECK-NEXT: SU(8): Ord Latency=0 Memory72# CHECK-NEXT: Single Issue : false;73# CHECK-NEXT: SU(5): renamable $z5 = LD1H renamable $p0, renamable $x13, renamable $x10 :: (load unknown-size, align 1)74# CHECK-NEXT: # preds left : 075# CHECK-NEXT: # succs left : 376# CHECK-NEXT: # rdefs left : 077# CHECK-NEXT: Latency : 378# CHECK-NEXT: Depth : 079# CHECK-NEXT: Height : 780# CHECK-NEXT: Successors:81# CHECK-NEXT: SU(7): Data Latency=3 Reg=$z582# CHECK-NEXT: SU(9): Ord Latency=0 Memory83# CHECK-NEXT: SU(8): Ord Latency=0 Memory84# CHECK-NEXT: Single Issue : false;85# CHECK-NEXT: SU(6): $z0 = FMAD_ZPmZZ_H renamable $p0, killed $z0(tied-def 0), killed renamable $z1, killed renamable $z286# CHECK-NEXT: # preds left : 487# CHECK-NEXT: # succs left : 788# CHECK-NEXT: # rdefs left : 089# CHECK-NEXT: Latency : 490# CHECK-NEXT: Depth : 391# CHECK-NEXT: Height : 492# CHECK-NEXT: Predecessors:93# CHECK-NEXT: SU(2): Data Latency=3 Reg=$z294# CHECK-NEXT: SU(1): Data Latency=3 Reg=$z195# CHECK-NEXT: SU(0): Out Latency=196# CHECK-NEXT: SU(0): Data Latency=3 Reg=$z097# CHECK-NEXT: Successors:98# CHECK-NEXT: SU(8): Data Latency=4 Reg=$z099# CHECK-NEXT: SU(7): Anti Latency=0100# CHECK-NEXT: SU(7): Anti Latency=0101# CHECK-NEXT: SU(7): Anti Latency=0102# CHECK-NEXT: SU(7): Anti Latency=0103# CHECK-NEXT: SU(7): Anti Latency=0104# CHECK-NEXT: SU(7): Anti Latency=0105# CHECK-NEXT: Single Issue : false;106# CHECK-NEXT: SU(7): BUNDLE implicit-def $z1, implicit-def $q1, implicit-def $d1, implicit-def $s1, implicit-def $h1, implicit-def $b1, implicit $z5, implicit $p0, implicit killed $z4, implicit killed $z3107# CHECK-NEXT: # preds left : 15108# CHECK-NEXT: # succs left : 1109# CHECK-NEXT: # rdefs left : 0110# CHECK-NEXT: Latency : 1111# CHECK-NEXT: Depth : 3112# CHECK-NEXT: Height : 4113# CHECK-NEXT: Predecessors:114# CHECK-NEXT: SU(6): Anti Latency=0115# CHECK-NEXT: SU(6): Anti Latency=0116# CHECK-NEXT: SU(6): Anti Latency=0117# CHECK-NEXT: SU(6): Anti Latency=0118# CHECK-NEXT: SU(6): Anti Latency=0119# CHECK-NEXT: SU(6): Anti Latency=0120# CHECK-NEXT: SU(5): Data Latency=3 Reg=$z5121# CHECK-NEXT: SU(4): Data Latency=3 Reg=$z4122# CHECK-NEXT: SU(3): Data Latency=3 Reg=$z3123# CHECK-NEXT: SU(1): Out Latency=1124# CHECK-NEXT: SU(1): Out Latency=1125# CHECK-NEXT: SU(1): Out Latency=1126# CHECK-NEXT: SU(1): Out Latency=1127# CHECK-NEXT: SU(1): Out Latency=1128# CHECK-NEXT: SU(1): Out Latency=1129# CHECK-NEXT: Successors:130# CHECK-NEXT: SU(9): Data Latency=4 Reg=$z1131# CHECK-NEXT: Single Issue : false;132# CHECK-NEXT: SU(8): ST1H killed renamable $z0, renamable $p0, renamable $x0, renamable $x10 :: (store unknown-size, align 1)133# CHECK-NEXT: # preds left : 7134# CHECK-NEXT: # succs left : 1135# CHECK-NEXT: # rdefs left : 0136# CHECK-NEXT: Latency : 1137# CHECK-NEXT: Depth : 7138# CHECK-NEXT: Height : 0139# CHECK-NEXT: Predecessors:140# CHECK-NEXT: SU(6): Data Latency=4 Reg=$z0141# CHECK-NEXT: SU(5): Ord Latency=0 Memory142# CHECK-NEXT: SU(4): Ord Latency=0 Memory143# CHECK-NEXT: SU(3): Ord Latency=0 Memory144# CHECK-NEXT: SU(2): Ord Latency=0 Memory145# CHECK-NEXT: SU(1): Ord Latency=0 Memory146# CHECK-NEXT: SU(0): Ord Latency=0 Memory147# CHECK-NEXT: Successors:148# CHECK-NEXT: SU(9): Ord Latency=0 Memory149# CHECK-NEXT: Single Issue : false;150# CHECK-NEXT: SU(9): ST1H killed renamable $z1, renamable $p0, renamable $x13, renamable $x10 :: (store unknown-size, align 1)151# CHECK-NEXT: # preds left : 8152# CHECK-NEXT: # succs left : 0153# CHECK-NEXT: # rdefs left : 0154# CHECK-NEXT: Latency : 1155# CHECK-NEXT: Depth : 7156# CHECK-NEXT: Height : 0157# CHECK-NEXT: Predecessors:158# CHECK-NEXT: SU(8): Ord Latency=0 Memory159# CHECK-NEXT: SU(7): Data Latency=4 Reg=$z1160# CHECK-NEXT: SU(5): Ord Latency=0 Memory161# CHECK-NEXT: SU(4): Ord Latency=0 Memory162# CHECK-NEXT: SU(3): Ord Latency=0 Memory163# CHECK-NEXT: SU(2): Ord Latency=0 Memory164# CHECK-NEXT: SU(1): Ord Latency=0 Memory165# CHECK-NEXT: SU(0): Ord Latency=0 Memory166# CHECK-NEXT: Single Issue : false;167# CHECK-NEXT: ExitSU: RET_ReallyLR168# CHECK-NEXT: # preds left : 0169# CHECK-NEXT: # succs left : 0170# CHECK-NEXT: # rdefs left : 0171# CHECK-NEXT: Latency : 0172# CHECK-NEXT: Depth : 0173# CHECK-NEXT: Height : 0174 175---176name: test177alignment: 4178tracksRegLiveness: true179body: |180 bb.0.entry:181 liveins: $p0, $x0, $x1, $x2, $x10, $x11, $x12, $x13182 183 184 ; CHECK-LABEL: name: test185 ; CHECK: liveins: $p0, $x0, $x1, $x2, $x10, $x11, $x12, $x13186 ; CHECK-NEXT: {{ $}}187 ; CHECK-NEXT: renamable $z0 = LD1H renamable $p0, renamable $x1, renamable $x10 :: (load unknown-size, align 1)188 ; CHECK-NEXT: renamable $z1 = LD1H renamable $p0, renamable $x2, renamable $x10 :: (load unknown-size, align 1)189 ; CHECK-NEXT: renamable $z2 = LD1H renamable $p0, renamable $x0, renamable $x10 :: (load unknown-size, align 1)190 ; CHECK-NEXT: renamable $z3 = LD1H renamable $p0, renamable $x11, renamable $x10 :: (load unknown-size, align 1)191 ; CHECK-NEXT: renamable $z4 = LD1H renamable $p0, renamable $x12, renamable $x10 :: (load unknown-size, align 1)192 ; CHECK-NEXT: renamable $z5 = LD1H renamable $p0, renamable $x13, renamable $x10 :: (load unknown-size, align 1)193 ; CHECK-NEXT: $z0 = FMAD_ZPmZZ_H renamable $p0, killed $z0, killed renamable $z1, killed renamable $z2194 ; CHECK-NEXT: BUNDLE implicit-def $z1, implicit-def $q1, implicit-def $d1, implicit-def $s1, implicit-def $h1, implicit-def $b1, implicit $z5, implicit $p0, implicit killed $z4, implicit killed $z3 {195 ; CHECK-NEXT: $z1 = MOVPRFX_ZZ $z5196 ; CHECK-NEXT: $z1 = FMLA_ZPmZZ_H renamable $p0, internal killed $z1, killed renamable $z4, killed renamable $z3197 ; CHECK-NEXT: }198 ; CHECK-NEXT: ST1H killed renamable $z0, renamable $p0, renamable $x0, renamable $x10 :: (store unknown-size, align 1)199 ; CHECK-NEXT: ST1H killed renamable $z1, renamable $p0, renamable $x13, renamable $x10 :: (store unknown-size, align 1)200 ; CHECK-NEXT: RET_ReallyLR201 renamable $z0 = LD1H renamable $p0, renamable $x1, renamable $x10 :: (load unknown-size)202 renamable $z1 = LD1H renamable $p0, renamable $x2, renamable $x10 :: (load unknown-size)203 renamable $z2 = LD1H renamable $p0, renamable $x0, renamable $x10 :: (load unknown-size)204 renamable $z3 = LD1H renamable $p0, renamable $x11, renamable $x10 :: (load unknown-size)205 renamable $z4 = LD1H renamable $p0, renamable $x12, renamable $x10 :: (load unknown-size)206 renamable $z5 = LD1H renamable $p0, renamable $x13, renamable $x10 :: (load unknown-size)207 $z0 = FMAD_ZPmZZ_H renamable $p0, killed $z0, killed renamable $z1, killed renamable $z2208 BUNDLE implicit-def $z1, implicit-def $q1, implicit-def $d1, implicit-def $s1, implicit-def $h1, implicit-def $b1, implicit $z5, implicit $p0, implicit killed $z4, implicit killed $z3 {209 $z1 = MOVPRFX_ZZ $z5210 $z1 = FMLA_ZPmZZ_H renamable $p0, internal killed $z1, killed renamable $z4, killed renamable $z3211 }212 ST1H killed renamable $z0, renamable $p0, renamable $x0, renamable $x10 :: (store unknown-size)213 ST1H killed renamable $z1, renamable $p0, renamable $x13, renamable $x10 :: (store unknown-size)214 RET_ReallyLR215 216...217