Clang Project

clang_source_code/test/Driver/mips-cs.cpp
1// REQUIRES: mips-registered-target
2//
3// Check frontend and linker invocations on Mentor Graphics MIPS toolchain.
4//
5// = Big-endian, hard float
6// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
7// RUN:     --target=mips-linux-gnu \
8// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
9// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-32 %s
10// CHECK-BE-HF-32: "-internal-isystem"
11// CHECK-BE-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
12// CHECK-BE-HF-32: "-internal-isystem"
13// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu"
14// CHECK-BE-HF-32: "-internal-isystem"
15// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
16// CHECK-BE-HF-32: "-internal-externc-isystem"
17// CHECK-BE-HF-32: "[[TC]]/include"
18// CHECK-BE-HF-32: "-internal-externc-isystem"
19// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
20// CHECK-BE-HF-32: "{{.*}}ld{{(.exe)?}}"
21// CHECK-BE-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc"
22// CHECK-BE-HF-32: "-dynamic-linker" "/lib/ld.so.1"
23// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib{{/|\\\\}}crt1.o"
24// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib{{/|\\\\}}crti.o"
25// CHECK-BE-HF-32: "[[TC]]{{/|\\\\}}crtbegin.o"
26// CHECK-BE-HF-32: "-L[[TC]]"
27// CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib"
28// CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/lib"
29// CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/usr/lib"
30// CHECK-BE-HF-32: "[[TC]]{{/|\\\\}}crtend.o"
31// CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib{{/|\\\\}}crtn.o"
32//
33// = Big-endian, hard float, uclibc
34// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
35// RUN:     --target=mips-linux-gnu -muclibc \
36// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
37// RUN:   | FileCheck --check-prefix=CHECK-BE-UC-HF-32 %s
38// CHECK-BE-UC-HF-32: "-internal-isystem"
39// CHECK-BE-UC-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
40// CHECK-BE-UC-HF-32: "-internal-isystem"
41// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc"
42// CHECK-BE-UC-HF-32: "-internal-isystem"
43// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
44// CHECK-BE-UC-HF-32: "-internal-externc-isystem"
45// CHECK-BE-UC-HF-32: "[[TC]]/include"
46// CHECK-BE-UC-HF-32: "-internal-externc-isystem"
47// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"
48// CHECK-BE-UC-HF-32: "{{.*}}ld{{(.exe)?}}"
49// CHECK-BE-UC-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc"
50// CHECK-BE-UC-HF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"
51// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/lib/../lib{{/|\\\\}}crt1.o"
52// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/lib/../lib{{/|\\\\}}crti.o"
53// CHECK-BE-UC-HF-32: "[[TC]]/uclibc{{/|\\\\}}crtbegin.o"
54// CHECK-BE-UC-HF-32: "-L[[TC]]/uclibc"
55// CHECK-BE-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc"
56// CHECK-BE-UC-HF-32-NOT: "-L[[TC]]"
57// CHECK-BE-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/lib/../lib"
58// CHECK-BE-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/lib/../lib"
59// CHECK-BE-UC-HF-32: "[[TC]]/uclibc{{/|\\\\}}crtend.o"
60// CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/lib/../lib{{/|\\\\}}crtn.o"
61//
62// = Big-endian, hard float, mips16
63// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
64// RUN:     --target=mips-linux-gnu -mips16 \
65// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
66// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-16 %s
67// CHECK-BE-HF-16: "-internal-isystem"
68// CHECK-BE-HF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
69// CHECK-BE-HF-16: "-internal-isystem"
70// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16"
71// CHECK-BE-HF-16: "-internal-isystem"
72// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
73// CHECK-BE-HF-16: "-internal-externc-isystem"
74// CHECK-BE-HF-16: "[[TC]]/include"
75// CHECK-BE-HF-16: "-internal-externc-isystem"
76// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
77// CHECK-BE-HF-16: "{{.*}}ld{{(.exe)?}}"
78// CHECK-BE-HF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16"
79// CHECK-BE-HF-16: "-dynamic-linker" "/lib/ld.so.1"
80// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr/lib/../lib{{/|\\\\}}crt1.o"
81// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr/lib/../lib{{/|\\\\}}crti.o"
82// CHECK-BE-HF-16: "[[TC]]/mips16{{/|\\\\}}crtbegin.o"
83// CHECK-BE-HF-16: "-L[[TC]]/mips16"
84// CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16"
85// CHECK-BE-HF-16-NOT: "-L[[TC]]"
86// CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/lib/../lib"
87// CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr/lib/../lib"
88// CHECK-BE-HF-16: "[[TC]]/mips16{{/|\\\\}}crtend.o"
89// CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr/lib/../lib{{/|\\\\}}crtn.o"
90//
91// = Big-endian, hard float, mmicromips
92// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
93// RUN:     --target=mips-linux-gnu -mmicromips \
94// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
95// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-MICRO %s
96// CHECK-BE-HF-MICRO: "-internal-isystem"
97// CHECK-BE-HF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
98// CHECK-BE-HF-MICRO: "-internal-isystem"
99// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips"
100// CHECK-BE-HF-MICRO: "-internal-isystem"
101// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
102// CHECK-BE-HF-MICRO: "-internal-externc-isystem"
103// CHECK-BE-HF-MICRO: "[[TC]]/include"
104// CHECK-BE-HF-MICRO: "-internal-externc-isystem"
105// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
106// CHECK-BE-HF-MICRO: "{{.*}}ld{{(.exe)?}}"
107// CHECK-BE-HF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips"
108// CHECK-BE-HF-MICRO: "-dynamic-linker" "/lib/ld.so.1"
109// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr/lib/../lib{{/|\\\\}}crt1.o"
110// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr/lib/../lib{{/|\\\\}}crti.o"
111// CHECK-BE-HF-MICRO: "[[TC]]/micromips{{/|\\\\}}crtbegin.o"
112// CHECK-BE-HF-MICRO: "-L[[TC]]/micromips"
113// CHECK-BE-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips"
114// CHECK-BE-HF-MICRO-NOT: "-L[[TC]]"
115// CHECK-BE-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/lib/../lib"
116// CHECK-BE-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr/lib/../lib"
117// CHECK-BE-HF-MICRO: "[[TC]]/micromips{{/|\\\\}}crtend.o"
118// CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr/lib/../lib{{/|\\\\}}crtn.o"
119//
120// = Big-endian, hard float, nan2008
121// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
122// RUN:     --target=mips-linux-gnu -mnan=2008 \
123// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
124// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-NAN %s
125// CHECK-BE-HF-NAN: "-internal-isystem"
126// CHECK-BE-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
127// CHECK-BE-HF-NAN: "-internal-isystem"
128// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/nan2008"
129// CHECK-BE-HF-NAN: "-internal-isystem"
130// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
131// CHECK-BE-HF-NAN: "-internal-externc-isystem"
132// CHECK-BE-HF-NAN: "[[TC]]/include"
133// CHECK-BE-HF-NAN: "-internal-externc-isystem"
134// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
135// CHECK-BE-HF-NAN: "{{.*}}ld{{(.exe)?}}"
136// CHECK-BE-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/nan2008"
137// CHECK-BE-HF-NAN: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
138// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
139// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
140// CHECK-BE-HF-NAN: "[[TC]]/nan2008{{/|\\\\}}crtbegin.o"
141// CHECK-BE-HF-NAN: "-L[[TC]]/nan2008"
142// CHECK-BE-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/nan2008"
143// CHECK-BE-HF-NAN-NOT: "-L[[TC]]"
144// CHECK-BE-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/lib/../lib"
145// CHECK-BE-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr/lib/../lib"
146// CHECK-BE-HF-NAN: "[[TC]]/nan2008{{/|\\\\}}crtend.o"
147// CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
148//
149// = Big-endian, hard float, uclibc, nan2008
150// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
151// RUN:     --target=mips-linux-gnu -muclibc -mnan=2008 \
152// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
153// RUN:   | FileCheck --check-prefix=CHECK-BE-UC-HF-NAN %s
154// CHECK-BE-UC-HF-NAN: "-internal-isystem"
155// CHECK-BE-UC-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
156// CHECK-BE-UC-HF-NAN: "-internal-isystem"
157// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/nan2008"
158// CHECK-BE-UC-HF-NAN: "-internal-isystem"
159// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
160// CHECK-BE-UC-HF-NAN: "-internal-externc-isystem"
161// CHECK-BE-UC-HF-NAN: "[[TC]]/include"
162// CHECK-BE-UC-HF-NAN: "-internal-externc-isystem"
163// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"
164// CHECK-BE-UC-HF-NAN: "{{.*}}ld{{(.exe)?}}"
165// CHECK-BE-UC-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008"
166// CHECK-BE-UC-HF-NAN: "-dynamic-linker" "/lib/ld-uClibc-mipsn8.so.0"
167// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
168// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
169// CHECK-BE-UC-HF-NAN: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtbegin.o"
170// CHECK-BE-UC-HF-NAN: "-L[[TC]]/uclibc/nan2008"
171// CHECK-BE-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/nan2008"
172// CHECK-BE-UC-HF-NAN-NOT: "-L[[TC]]"
173// CHECK-BE-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/lib/../lib"
174// CHECK-BE-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr/lib/../lib"
175// CHECK-BE-UC-HF-NAN: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtend.o"
176// CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
177//
178// = Big-endian, soft float
179// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
180// RUN:     --target=mips-linux-gnu -msoft-float \
181// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
182// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-32 %s
183// CHECK-BE-SF-32: "-internal-isystem"
184// CHECK-BE-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
185// CHECK-BE-SF-32: "-internal-isystem"
186// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float"
187// CHECK-BE-SF-32: "-internal-isystem"
188// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
189// CHECK-BE-SF-32: "-internal-externc-isystem"
190// CHECK-BE-SF-32: "[[TC]]/include"
191// CHECK-BE-SF-32: "-internal-externc-isystem"
192// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
193// CHECK-BE-SF-32: "{{.*}}ld{{(.exe)?}}"
194// CHECK-BE-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float"
195// CHECK-BE-SF-32: "-dynamic-linker" "/lib/ld.so.1"
196// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib{{/|\\\\}}crt1.o"
197// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib{{/|\\\\}}crti.o"
198// CHECK-BE-SF-32: "[[TC]]/soft-float{{/|\\\\}}crtbegin.o"
199// CHECK-BE-SF-32: "-L[[TC]]/soft-float"
200// CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/soft-float"
201// CHECK-BE-SF-32-NOT: "-L[[TC]]"
202// CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/lib/../lib"
203// CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib"
204// CHECK-BE-SF-32: "[[TC]]/soft-float{{/|\\\\}}crtend.o"
205// CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o"
206//
207// = Big-endian, soft float, uclibc
208// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
209// RUN:     --target=mips-linux-gnu -muclibc -msoft-float \
210// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
211// RUN:   | FileCheck --check-prefix=CHECK-BE-UC-SF-32 %s
212// CHECK-BE-UC-SF-32: "-internal-isystem"
213// CHECK-BE-UC-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
214// CHECK-BE-UC-SF-32: "-internal-isystem"
215// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/soft-float"
216// CHECK-BE-UC-SF-32: "-internal-isystem"
217// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
218// CHECK-BE-UC-SF-32: "-internal-externc-isystem"
219// CHECK-BE-UC-SF-32: "[[TC]]/include"
220// CHECK-BE-UC-SF-32: "-internal-externc-isystem"
221// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"
222// CHECK-BE-UC-SF-32: "{{.*}}ld{{(.exe)?}}"
223// CHECK-BE-UC-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float"
224// CHECK-BE-UC-SF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"
225// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr/lib/../lib{{/|\\\\}}crt1.o"
226// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr/lib/../lib{{/|\\\\}}crti.o"
227// CHECK-BE-UC-SF-32: "[[TC]]/uclibc/soft-float{{/|\\\\}}crtbegin.o"
228// CHECK-BE-UC-SF-32: "-L[[TC]]/uclibc/soft-float"
229// CHECK-BE-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/soft-float"
230// CHECK-BE-UC-SF-32-NOT: "-L[[TC]]"
231// CHECK-BE-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/lib/../lib"
232// CHECK-BE-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr/lib/../lib"
233// CHECK-BE-UC-SF-32: "[[TC]]/uclibc/soft-float{{/|\\\\}}crtend.o"
234// CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o"
235//
236// = Big-endian, soft float, mips16
237// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
238// RUN:     --target=mips-linux-gnu -msoft-float -mips16 \
239// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
240// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-16 %s
241// CHECK-BE-SF-16: "-internal-isystem"
242// CHECK-BE-SF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
243// CHECK-BE-SF-16: "-internal-isystem"
244// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16/soft-float"
245// CHECK-BE-SF-16: "-internal-isystem"
246// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
247// CHECK-BE-SF-16: "-internal-externc-isystem"
248// CHECK-BE-SF-16: "[[TC]]/include"
249// CHECK-BE-SF-16: "-internal-externc-isystem"
250// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
251// CHECK-BE-SF-16: "{{.*}}ld{{(.exe)?}}"
252// CHECK-BE-SF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float"
253// CHECK-BE-SF-16: "-dynamic-linker" "/lib/ld.so.1"
254// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr/lib/../lib{{/|\\\\}}crt1.o"
255// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr/lib/../lib{{/|\\\\}}crti.o"
256// CHECK-BE-SF-16: "[[TC]]/mips16/soft-float{{/|\\\\}}crtbegin.o"
257// CHECK-BE-SF-16: "-L[[TC]]/mips16/soft-float"
258// CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16/soft-float"
259// CHECK-BE-SF-16-NOT: "-L[[TC]]"
260// CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/lib/../lib"
261// CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr/lib/../lib"
262// CHECK-BE-SF-16: "[[TC]]/mips16/soft-float{{/|\\\\}}crtend.o"
263// CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o"
264//
265// = Big-endian, soft float, micromips
266// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
267// RUN:     --target=mips-linux-gnu -msoft-float -mmicromips \
268// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
269// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-MICRO %s
270// CHECK-BE-SF-MICRO: "-internal-isystem"
271// CHECK-BE-SF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
272// CHECK-BE-SF-MICRO: "-internal-isystem"
273// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips/soft-float"
274// CHECK-BE-SF-MICRO: "-internal-isystem"
275// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
276// CHECK-BE-SF-MICRO: "-internal-externc-isystem"
277// CHECK-BE-SF-MICRO: "[[TC]]/include"
278// CHECK-BE-SF-MICRO: "-internal-externc-isystem"
279// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
280// CHECK-BE-SF-MICRO: "{{.*}}ld{{(.exe)?}}"
281// CHECK-BE-SF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float"
282// CHECK-BE-SF-MICRO: "-dynamic-linker" "/lib/ld.so.1"
283// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr/lib/../lib{{/|\\\\}}crt1.o"
284// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr/lib/../lib{{/|\\\\}}crti.o"
285// CHECK-BE-SF-MICRO: "[[TC]]/micromips/soft-float{{/|\\\\}}crtbegin.o"
286// CHECK-BE-SF-MICRO: "-L[[TC]]/micromips/soft-float"
287// CHECK-BE-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips/soft-float"
288// CHECK-BE-SF-MICRO-NOT: "-L[[TC]]"
289// CHECK-BE-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/lib/../lib"
290// CHECK-BE-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr/lib/../lib"
291// CHECK-BE-SF-MICRO: "[[TC]]/micromips/soft-float{{/|\\\\}}crtend.o"
292// CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o"
293//
294// = Big-endian, hard float, 64-bit
295// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
296// RUN:     --target=mips64-linux-gnu \
297// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
298// RUN:   | FileCheck --check-prefix=CHECK-BE-HF-64 %s
299// CHECK-BE-HF-64: "-internal-isystem"
300// CHECK-BE-HF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
301// CHECK-BE-HF-64: "-internal-isystem"
302// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/64"
303// CHECK-BE-HF-64: "-internal-isystem"
304// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
305// CHECK-BE-HF-64: "-internal-externc-isystem"
306// CHECK-BE-HF-64: "[[TC]]/include"
307// CHECK-BE-HF-64: "-internal-externc-isystem"
308// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
309// CHECK-BE-HF-64: "{{.*}}ld{{(.exe)?}}"
310// CHECK-BE-HF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc"
311// CHECK-BE-HF-64: "-dynamic-linker" "/lib64/ld.so.1"
312// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib64{{/|\\\\}}crt1.o"
313// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib64{{/|\\\\}}crti.o"
314// CHECK-BE-HF-64: "[[TC]]/64{{/|\\\\}}crtbegin.o"
315// CHECK-BE-HF-64: "-L[[TC]]/64"
316// CHECK-BE-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64"
317// CHECK-BE-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/lib/../lib64"
318// CHECK-BE-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib64"
319// CHECK-BE-HF-64-NOT: "-L[[TC]]"
320// CHECK-BE-HF-64: "{{.*}}/lib/gcc/mips-linux-gnu/4.6.3/64{{/|\\\\}}crtend.o"
321// CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib64{{/|\\\\}}crtn.o"
322//
323// = Big-endian, soft float, 64-bit
324// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
325// RUN:     --target=mips64-linux-gnu -msoft-float \
326// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
327// RUN:   | FileCheck --check-prefix=CHECK-BE-SF-64 %s
328// CHECK-BE-SF-64: "-internal-isystem"
329// CHECK-BE-SF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
330// CHECK-BE-SF-64: "-internal-isystem"
331// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float/64"
332// CHECK-BE-SF-64: "-internal-isystem"
333// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
334// CHECK-BE-SF-64: "-internal-externc-isystem"
335// CHECK-BE-SF-64: "[[TC]]/include"
336// CHECK-BE-SF-64: "-internal-externc-isystem"
337// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
338// CHECK-BE-SF-64: "{{.*}}ld{{(.exe)?}}"
339// CHECK-BE-SF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float"
340// CHECK-BE-SF-64: "-dynamic-linker" "/lib64/ld.so.1"
341// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib64{{/|\\\\}}crt1.o"
342// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib64{{/|\\\\}}crti.o"
343// CHECK-BE-SF-64: "[[TC]]/soft-float/64{{/|\\\\}}crtbegin.o"
344// CHECK-BE-SF-64: "-L[[TC]]/soft-float/64"
345// CHECK-BE-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64/soft-float"
346// CHECK-BE-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/lib/../lib64"
347// CHECK-BE-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib64"
348// CHECK-BE-SF-64-NOT: "-L[[TC]]"
349// CHECK-BE-SF-64: "[[TC]]/soft-float/64{{/|\\\\}}crtend.o"
350// CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib64{{/|\\\\}}crtn.o"
351//
352// = Little-endian, hard float
353// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
354// RUN:     --target=mipsel-linux-gnu -mhard-float \
355// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
356// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-32 %s
357// CHECK-EL-HF-32: "-internal-isystem"
358// CHECK-EL-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
359// CHECK-EL-HF-32: "-internal-isystem"
360// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/el"
361// CHECK-EL-HF-32: "-internal-isystem"
362// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
363// CHECK-EL-HF-32: "-internal-externc-isystem"
364// CHECK-EL-HF-32: "[[TC]]/include"
365// CHECK-EL-HF-32: "-internal-externc-isystem"
366// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
367// CHECK-EL-HF-32: "{{.*}}ld{{(.exe)?}}"
368// CHECK-EL-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/el"
369// CHECK-EL-HF-32: "-dynamic-linker" "/lib/ld.so.1"
370// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib{{/|\\\\}}crt1.o"
371// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib{{/|\\\\}}crti.o"
372// CHECK-EL-HF-32: "[[TC]]/el{{/|\\\\}}crtbegin.o"
373// CHECK-EL-HF-32: "-L[[TC]]/el"
374// CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/el"
375// CHECK-EL-HF-32-NOT: "-L[[TC]]"
376// CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/lib/../lib"
377// CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib"
378// CHECK-EL-HF-32: "[[TC]]/el{{/|\\\\}}crtend.o"
379// CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib{{/|\\\\}}crtn.o"
380//
381// = Little-endian, hard float, uclibc
382// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
383// RUN:     --target=mipsel-linux-gnu -mhard-float -muclibc \
384// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
385// RUN:   | FileCheck --check-prefix=CHECK-EL-UC-HF-32 %s
386// CHECK-EL-UC-HF-32: "-internal-isystem"
387// CHECK-EL-UC-HF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
388// CHECK-EL-UC-HF-32: "-internal-isystem"
389// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/el"
390// CHECK-EL-UC-HF-32: "-internal-isystem"
391// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
392// CHECK-EL-UC-HF-32: "-internal-externc-isystem"
393// CHECK-EL-UC-HF-32: "[[TC]]/include"
394// CHECK-EL-UC-HF-32: "-internal-externc-isystem"
395// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"
396// CHECK-EL-UC-HF-32: "{{.*}}ld{{(.exe)?}}"
397// CHECK-EL-UC-HF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el"
398// CHECK-EL-UC-HF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"
399// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr/lib/../lib{{/|\\\\}}crt1.o"
400// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr/lib/../lib{{/|\\\\}}crti.o"
401// CHECK-EL-UC-HF-32: "[[TC]]/uclibc/el{{/|\\\\}}crtbegin.o"
402// CHECK-EL-UC-HF-32: "-L[[TC]]/uclibc/el"
403// CHECK-EL-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/el"
404// CHECK-EL-UC-HF-32-NOT: "-L[[TC]]"
405// CHECK-EL-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/lib/../lib"
406// CHECK-EL-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr/lib/../lib"
407// CHECK-EL-UC-HF-32: "[[TC]]/uclibc/el{{/|\\\\}}crtend.o"
408// CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr/lib/../lib{{/|\\\\}}crtn.o"
409//
410// = Little-endian, hard float, mips16
411// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
412// RUN:     --target=mipsel-linux-gnu -mips16 \
413// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
414// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-16 %s
415// CHECK-EL-HF-16: "-internal-isystem"
416// CHECK-EL-HF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
417// CHECK-EL-HF-16: "-internal-isystem"
418// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16/el"
419// CHECK-EL-HF-16: "-internal-isystem"
420// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
421// CHECK-EL-HF-16: "-internal-externc-isystem"
422// CHECK-EL-HF-16: "[[TC]]/include"
423// CHECK-EL-HF-16: "-internal-externc-isystem"
424// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
425// CHECK-EL-HF-16: "{{.*}}ld{{(.exe)?}}"
426// CHECK-EL-HF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16/el"
427// CHECK-EL-HF-16: "-dynamic-linker" "/lib/ld.so.1"
428// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr/lib/../lib{{/|\\\\}}crt1.o"
429// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr/lib/../lib{{/|\\\\}}crti.o"
430// CHECK-EL-HF-16: "[[TC]]/mips16/el{{/|\\\\}}crtbegin.o"
431// CHECK-EL-HF-16: "-L[[TC]]/mips16/el"
432// CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16/el"
433// CHECK-EL-HF-16-NOT: "-L[[TC]]"
434// CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/lib/../lib"
435// CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr/lib/../lib"
436// CHECK-EL-HF-16: "[[TC]]/mips16/el{{/|\\\\}}crtend.o"
437// CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o"
438//
439// = Little-endian, hard float, micromips
440// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
441// RUN:     --target=mipsel-linux-gnu -mmicromips \
442// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
443// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-MICRO %s
444// CHECK-EL-HF-MICRO: "-internal-isystem"
445// CHECK-EL-HF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
446// CHECK-EL-HF-MICRO: "-internal-isystem"
447// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips/el"
448// CHECK-EL-HF-MICRO: "-internal-isystem"
449// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
450// CHECK-EL-HF-MICRO: "-internal-externc-isystem"
451// CHECK-EL-HF-MICRO: "[[TC]]/include"
452// CHECK-EL-HF-MICRO: "-internal-externc-isystem"
453// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
454// CHECK-EL-HF-MICRO: "{{.*}}ld{{(.exe)?}}"
455// CHECK-EL-HF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips/el"
456// CHECK-EL-HF-MICRO: "-dynamic-linker" "/lib/ld.so.1"
457// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr/lib/../lib{{/|\\\\}}crt1.o"
458// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr/lib/../lib{{/|\\\\}}crti.o"
459// CHECK-EL-HF-MICRO: "[[TC]]/micromips/el{{/|\\\\}}crtbegin.o"
460// CHECK-EL-HF-MICRO: "-L[[TC]]/micromips/el"
461// CHECK-EL-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips/el"
462// CHECK-EL-HF-MICRO-NOT: "-L[[TC]]"
463// CHECK-EL-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/lib/../lib"
464// CHECK-EL-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr/lib/../lib"
465// CHECK-EL-HF-MICRO: "[[TC]]/micromips/el{{/|\\\\}}crtend.o"
466// CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr/lib/../lib{{/|\\\\}}crtn.o"
467//
468// = Little-endian, hard float, nan2008
469// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
470// RUN:     --target=mipsel-linux-gnu -mnan=2008 \
471// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
472// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-NAN %s
473// CHECK-EL-HF-NAN: "-internal-isystem"
474// CHECK-EL-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
475// CHECK-EL-HF-NAN: "-internal-isystem"
476// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/nan2008/el"
477// CHECK-EL-HF-NAN: "-internal-isystem"
478// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
479// CHECK-EL-HF-NAN: "-internal-externc-isystem"
480// CHECK-EL-HF-NAN: "[[TC]]/include"
481// CHECK-EL-HF-NAN: "-internal-externc-isystem"
482// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
483// CHECK-EL-HF-NAN: "{{.*}}ld{{(.exe)?}}"
484// CHECK-EL-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el"
485// CHECK-EL-HF-NAN: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
486// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr/lib/../lib{{/|\\\\}}crt1.o"
487// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr/lib/../lib{{/|\\\\}}crti.o"
488// CHECK-EL-HF-NAN: "[[TC]]/nan2008/el{{/|\\\\}}crtbegin.o"
489// CHECK-EL-HF-NAN: "-L[[TC]]/nan2008/el"
490// CHECK-EL-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/nan2008/el"
491// CHECK-EL-HF-NAN-NOT: "-L[[TC]]"
492// CHECK-EL-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/lib/../lib"
493// CHECK-EL-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr/lib/../lib"
494// CHECK-EL-HF-NAN: "[[TC]]/nan2008/el{{/|\\\\}}crtend.o"
495// CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr/lib/../lib{{/|\\\\}}crtn.o"
496//
497// = Little-endian, hard float, uclibc, nan2008
498// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
499// RUN:     --target=mipsel-linux-gnu -muclibc -mnan=2008 \
500// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
501// RUN:   | FileCheck --check-prefix=CHECK-EL-UC-HF-NAN %s
502// CHECK-EL-UC-HF-NAN: "-internal-isystem"
503// CHECK-EL-UC-HF-NAN: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
504// CHECK-EL-UC-HF-NAN: "-internal-isystem"
505// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/nan2008/el"
506// CHECK-EL-UC-HF-NAN: "-internal-isystem"
507// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
508// CHECK-EL-UC-HF-NAN: "-internal-externc-isystem"
509// CHECK-EL-UC-HF-NAN: "[[TC]]/include"
510// CHECK-EL-UC-HF-NAN: "-internal-externc-isystem"
511// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"
512// CHECK-EL-UC-HF-NAN: "{{.*}}ld{{(.exe)?}}"
513// CHECK-EL-UC-HF-NAN: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el"
514// CHECK-EL-UC-HF-NAN: "-dynamic-linker" "/lib/ld-uClibc-mipsn8.so.0"
515// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr/lib/../lib{{/|\\\\}}crt1.o"
516// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr/lib/../lib{{/|\\\\}}crti.o"
517// CHECK-EL-UC-HF-NAN: "[[TC]]/uclibc/nan2008/el{{/|\\\\}}crtbegin.o"
518// CHECK-EL-UC-HF-NAN: "-L[[TC]]/uclibc/nan2008/el"
519// CHECK-EL-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/nan2008/el"
520// CHECK-EL-UC-HF-NAN-NOT: "-L[[TC]]"
521// CHECK-EL-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/lib/../lib"
522// CHECK-EL-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr/lib/../lib"
523// CHECK-EL-UC-HF-NAN: "[[TC]]/uclibc/nan2008/el{{/|\\\\}}crtend.o"
524// CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr/lib/../lib{{/|\\\\}}crtn.o"
525//
526// = Little-endian, soft float
527// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
528// RUN:     --target=mipsel-linux-gnu -mfloat-abi=soft \
529// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
530// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-32 %s
531// CHECK-EL-SF-32: "-internal-isystem"
532// CHECK-EL-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
533// CHECK-EL-SF-32: "-internal-isystem"
534// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float/el"
535// CHECK-EL-SF-32: "-internal-isystem"
536// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
537// CHECK-EL-SF-32: "-internal-externc-isystem"
538// CHECK-EL-SF-32: "[[TC]]/include"
539// CHECK-EL-SF-32: "-internal-externc-isystem"
540// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
541// CHECK-EL-SF-32: "{{.*}}ld{{(.exe)?}}"
542// CHECK-EL-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el"
543// CHECK-EL-SF-32: "-dynamic-linker" "/lib/ld.so.1"
544// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib{{/|\\\\}}crt1.o"
545// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib{{/|\\\\}}crti.o"
546// CHECK-EL-SF-32: "[[TC]]/soft-float/el{{/|\\\\}}crtbegin.o"
547// CHECK-EL-SF-32: "-L[[TC]]/soft-float/el"
548// CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/soft-float/el"
549// CHECK-EL-SF-32-NOT: "-L[[TC]]"
550// CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/lib/../lib"
551// CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib"
552// CHECK-EL-SF-32: "[[TC]]/soft-float/el{{/|\\\\}}crtend.o"
553// CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o"
554//
555// = Little-endian, soft float, uclibc
556// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
557// RUN:     --target=mipsel-linux-gnu -mfloat-abi=soft -muclibc \
558// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
559// RUN:   | FileCheck --check-prefix=CHECK-EL-UC-SF-32 %s
560// CHECK-EL-UC-SF-32: "-internal-isystem"
561// CHECK-EL-UC-SF-32: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
562// CHECK-EL-UC-SF-32: "-internal-isystem"
563// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/uclibc/soft-float/el"
564// CHECK-EL-UC-SF-32: "-internal-isystem"
565// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
566// CHECK-EL-UC-SF-32: "-internal-externc-isystem"
567// CHECK-EL-UC-SF-32: "[[TC]]/include"
568// CHECK-EL-UC-SF-32: "-internal-externc-isystem"
569// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/include"
570// CHECK-EL-UC-SF-32: "{{.*}}ld{{(.exe)?}}"
571// CHECK-EL-UC-SF-32: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el"
572// CHECK-EL-UC-SF-32: "-dynamic-linker" "/lib/ld-uClibc.so.0"
573// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr/lib/../lib{{/|\\\\}}crt1.o"
574// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr/lib/../lib{{/|\\\\}}crti.o"
575// CHECK-EL-UC-SF-32: "[[TC]]/uclibc/soft-float/el{{/|\\\\}}crtbegin.o"
576// CHECK-EL-UC-SF-32: "-L[[TC]]/uclibc/soft-float/el"
577// CHECK-EL-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/uclibc/soft-float/el"
578// CHECK-EL-UC-SF-32-NOT: "-L[[TC]]"
579// CHECK-EL-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/lib/../lib"
580// CHECK-EL-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr/lib/../lib"
581// CHECK-EL-UC-SF-32: "[[TC]]/uclibc/soft-float/el{{/|\\\\}}crtend.o"
582// CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o"
583//
584// = Little-endian, soft float, mips16
585// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
586// RUN:     --target=mipsel-linux-gnu -mips16 -msoft-float \
587// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
588// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-16 %s
589// CHECK-EL-SF-16: "-internal-isystem"
590// CHECK-EL-SF-16: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
591// CHECK-EL-SF-16: "-internal-isystem"
592// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/mips16/soft-float/el"
593// CHECK-EL-SF-16: "-internal-isystem"
594// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
595// CHECK-EL-SF-16: "-internal-externc-isystem"
596// CHECK-EL-SF-16: "[[TC]]/include"
597// CHECK-EL-SF-16: "-internal-externc-isystem"
598// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
599// CHECK-EL-SF-16: "{{.*}}ld{{(.exe)?}}"
600// CHECK-EL-SF-16: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el"
601// CHECK-EL-SF-16: "-dynamic-linker" "/lib/ld.so.1"
602// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr/lib/../lib{{/|\\\\}}crt1.o"
603// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr/lib/../lib{{/|\\\\}}crti.o"
604// CHECK-EL-SF-16: "[[TC]]/mips16/soft-float/el{{/|\\\\}}crtbegin.o"
605// CHECK-EL-SF-16: "-L[[TC]]/mips16/soft-float/el"
606// CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/mips16/soft-float/el"
607// CHECK-EL-SF-16-NOT: "-L[[TC]]"
608// CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/lib/../lib"
609// CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr/lib/../lib"
610// CHECK-EL-SF-16: "[[TC]]/mips16/soft-float/el{{/|\\\\}}crtend.o"
611// CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o"
612//
613// = Little-endian, soft float, micromips
614// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
615// RUN:     --target=mipsel-linux-gnu -mmicromips -msoft-float \
616// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
617// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-MICRO %s
618// CHECK-EL-SF-MICRO: "-internal-isystem"
619// CHECK-EL-SF-MICRO: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
620// CHECK-EL-SF-MICRO: "-internal-isystem"
621// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/micromips/soft-float/el"
622// CHECK-EL-SF-MICRO: "-internal-isystem"
623// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
624// CHECK-EL-SF-MICRO: "-internal-externc-isystem"
625// CHECK-EL-SF-MICRO: "[[TC]]/include"
626// CHECK-EL-SF-MICRO: "-internal-externc-isystem"
627// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
628// CHECK-EL-SF-MICRO: "{{.*}}ld{{(.exe)?}}"
629// CHECK-EL-SF-MICRO: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el"
630// CHECK-EL-SF-MICRO: "-dynamic-linker" "/lib/ld.so.1"
631// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr/lib/../lib{{/|\\\\}}crt1.o"
632// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr/lib/../lib{{/|\\\\}}crti.o"
633// CHECK-EL-SF-MICRO: "[[TC]]/micromips/soft-float/el{{/|\\\\}}crtbegin.o"
634// CHECK-EL-SF-MICRO: "-L[[TC]]/micromips/soft-float/el"
635// CHECK-EL-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib/micromips/soft-float/el"
636// CHECK-EL-SF-MICRO-NOT: "-L[[TC]]"
637// CHECK-EL-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/lib/../lib"
638// CHECK-EL-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr/lib/../lib"
639// CHECK-EL-SF-MICRO: "[[TC]]/micromips/soft-float/el{{/|\\\\}}crtend.o"
640// CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o"
641//
642// = Little-endian, hard float, 64-bit
643// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
644// RUN:     --target=mips64el-linux-gnu \
645// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
646// RUN:   | FileCheck --check-prefix=CHECK-EL-HF-64 %s
647// CHECK-EL-HF-64: "-internal-isystem"
648// CHECK-EL-HF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
649// CHECK-EL-HF-64: "-internal-isystem"
650// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/el/64"
651// CHECK-EL-HF-64: "-internal-isystem"
652// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
653// CHECK-EL-HF-64: "-internal-externc-isystem"
654// CHECK-EL-HF-64: "[[TC]]/include"
655// CHECK-EL-HF-64: "-internal-externc-isystem"
656// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
657// CHECK-EL-HF-64: "{{.*}}ld{{(.exe)?}}"
658// CHECK-EL-HF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/el"
659// CHECK-EL-HF-64: "-dynamic-linker" "/lib64/ld.so.1"
660// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib64{{/|\\\\}}crt1.o"
661// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib64{{/|\\\\}}crti.o"
662// CHECK-EL-HF-64: "[[TC]]/el/64{{/|\\\\}}crtbegin.o"
663// CHECK-EL-HF-64: "-L[[TC]]/el/64"
664// CHECK-EL-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64/el"
665// CHECK-EL-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/lib/../lib64"
666// CHECK-EL-HF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib64"
667// CHECK-EL-HF-64-NOT: "-L[[TC]]"
668// CHECK-EL-HF-64: "[[TC]]/el/64{{/|\\\\}}crtend.o"
669// CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib64{{/|\\\\}}crtn.o"
670//
671// = Little-endian, soft float, 64-bit
672// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
673// RUN:     --target=mips64el-linux-gnu -msoft-float \
674// RUN:     -stdlib=libstdc++ --gcc-toolchain=%S/Inputs/mips_cs_tree \
675// RUN:   | FileCheck --check-prefix=CHECK-EL-SF-64 %s
676// CHECK-EL-SF-64: "-internal-isystem"
677// CHECK-EL-SF-64: "[[TC:[^"]+/lib/gcc/mips-linux-gnu/4.6.3]]/../../../../mips-linux-gnu/include/c++/4.6.3"
678// CHECK-EL-SF-64: "-internal-isystem"
679// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/mips-linux-gnu/soft-float/el/64"
680// CHECK-EL-SF-64: "-internal-isystem"
681// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/include/c++/4.6.3/backward"
682// CHECK-EL-SF-64: "-internal-externc-isystem"
683// CHECK-EL-SF-64: "[[TC]]/include"
684// CHECK-EL-SF-64: "-internal-externc-isystem"
685// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/include"
686// CHECK-EL-SF-64: "{{.*}}ld{{(.exe)?}}"
687// CHECK-EL-SF-64: "--sysroot=[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el"
688// CHECK-EL-SF-64: "-dynamic-linker" "/lib64/ld.so.1"
689// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib64{{/|\\\\}}crt1.o"
690// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib64{{/|\\\\}}crti.o"
691// CHECK-EL-SF-64: "[[TC]]/soft-float/el/64{{/|\\\\}}crtbegin.o"
692// CHECK-EL-SF-64: "-L[[TC]]/soft-float/el/64"
693// CHECK-EL-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/lib/../lib64/soft-float/el"
694// CHECK-EL-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/lib/../lib64"
695// CHECK-EL-SF-64: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib64"
696// CHECK-EL-SF-64-NOT: "-L[[TC]]"
697// CHECK-EL-SF-64: "[[TC]]/soft-float/el/64{{/|\\\\}}crtend.o"
698// CHECK-EL-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib64{{/|\\\\}}crtn.o"
699