[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / AArch64 / machine-outliner-create-lr-livein.mir
blobf1f34f5c4b25ac9623b73c81d8aad09a0c4c963c
1 # RUN: llc -mtriple=aarch64-apple-darwin -run-pass=machine-outliner -verify-machineinstrs %s -o - | FileCheck %s
2 # In bb.4,  we save + restore LR using a register. We need LR to be live-in to
3 # the block to prevent MachineVerifier errors.
5 name:            lr_not_live_in
6 tracksRegLiveness: true
7 fixedStack:
8 machineFunctionInfo:
9   hasRedZone:      false
10 body:             |
11   bb.0:
12     $x9 = ORRXri $xzr, 1
13   bb.1:
14     liveins: $w9
15     $w9 = ORRWri $wzr, 1
16     $w9 = ORRWri $wzr, 1
17     $w9 = ORRWri $wzr, 1
18     $w9 = ORRWri $wzr, 1
19     $w9 = ORRWri $wzr, 1
20     $w9 = ORRWri $wzr, 2
21   bb.2:
22     liveins: $w9
23     $w9 = ORRWri $wzr, 1
24     $w9 = ORRWri $wzr, 1
25     $w9 = ORRWri $wzr, 1
26     $w9 = ORRWri $wzr, 1
27     $w9 = ORRWri $wzr, 1
28     $w9 = ORRWri $wzr, 2
29   bb.3:
30     liveins: $w9
31     $w9 = ORRWri $wzr, 1
32     $w9 = ORRWri $wzr, 1
33     $w9 = ORRWri $wzr, 1
34     $w9 = ORRWri $wzr, 1
35     $w9 = ORRWri $wzr, 1
36     $w9 = ORRWri $wzr, 2
37   bb.4:
38     liveins: $w9
39     ; CHECK-LABEL: bb.4
40     ; CHECK: liveins: $w9, $lr
41     ; CHECK: BL
42     $w9 = ORRWri $wzr, 1
43     $w9 = ORRWri $wzr, 1
44     $w9 = ORRWri $wzr, 1
45     $w9 = ORRWri $wzr, 1
46     $w9 = ORRWri $wzr, 1
47     $w9 = ORRWri $wzr, 2
48   bb.5:
49     liveins: $w9, $lr
50     RET undef $lr