13
13
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x5 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X5
14
14
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x6 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X6
15
15
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x7 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X7
16
+ ; RUN: llc -mtriple=arm64-linux-gnu -reserve-regs-for-regalloc=X8 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X8
16
17
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x9 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X9
17
18
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x10 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X10
18
19
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x11 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X11
19
20
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x12 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X12
20
21
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x13 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X13
21
22
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x14 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X14
22
23
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x15 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X15
24
+ ; RUN: llc -mtriple=arm64-linux-gnu -reserve-regs-for-regalloc=X16 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X16
25
+ ; RUN: llc -mtriple=arm64-linux-gnu -reserve-regs-for-regalloc=X17 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X17
26
+ ; RUN: llc -mtriple=arm64-linux-gnu -reserve-regs-for-regalloc=X19 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X19
23
27
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x20 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X20
24
28
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x21 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X21
25
29
; RUN: llc -mtriple=arm64-linux-gnu -mattr=+reserve-x22 -o - %s | FileCheck %s --check-prefixes=CHECK-RESERVE,CHECK-RESERVE-X22
69
73
; RUN: -mattr=+reserve-x27 \
70
74
; RUN: -mattr=+reserve-x28 \
71
75
; RUN: -mattr=+reserve-x30 \
76
+ ; RUN: -reserve-regs-for-regalloc=X8,X16,X17,X19 \
72
77
; RUN: -o - %s | FileCheck %s \
73
78
; RUN: --check-prefix=CHECK-RESERVE \
74
79
; RUN: --check-prefix=CHECK-RESERVE-X1 \
78
83
; RUN: --check-prefix=CHECK-RESERVE-X5 \
79
84
; RUN: --check-prefix=CHECK-RESERVE-X6 \
80
85
; RUN: --check-prefix=CHECK-RESERVE-X7 \
86
+ ; RUN: --check-prefix=CHECK-RESERVE-X8 \
81
87
; RUN: --check-prefix=CHECK-RESERVE-X9 \
82
88
; RUN: --check-prefix=CHECK-RESERVE-X10 \
83
89
; RUN: --check-prefix=CHECK-RESERVE-X11 \
84
90
; RUN: --check-prefix=CHECK-RESERVE-X12 \
85
91
; RUN: --check-prefix=CHECK-RESERVE-X13 \
86
92
; RUN: --check-prefix=CHECK-RESERVE-X14 \
87
93
; RUN: --check-prefix=CHECK-RESERVE-X15 \
94
+ ; RUN: --check-prefix=CHECK-RESERVE-X16 \
95
+ ; RUN: --check-prefix=CHECK-RESERVE-X17 \
88
96
; RUN: --check-prefix=CHECK-RESERVE-X18 \
97
+ ; RUN: --check-prefix=CHECK-RESERVE-X19 \
89
98
; RUN: --check-prefix=CHECK-RESERVE-X20 \
90
99
; RUN: --check-prefix=CHECK-RESERVE-X21 \
91
100
; RUN: --check-prefix=CHECK-RESERVE-X22 \
@@ -113,6 +122,8 @@ define void @keep_live() {
113
122
; CHECK: str x18
114
123
115
124
; CHECK-RESERVE-NOT: ldr fp
125
+ ; CHECK-RESERVE-X8-NOT: adrp x8
126
+ ; CHECK-RESERVE-X8-NOT: ldr x8
116
127
; CHECK-RESERVE-X1-NOT: ldr x1,
117
128
; CHECK-RESERVE-X2-NOT: ldr x2,
118
129
; CHECK-RESERVE-X3-NOT: ldr x3,
@@ -127,7 +138,10 @@ define void @keep_live() {
127
138
; CHECK-RESERVE-X13-NOT: ldr x13,
128
139
; CHECK-RESERVE-X14-NOT: ldr x14,
129
140
; CHECK-RESERVE-X15-NOT: ldr x15,
141
+ ; CHECK-RESERVE-X16-NOT: ldr x16
142
+ ; CHECK-RESERVE-X17-NOT: ldr x17
130
143
; CHECK-RESERVE-X18-NOT: ldr x18
144
+ ; CHECK-RESERVE-X19-NOT: ldr x19
131
145
; CHECK-RESERVE-X20-NOT: ldr x20
132
146
; CHECK-RESERVE-X21-NOT: ldr x21
133
147
; CHECK-RESERVE-X22-NOT: ldr x22
@@ -154,7 +168,10 @@ define void @keep_live() {
154
168
; CHECK-RESERVE-X13-NOT: ldr x13,
155
169
; CHECK-RESERVE-X14-NOT: ldr x14,
156
170
; CHECK-RESERVE-X15-NOT: ldr x15,
171
+ ; CHECK-RESERVE-X16-NOT: ldr x16
172
+ ; CHECK-RESERVE-X17-NOT: ldr x17
157
173
; CHECK-RESERVE-X18-NOT: ldr x18
174
+ ; CHECK-RESERVE-X19-NOT: ldr x19
158
175
; CHECK-RESERVE-X20-NOT: ldr x20
159
176
; CHECK-RESERVE-X21-NOT: ldr x21
160
177
; CHECK-RESERVE-X22-NOT: ldr x22
0 commit comments