blob: 73cc9fdb74e6e8a729152c703f6dfd27a4e7a333 [file] [log] [blame] [edit]
# RUN: llc -o - %s -mtriple=s390x-linux-gnu -mcpu=z16 -verify-machineinstrs \
# RUN: -run-pass=machine-scheduler -debug-only=machine-scheduler 2>&1\
# RUN: | FileCheck %s
# REQUIRES: asserts
# Schedule the AGHIK that defines the compare source low to help comparison
# elimination.
# CHECK: ********** MI Scheduling **********
# CHECK-NEXT: fun0:%bb.0
# CHECK: ********** MI Scheduling **********
# CHECK-NEXT: fun0:%bb.1
# CHECK: Queue BotQ.A: 1 0
# CHECK-NEXT: Cand SU(1) FIRST
# CHECK-NEXT: Cand SU(0) WEAK
# CHECK-NEXT: Pick Bot WEAK [pre-RA]
# CHECK-NEXT: Scheduling SU(0) %2:gr64bit = AGHIK %0:gr64bit, -1, impl
# CHECK: *** Final schedule for %bb.1 ***
# CHECK-NEXT: SU(1): dead %3:gr64bit = AGHIK %1:gr64bit, 1, implicit-def dead $cc
# CHECK-NEXT: SU(0): %2:gr64bit = AGHIK %0:gr64bit, -1, implicit-def dead $cc
# CHECK-NEXT: SU(2): CGHI %2:gr64bit, 0, implicit-def $cc
---
name: fun0
tracksRegLiveness: true
body: |
bb.0:
liveins: $r2d, $r3d
%0:gr64bit = COPY $r2d
%1:gr64bit = COPY $r3d
bb.1:
%2:gr64bit = AGHIK %0, -1, implicit-def dead $cc
%3:gr64bit = AGHIK %1, 1, implicit-def dead $cc
CGHI %2:gr64bit, 0, implicit-def $cc
BRC 14, 8, %bb.1, implicit killed $cc
bb.2:
Return
...