xref: /llvm-project/clang/test/Driver/sparc-fixed-register.c (revision c2f9885a8aa3a820eefdacccf3fcc6b9d87e3284)
1*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-g1 -### %s 2> %t
2*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-G1 < %t %s
3*c2f9885aSKoakuma // CHECK-FIXED-G1: "-target-feature" "+reserve-g1"
4*c2f9885aSKoakuma 
5*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-g2 -### %s 2> %t
6*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-G2 < %t %s
7*c2f9885aSKoakuma // CHECK-FIXED-G2: "-target-feature" "+reserve-g2"
8*c2f9885aSKoakuma 
9*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-g3 -### %s 2> %t
10*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-G3 < %t %s
11*c2f9885aSKoakuma // CHECK-FIXED-G3: "-target-feature" "+reserve-g3"
12*c2f9885aSKoakuma 
13*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-g4 -### %s 2> %t
14*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-G4 < %t %s
15*c2f9885aSKoakuma // CHECK-FIXED-G4: "-target-feature" "+reserve-g4"
16*c2f9885aSKoakuma 
17*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-g5 -### %s 2> %t
18*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-G5 < %t %s
19*c2f9885aSKoakuma // CHECK-FIXED-G5: "-target-feature" "+reserve-g5"
20*c2f9885aSKoakuma 
21*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-g6 -### %s 2> %t
22*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-G6 < %t %s
23*c2f9885aSKoakuma // CHECK-FIXED-G6: "-target-feature" "+reserve-g6"
24*c2f9885aSKoakuma 
25*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-g7 -### %s 2> %t
26*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-G7 < %t %s
27*c2f9885aSKoakuma // CHECK-FIXED-G7: "-target-feature" "+reserve-g7"
28*c2f9885aSKoakuma 
29*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-o0 -### %s 2> %t
30*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-O0 < %t %s
31*c2f9885aSKoakuma // CHECK-FIXED-O0: "-target-feature" "+reserve-o0"
32*c2f9885aSKoakuma 
33*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-o1 -### %s 2> %t
34*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-O1 < %t %s
35*c2f9885aSKoakuma // CHECK-FIXED-O1: "-target-feature" "+reserve-o1"
36*c2f9885aSKoakuma 
37*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-o2 -### %s 2> %t
38*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-O2 < %t %s
39*c2f9885aSKoakuma // CHECK-FIXED-O2: "-target-feature" "+reserve-o2"
40*c2f9885aSKoakuma 
41*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-o3 -### %s 2> %t
42*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-O3 < %t %s
43*c2f9885aSKoakuma // CHECK-FIXED-O3: "-target-feature" "+reserve-o3"
44*c2f9885aSKoakuma 
45*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-o4 -### %s 2> %t
46*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-O4 < %t %s
47*c2f9885aSKoakuma // CHECK-FIXED-O4: "-target-feature" "+reserve-o4"
48*c2f9885aSKoakuma 
49*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-o5 -### %s 2> %t
50*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-O5 < %t %s
51*c2f9885aSKoakuma // CHECK-FIXED-O5: "-target-feature" "+reserve-o5"
52*c2f9885aSKoakuma 
53*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l0 -### %s 2> %t
54*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L0 < %t %s
55*c2f9885aSKoakuma // CHECK-FIXED-L0: "-target-feature" "+reserve-l0"
56*c2f9885aSKoakuma 
57*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l1 -### %s 2> %t
58*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L1 < %t %s
59*c2f9885aSKoakuma // CHECK-FIXED-L1: "-target-feature" "+reserve-l1"
60*c2f9885aSKoakuma 
61*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l2 -### %s 2> %t
62*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L2 < %t %s
63*c2f9885aSKoakuma // CHECK-FIXED-L2: "-target-feature" "+reserve-l2"
64*c2f9885aSKoakuma 
65*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l3 -### %s 2> %t
66*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L3 < %t %s
67*c2f9885aSKoakuma // CHECK-FIXED-L3: "-target-feature" "+reserve-l3"
68*c2f9885aSKoakuma 
69*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l4 -### %s 2> %t
70*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L4 < %t %s
71*c2f9885aSKoakuma // CHECK-FIXED-L4: "-target-feature" "+reserve-l4"
72*c2f9885aSKoakuma 
73*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l5 -### %s 2> %t
74*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L5 < %t %s
75*c2f9885aSKoakuma // CHECK-FIXED-L5: "-target-feature" "+reserve-l5"
76*c2f9885aSKoakuma 
77*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l6 -### %s 2> %t
78*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L6 < %t %s
79*c2f9885aSKoakuma // CHECK-FIXED-L6: "-target-feature" "+reserve-l6"
80*c2f9885aSKoakuma 
81*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-l7 -### %s 2> %t
82*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-L7 < %t %s
83*c2f9885aSKoakuma // CHECK-FIXED-L7: "-target-feature" "+reserve-l7"
84*c2f9885aSKoakuma 
85*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-i0 -### %s 2> %t
86*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-I0 < %t %s
87*c2f9885aSKoakuma // CHECK-FIXED-I0: "-target-feature" "+reserve-i0"
88*c2f9885aSKoakuma 
89*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-i1 -### %s 2> %t
90*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-I1 < %t %s
91*c2f9885aSKoakuma // CHECK-FIXED-I1: "-target-feature" "+reserve-i1"
92*c2f9885aSKoakuma 
93*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-i2 -### %s 2> %t
94*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-I2 < %t %s
95*c2f9885aSKoakuma // CHECK-FIXED-I2: "-target-feature" "+reserve-i2"
96*c2f9885aSKoakuma 
97*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-i3 -### %s 2> %t
98*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-I3 < %t %s
99*c2f9885aSKoakuma // CHECK-FIXED-I3: "-target-feature" "+reserve-i3"
100*c2f9885aSKoakuma 
101*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-i4 -### %s 2> %t
102*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-I4 < %t %s
103*c2f9885aSKoakuma // CHECK-FIXED-I4: "-target-feature" "+reserve-i4"
104*c2f9885aSKoakuma 
105*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu -ffixed-i5 -### %s 2> %t
106*c2f9885aSKoakuma // RUN: FileCheck --check-prefix=CHECK-FIXED-I5 < %t %s
107*c2f9885aSKoakuma // CHECK-FIXED-I5: "-target-feature" "+reserve-i5"
108*c2f9885aSKoakuma 
109*c2f9885aSKoakuma // Test multiple of reserve-* options together.
110*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu \
111*c2f9885aSKoakuma // RUN: -ffixed-g1 \
112*c2f9885aSKoakuma // RUN: -ffixed-o2 \
113*c2f9885aSKoakuma // RUN: -ffixed-l3 \
114*c2f9885aSKoakuma // RUN: -ffixed-i4 \
115*c2f9885aSKoakuma // RUN: -### %s 2> %t
116*c2f9885aSKoakuma // RUN: FileCheck \
117*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G1 \
118*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-O2 \
119*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L3 \
120*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-I4 \
121*c2f9885aSKoakuma // RUN: < %t %s
122*c2f9885aSKoakuma 
123*c2f9885aSKoakuma // Test all reserve-* options together.
124*c2f9885aSKoakuma // RUN: %clang --target=sparc-none-gnu \
125*c2f9885aSKoakuma // RUN: -ffixed-g1 \
126*c2f9885aSKoakuma // RUN: -ffixed-g2 \
127*c2f9885aSKoakuma // RUN: -ffixed-g3 \
128*c2f9885aSKoakuma // RUN: -ffixed-g4 \
129*c2f9885aSKoakuma // RUN: -ffixed-g5 \
130*c2f9885aSKoakuma // RUN: -ffixed-g6 \
131*c2f9885aSKoakuma // RUN: -ffixed-g7 \
132*c2f9885aSKoakuma // RUN: -ffixed-o0 \
133*c2f9885aSKoakuma // RUN: -ffixed-o1 \
134*c2f9885aSKoakuma // RUN: -ffixed-o2 \
135*c2f9885aSKoakuma // RUN: -ffixed-o3 \
136*c2f9885aSKoakuma // RUN: -ffixed-o4 \
137*c2f9885aSKoakuma // RUN: -ffixed-o5 \
138*c2f9885aSKoakuma // RUN: -ffixed-l0 \
139*c2f9885aSKoakuma // RUN: -ffixed-l1 \
140*c2f9885aSKoakuma // RUN: -ffixed-l2 \
141*c2f9885aSKoakuma // RUN: -ffixed-l3 \
142*c2f9885aSKoakuma // RUN: -ffixed-l4 \
143*c2f9885aSKoakuma // RUN: -ffixed-l5 \
144*c2f9885aSKoakuma // RUN: -ffixed-l6 \
145*c2f9885aSKoakuma // RUN: -ffixed-l7 \
146*c2f9885aSKoakuma // RUN: -ffixed-i0 \
147*c2f9885aSKoakuma // RUN: -ffixed-i1 \
148*c2f9885aSKoakuma // RUN: -ffixed-i2 \
149*c2f9885aSKoakuma // RUN: -ffixed-i3 \
150*c2f9885aSKoakuma // RUN: -ffixed-i4 \
151*c2f9885aSKoakuma // RUN: -ffixed-i5 \
152*c2f9885aSKoakuma // RUN: -### %s 2> %t
153*c2f9885aSKoakuma // RUN: FileCheck \
154*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G1 \
155*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G2 \
156*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G3 \
157*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G4 \
158*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G5 \
159*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G6 \
160*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-G7 \
161*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-O0 \
162*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-O1 \
163*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-O2 \
164*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-O3 \
165*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-O4 \
166*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-O5 \
167*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L0 \
168*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L1 \
169*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L2 \
170*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L3 \
171*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L4 \
172*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L5 \
173*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L6 \
174*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-L7 \
175*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-I0 \
176*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-I1 \
177*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-I2 \
178*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-I3 \
179*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-I4 \
180*c2f9885aSKoakuma // RUN: --check-prefix=CHECK-FIXED-I5 \
181*c2f9885aSKoakuma // RUN: < %t %s
182