[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / Driver / aarch64-fixed-x-register.c
blob7fc3e3e61105dff9f0894a2217b954f5f0eafb32
1 // RUN: %clang --target=aarch64-none-gnu -ffixed-x1 -### %s 2> %t
2 // RUN: FileCheck --check-prefix=CHECK-FIXED-X1 < %t %s
3 // CHECK-FIXED-X1: "-target-feature" "+reserve-x1"
5 // RUN: %clang --target=aarch64-none-gnu -ffixed-x2 -### %s 2> %t
6 // RUN: FileCheck --check-prefix=CHECK-FIXED-X2 < %t %s
7 // CHECK-FIXED-X2: "-target-feature" "+reserve-x2"
9 // RUN: %clang --target=aarch64-none-gnu -ffixed-x3 -### %s 2> %t
10 // RUN: FileCheck --check-prefix=CHECK-FIXED-X3 < %t %s
11 // CHECK-FIXED-X3: "-target-feature" "+reserve-x3"
13 // RUN: %clang --target=aarch64-none-gnu -ffixed-x4 -### %s 2> %t
14 // RUN: FileCheck --check-prefix=CHECK-FIXED-X4 < %t %s
15 // CHECK-FIXED-X4: "-target-feature" "+reserve-x4"
17 // RUN: %clang --target=aarch64-none-gnu -ffixed-x5 -### %s 2> %t
18 // RUN: FileCheck --check-prefix=CHECK-FIXED-X5 < %t %s
19 // CHECK-FIXED-X5: "-target-feature" "+reserve-x5"
21 // RUN: %clang --target=aarch64-none-gnu -ffixed-x6 -### %s 2> %t
22 // RUN: FileCheck --check-prefix=CHECK-FIXED-X6 < %t %s
23 // CHECK-FIXED-X6: "-target-feature" "+reserve-x6"
25 // RUN: %clang --target=aarch64-none-gnu -ffixed-x7 -### %s 2> %t
26 // RUN: FileCheck --check-prefix=CHECK-FIXED-X7 < %t %s
27 // CHECK-FIXED-X7: "-target-feature" "+reserve-x7"
29 // RUN: %clang --target=aarch64-none-gnu -ffixed-x9 -### %s 2> %t
30 // RUN: FileCheck --check-prefix=CHECK-FIXED-X9 < %t %s
31 // CHECK-FIXED-X9: "-target-feature" "+reserve-x9"
33 // RUN: %clang --target=aarch64-none-gnu -ffixed-x10 -### %s 2> %t
34 // RUN: FileCheck --check-prefix=CHECK-FIXED-X10 < %t %s
35 // CHECK-FIXED-X10: "-target-feature" "+reserve-x10"
37 // RUN: %clang --target=aarch64-none-gnu -ffixed-x11 -### %s 2> %t
38 // RUN: FileCheck --check-prefix=CHECK-FIXED-X11 < %t %s
39 // CHECK-FIXED-X11: "-target-feature" "+reserve-x11"
41 // RUN: %clang --target=aarch64-none-gnu -ffixed-x12 -### %s 2> %t
42 // RUN: FileCheck --check-prefix=CHECK-FIXED-X12 < %t %s
43 // CHECK-FIXED-X12: "-target-feature" "+reserve-x12"
45 // RUN: %clang --target=aarch64-none-gnu -ffixed-x13 -### %s 2> %t
46 // RUN: FileCheck --check-prefix=CHECK-FIXED-X13 < %t %s
47 // CHECK-FIXED-X13: "-target-feature" "+reserve-x13"
49 // RUN: %clang --target=aarch64-none-gnu -ffixed-x14 -### %s 2> %t
50 // RUN: FileCheck --check-prefix=CHECK-FIXED-X14 < %t %s
51 // CHECK-FIXED-X14: "-target-feature" "+reserve-x14"
53 // RUN: %clang --target=aarch64-none-gnu -ffixed-x15 -### %s 2> %t
54 // RUN: FileCheck --check-prefix=CHECK-FIXED-X15 < %t %s
55 // CHECK-FIXED-X15: "-target-feature" "+reserve-x15"
57 // RUN: %clang --target=aarch64-none-gnu -ffixed-x18 -### %s 2> %t
58 // RUN: FileCheck --check-prefix=CHECK-FIXED-X18 < %t %s
59 // CHECK-FIXED-X18: "-target-feature" "+reserve-x18"
61 // RUN: %clang --target=aarch64-none-gnu -ffixed-x20 -### %s 2> %t
62 // RUN: FileCheck --check-prefix=CHECK-FIXED-X20 < %t %s
63 // CHECK-FIXED-X20: "-target-feature" "+reserve-x20"
65 // RUN: %clang --target=aarch64-none-gnu -ffixed-x21 -### %s 2> %t
66 // RUN: FileCheck --check-prefix=CHECK-FIXED-X21 < %t %s
67 // CHECK-FIXED-X21: "-target-feature" "+reserve-x21"
69 // RUN: %clang --target=aarch64-none-gnu -ffixed-x22 -### %s 2> %t
70 // RUN: FileCheck --check-prefix=CHECK-FIXED-X22 < %t %s
71 // CHECK-FIXED-X22: "-target-feature" "+reserve-x22"
73 // RUN: %clang --target=aarch64-none-gnu -ffixed-x23 -### %s 2> %t
74 // RUN: FileCheck --check-prefix=CHECK-FIXED-X23 < %t %s
75 // CHECK-FIXED-X23: "-target-feature" "+reserve-x23"
77 // RUN: %clang --target=aarch64-none-gnu -ffixed-x24 -### %s 2> %t
78 // RUN: FileCheck --check-prefix=CHECK-FIXED-X24 < %t %s
79 // CHECK-FIXED-X24: "-target-feature" "+reserve-x24"
81 // RUN: %clang --target=aarch64-none-gnu -ffixed-x25 -### %s 2> %t
82 // RUN: FileCheck --check-prefix=CHECK-FIXED-X25 < %t %s
83 // CHECK-FIXED-X25: "-target-feature" "+reserve-x25"
85 // RUN: %clang --target=aarch64-none-gnu -ffixed-x26 -### %s 2> %t
86 // RUN: FileCheck --check-prefix=CHECK-FIXED-X26 < %t %s
87 // CHECK-FIXED-X26: "-target-feature" "+reserve-x26"
89 // RUN: %clang --target=aarch64-none-gnu -ffixed-x27 -### %s 2> %t
90 // RUN: FileCheck --check-prefix=CHECK-FIXED-X27 < %t %s
91 // CHECK-FIXED-X27: "-target-feature" "+reserve-x27"
93 // RUN: %clang --target=aarch64-none-gnu -ffixed-x28 -### %s 2> %t
94 // RUN: FileCheck --check-prefix=CHECK-FIXED-X28 < %t %s
95 // CHECK-FIXED-X28: "-target-feature" "+reserve-x28"
97 // Test multiple of reserve-x# options together.
98 // RUN: %clang --target=aarch64-none-gnu \
99 // RUN: -ffixed-x1 \
100 // RUN: -ffixed-x2 \
101 // RUN: -ffixed-x18 \
102 // RUN: -### %s 2> %t
103 // RUN: FileCheck \
104 // RUN: --check-prefix=CHECK-FIXED-X1 \
105 // RUN: --check-prefix=CHECK-FIXED-X2 \
106 // RUN: --check-prefix=CHECK-FIXED-X18 \
107 // RUN: < %t %s
109 // Test all reserve-x# options together.
110 // RUN: %clang --target=aarch64-none-gnu \
111 // RUN: -ffixed-x1 \
112 // RUN: -ffixed-x2 \
113 // RUN: -ffixed-x3 \
114 // RUN: -ffixed-x4 \
115 // RUN: -ffixed-x5 \
116 // RUN: -ffixed-x6 \
117 // RUN: -ffixed-x7 \
118 // RUN: -ffixed-x9 \
119 // RUN: -ffixed-x10 \
120 // RUN: -ffixed-x11 \
121 // RUN: -ffixed-x12 \
122 // RUN: -ffixed-x13 \
123 // RUN: -ffixed-x14 \
124 // RUN: -ffixed-x15 \
125 // RUN: -ffixed-x18 \
126 // RUN: -ffixed-x20 \
127 // RUN: -ffixed-x21 \
128 // RUN: -ffixed-x22 \
129 // RUN: -ffixed-x23 \
130 // RUN: -ffixed-x24 \
131 // RUN: -ffixed-x25 \
132 // RUN: -ffixed-x26 \
133 // RUN: -ffixed-x27 \
134 // RUN: -ffixed-x28 \
135 // RUN: -### %s 2> %t
136 // RUN: FileCheck \
137 // RUN: --check-prefix=CHECK-FIXED-X1 \
138 // RUN: --check-prefix=CHECK-FIXED-X2 \
139 // RUN: --check-prefix=CHECK-FIXED-X3 \
140 // RUN: --check-prefix=CHECK-FIXED-X4 \
141 // RUN: --check-prefix=CHECK-FIXED-X5 \
142 // RUN: --check-prefix=CHECK-FIXED-X6 \
143 // RUN: --check-prefix=CHECK-FIXED-X7 \
144 // RUN: --check-prefix=CHECK-FIXED-X9 \
145 // RUN: --check-prefix=CHECK-FIXED-X10 \
146 // RUN: --check-prefix=CHECK-FIXED-X11 \
147 // RUN: --check-prefix=CHECK-FIXED-X12 \
148 // RUN: --check-prefix=CHECK-FIXED-X13 \
149 // RUN: --check-prefix=CHECK-FIXED-X14 \
150 // RUN: --check-prefix=CHECK-FIXED-X15 \
151 // RUN: --check-prefix=CHECK-FIXED-X18 \
152 // RUN: --check-prefix=CHECK-FIXED-X20 \
153 // RUN: --check-prefix=CHECK-FIXED-X21 \
154 // RUN: --check-prefix=CHECK-FIXED-X22 \
155 // RUN: --check-prefix=CHECK-FIXED-X23 \
156 // RUN: --check-prefix=CHECK-FIXED-X24 \
157 // RUN: --check-prefix=CHECK-FIXED-X25 \
158 // RUN: --check-prefix=CHECK-FIXED-X26 \
159 // RUN: --check-prefix=CHECK-FIXED-X27 \
160 // RUN: --check-prefix=CHECK-FIXED-X28 \
161 // RUN: < %t %s