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