[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / AArch64 / reg-scavenge-frame.mir
blob3db69cfb215930a967c53d2f19770aa36f43fe70
1 # RUN: llc -run-pass=prologepilog -verify-machineinstrs %s -o - | FileCheck %s
3 --- |
4   target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
5   target triple = "aarch64-linux-gnu"
6   define void @ScavengeForFrameWithoutOffset() { ret void }
7 ...
8 ---
9 name:            ScavengeForFrameWithoutOffset
10 tracksRegLiveness: true
11 stack:
12   - { id: 0, type: spill-slot, offset: 0, size: 32, alignment: 8 }
13 body:             |
14   bb.0:
15     liveins: $d16_d17_d18_d19
16     $x0 = COPY $xzr
17     $x1 = COPY $xzr
18     $x2 = COPY $xzr
19     $x3 = COPY $xzr
20     $x4 = COPY $xzr
21     $x5 = COPY $xzr
22     $x6 = COPY $xzr
23     $x7 = COPY $xzr
24     $x8 = COPY $xzr
25     $x9 = COPY $xzr
26     $x10 = COPY $xzr
27     $x11 = COPY $xzr
28     $x12 = COPY $xzr
29     $x13 = COPY $xzr
30     $x14 = COPY $xzr
31     $x15 = COPY $xzr
32     $x16 = COPY $xzr
33     $x17 = COPY $xzr
34     $x18 = COPY $xzr
35     $x19 = COPY $xzr
36     $x20 = COPY $xzr
37     $x21 = COPY $xzr
38     $x22 = COPY $xzr
39     $x23 = COPY $xzr
40     $x24 = COPY $xzr
41     $x25 = COPY $xzr
42     $x26 = COPY $xzr
43     $x27 = COPY $xzr
44     $x28 = COPY $xzr
45     $fp = COPY $xzr
46     $lr = COPY $xzr
47     ST1Fourv1d killed $d16_d17_d18_d19, %stack.0 :: (store (s256) into %stack.0, align 8)
48     ; CHECK:  STRXui killed $[[SCAVREG:x[0-9]+|fp|lr]], $sp, [[SPOFFSET:[0-9]+]] :: (store (s64) into %stack.1)
49     ; CHECK-NEXT:  $[[SCAVREG]] = ADDXri $sp, {{[0-9]+}}, 0
50     ; CHECK-NEXT:  ST1Fourv1d killed $d16_d17_d18_d19, killed $[[SCAVREG]] :: (store (s256) into %stack.0, align 8)
51     ; CHECK-NEXT:  $[[SCAVREG]] = LDRXui $sp, [[SPOFFSET]] :: (load (s64) from %stack.1)
53     HINT 0, implicit $x0
54     HINT 0, implicit $x1
55     HINT 0, implicit $x2
56     HINT 0, implicit $x3
57     HINT 0, implicit $x4
58     HINT 0, implicit $x5
59     HINT 0, implicit $x6
60     HINT 0, implicit $x7
61     HINT 0, implicit $x8
62     HINT 0, implicit $x9
63     HINT 0, implicit $x10
64     HINT 0, implicit $x11
65     HINT 0, implicit $x12
66     HINT 0, implicit $x13
67     HINT 0, implicit $x14
68     HINT 0, implicit $x15
69     HINT 0, implicit $x16
70     HINT 0, implicit $x17
71     HINT 0, implicit $x18
72     HINT 0, implicit $x19
73     HINT 0, implicit $x20
74     HINT 0, implicit $x21
75     HINT 0, implicit $x22
76     HINT 0, implicit $x23
77     HINT 0, implicit $x24
78     HINT 0, implicit $x25
79     HINT 0, implicit $x26
80     HINT 0, implicit $x27
81     HINT 0, implicit $x28
82     HINT 0, implicit $fp
83     HINT 0, implicit $lr
85     RET_ReallyLR
86 ...