Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MachineVerifier / live-ins-02.mir
blob2cc63ac0cd212a766cbe07e6c9dee811ade8b0a9
1 # RUN: not --crash llc -o - %s -mtriple=s390x-linux-gnu -mcpu=z14 -run-pass none 2>&1 | FileCheck %s
2 # REQUIRES: systemz-registered-target
4 # Test that a the machine verifier reports an error when a register in
5 # liveins is not liveout from predecessor.
7 ---
8 name:            f1
9 tracksRegLiveness: true
10 machineFunctionInfo: {}
11 body:             |
12   bb.0:
13     liveins: $r2l, $r3l
14   
15     %1:gr32bit = COPY $r3l
16     %0:gr32bit = COPY $r2l
17     CHIMux %0, 0, implicit-def $cc
19   bb.1:
21   bb.2:
22     liveins: $cc
24     %2:grx32bit = LOCRMux %1, %0, 14, 8, implicit $cc
25     $r2l = COPY %2
26     Return implicit $r2l
27 ...
29 # CHECK: *** Bad machine code: Live in register not found to be live out from predecessor. ***
30 # CHECK:- function:    f1
31 # CHECK:- basic block: %bb.2
32 # CHECK:CC not found to be live out from %bb.1