• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Check frontend and linker invocations on FSF MIPS toolchain.
2 //
3 // = Big-endian, mips32, hard float
4 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
5 // RUN:     --target=mips-linux-gnu -mips32 -mhard-float \
6 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
7 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-32 %s
8 // CHECK-BE-HF-32: "-internal-isystem"
9 // CHECK-BE-HF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
10 // CHECK-BE-HF-32: "-internal-isystem"
11 // CHECK-BE-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32"
12 // CHECK-BE-HF-32: "-internal-isystem"
13 // CHECK-BE-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
14 // CHECK-BE-HF-32: "-internal-externc-isystem"
15 // CHECK-BE-HF-32: "[[TC]]/include"
16 // CHECK-BE-HF-32: "-internal-externc-isystem"
17 // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/usr/include"
18 // CHECK-BE-HF-32: "{{.*}}ld{{(.exe)?}}"
19 // CHECK-BE-HF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32"
20 // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crt1.o"
21 // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crti.o"
22 // CHECK-BE-HF-32: "[[TC]]/mips32{{/|\\\\}}crtbegin.o"
23 // CHECK-BE-HF-32: "-L[[TC]]/mips32"
24 // CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32"
25 // CHECK-BE-HF-32: "-L[[TC]]/../../../../sysroot/mips32/usr/lib/../lib"
26 // CHECK-BE-HF-32: "[[TC]]/mips32{{/|\\\\}}crtend.o"
27 // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crtn.o"
28 //
29 // = Big-endian, mips32, hard float, fp64
30 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
31 // RUN:     --target=mips-linux-gnu -mips32 -mfp64 -mhard-float \
32 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
33 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-32 %s
34 // CHECK-BE-HF64-32: "-internal-isystem"
35 // CHECK-BE-HF64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
36 // CHECK-BE-HF64-32: "-internal-isystem"
37 // CHECK-BE-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/fp64"
38 // CHECK-BE-HF64-32: "-internal-isystem"
39 // CHECK-BE-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
40 // CHECK-BE-HF64-32: "-internal-externc-isystem"
41 // CHECK-BE-HF64-32: "[[TC]]/include"
42 // CHECK-BE-HF64-32: "-internal-externc-isystem"
43 // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/usr/include"
44 // CHECK-BE-HF64-32: "{{.*}}ld{{(.exe)?}}"
45 // CHECK-BE-HF64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/fp64"
46 // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/mips32/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
47 // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/mips32/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
48 // CHECK-BE-HF64-32: "[[TC]]/mips32/fp64{{/|\\\\}}crtbegin.o"
49 // CHECK-BE-HF64-32: "-L[[TC]]/mips32/fp64"
50 // CHECK-BE-HF64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/fp64"
51 // CHECK-BE-HF64-32: "-L[[TC]]/../../../../sysroot/mips32/fp64/usr/lib/../lib"
52 // CHECK-BE-HF64-32: "[[TC]]/mips32/fp64{{/|\\\\}}crtend.o"
53 // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/mips32/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
54 //
55 // = Big-endian, mips32, soft float
56 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
57 // RUN:     --target=mips-linux-gnu -mips32 -msoft-float \
58 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
59 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-32 %s
60 // CHECK-BE-SF-32: "-internal-isystem"
61 // CHECK-BE-SF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
62 // CHECK-BE-SF-32: "-internal-isystem"
63 // CHECK-BE-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/sof"
64 // CHECK-BE-SF-32: "-internal-isystem"
65 // CHECK-BE-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
66 // CHECK-BE-SF-32: "-internal-externc-isystem"
67 // CHECK-BE-SF-32: "[[TC]]/include"
68 // CHECK-BE-SF-32: "-internal-externc-isystem"
69 // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/usr/include"
70 // CHECK-BE-SF-32: "{{.*}}ld{{(.exe)?}}"
71 // CHECK-BE-SF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/sof"
72 // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
73 // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib{{/|\\\\}}crti.o"
74 // CHECK-BE-SF-32: "[[TC]]/mips32/sof{{/|\\\\}}crtbegin.o"
75 // CHECK-BE-SF-32: "-L[[TC]]/mips32/sof"
76 // CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/sof"
77 // CHECK-BE-SF-32: "-L[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib"
78 // CHECK-BE-SF-32: "[[TC]]/mips32/sof{{/|\\\\}}crtend.o"
79 // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
80 //
81 // = Big-endian, mips16 / mips32, hard float
82 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
83 // RUN:     --target=mips-linux-gnu -mips32 -mips16 -mhard-float \
84 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
85 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-16 %s
86 // CHECK-BE-HF-16: "-internal-isystem"
87 // CHECK-BE-HF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
88 // CHECK-BE-HF-16: "-internal-isystem"
89 // CHECK-BE-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16"
90 // CHECK-BE-HF-16: "-internal-isystem"
91 // CHECK-BE-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
92 // CHECK-BE-HF-16: "-internal-externc-isystem"
93 // CHECK-BE-HF-16: "[[TC]]/include"
94 // CHECK-BE-HF-16: "-internal-externc-isystem"
95 // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/usr/include"
96 // CHECK-BE-HF-16: "{{.*}}ld{{(.exe)?}}"
97 // CHECK-BE-HF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16"
98 // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crt1.o"
99 // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crti.o"
100 // CHECK-BE-HF-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtbegin.o"
101 // CHECK-BE-HF-16: "-L[[TC]]/mips32/mips16"
102 // CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16"
103 // CHECK-BE-HF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib"
104 // CHECK-BE-HF-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtend.o"
105 // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crtn.o"
106 //
107 // = Big-endian, mips16 / mips32, hard float, fp64
108 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
109 // RUN:     --target=mips-linux-gnu -mips32 -mips16 -mfp64 -mhard-float \
110 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
111 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-16 %s
112 // CHECK-BE-HF64-16: "-internal-isystem"
113 // CHECK-BE-HF64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
114 // CHECK-BE-HF64-16: "-internal-isystem"
115 // CHECK-BE-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/fp64"
116 // CHECK-BE-HF64-16: "-internal-isystem"
117 // CHECK-BE-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
118 // CHECK-BE-HF64-16: "-internal-externc-isystem"
119 // CHECK-BE-HF64-16: "[[TC]]/include"
120 // CHECK-BE-HF64-16: "-internal-externc-isystem"
121 // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/usr/include"
122 // CHECK-BE-HF64-16: "{{.*}}ld{{(.exe)?}}"
123 // CHECK-BE-HF64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/fp64"
124 // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
125 // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
126 // CHECK-BE-HF64-16: "[[TC]]/mips32/mips16/fp64{{/|\\\\}}crtbegin.o"
127 // CHECK-BE-HF64-16: "-L[[TC]]/mips32/mips16/fp64"
128 // CHECK-BE-HF64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/fp64"
129 // CHECK-BE-HF64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/fp64/usr/lib/../lib"
130 // CHECK-BE-HF64-16: "[[TC]]/mips32/mips16/fp64{{/|\\\\}}crtend.o"
131 // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
132 //
133 // = Big-endian, mips16 / mips32, soft float
134 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
135 // RUN:     --target=mips-linux-gnu -mips32 -mips16 -msoft-float \
136 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
137 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-16 %s
138 // CHECK-BE-SF-16: "-internal-isystem"
139 // CHECK-BE-SF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
140 // CHECK-BE-SF-16: "-internal-isystem"
141 // CHECK-BE-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/sof"
142 // CHECK-BE-SF-16: "-internal-isystem"
143 // CHECK-BE-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
144 // CHECK-BE-SF-16: "-internal-externc-isystem"
145 // CHECK-BE-SF-16: "[[TC]]/include"
146 // CHECK-BE-SF-16: "-internal-externc-isystem"
147 // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/usr/include"
148 // CHECK-BE-SF-16: "{{.*}}ld{{(.exe)?}}"
149 // CHECK-BE-SF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/sof"
150 // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
151 // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib{{/|\\\\}}crti.o"
152 // CHECK-BE-SF-16: "[[TC]]/mips32/mips16/sof{{/|\\\\}}crtbegin.o"
153 // CHECK-BE-SF-16: "-L[[TC]]/mips32/mips16/sof"
154 // CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/sof"
155 // CHECK-BE-SF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib"
156 // CHECK-BE-SF-16: "[[TC]]/mips32/mips16/sof{{/|\\\\}}crtend.o"
157 // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
158 //
159 // = Big-endian, mips32 / mips16, nan2008
160 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
161 // RUN:     --target=mips-linux-gnu -mips32 -mips16 -mnan=2008 \
162 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
163 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-16 %s
164 // CHECK-BE-NAN-16: "-internal-isystem"
165 // CHECK-BE-NAN-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
166 // CHECK-BE-NAN-16: "-internal-isystem"
167 // CHECK-BE-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/nan2008"
168 // CHECK-BE-NAN-16: "-internal-isystem"
169 // CHECK-BE-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
170 // CHECK-BE-NAN-16: "-internal-externc-isystem"
171 // CHECK-BE-NAN-16: "[[TC]]/include"
172 // CHECK-BE-NAN-16: "-internal-externc-isystem"
173 // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/usr/include"
174 // CHECK-BE-NAN-16: "{{.*}}ld{{(.exe)?}}"
175 // CHECK-BE-NAN-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/nan2008"
176 // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
177 // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
178 // CHECK-BE-NAN-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtbegin.o"
179 // CHECK-BE-NAN-16: "-L[[TC]]/mips32/mips16/nan2008"
180 // CHECK-BE-NAN-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/nan2008"
181 // CHECK-BE-NAN-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib"
182 // CHECK-BE-NAN-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtend.o"
183 // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
184 //
185 // = Big-endian, mips32 / mips16, fp64, nan2008
186 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
187 // RUN:     --target=mips-linux-gnu -mips32 -mips16 -mfp64 -mnan=2008 \
188 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
189 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-16 %s
190 // CHECK-BE-NAN64-16: "-internal-isystem"
191 // CHECK-BE-NAN64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
192 // CHECK-BE-NAN64-16: "-internal-isystem"
193 // CHECK-BE-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/fp64/nan2008"
194 // CHECK-BE-NAN64-16: "-internal-isystem"
195 // CHECK-BE-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
196 // CHECK-BE-NAN64-16: "-internal-externc-isystem"
197 // CHECK-BE-NAN64-16: "[[TC]]/include"
198 // CHECK-BE-NAN64-16: "-internal-externc-isystem"
199 // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/usr/include"
200 // CHECK-BE-NAN64-16: "{{.*}}ld{{(.exe)?}}"
201 // CHECK-BE-NAN64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/fp64/nan2008"
202 // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
203 // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
204 // CHECK-BE-NAN64-16: "[[TC]]/mips32/mips16/fp64/nan2008{{/|\\\\}}crtbegin.o"
205 // CHECK-BE-NAN64-16: "-L[[TC]]/mips32/mips16/fp64/nan2008"
206 // CHECK-BE-NAN64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/fp64/nan2008"
207 // CHECK-BE-NAN64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/fp64/nan2008/usr/lib/../lib"
208 // CHECK-BE-NAN64-16: "[[TC]]/mips32/mips16/fp64/nan2008{{/|\\\\}}crtend.o"
209 // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
210 //
211 // = Big-endian, mips32, nan2008
212 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
213 // RUN:     --target=mips-linux-gnu -mips32 -mnan=2008 \
214 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
215 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-32 %s
216 // CHECK-BE-NAN-32: "-internal-isystem"
217 // CHECK-BE-NAN-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
218 // CHECK-BE-NAN-32: "-internal-isystem"
219 // CHECK-BE-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/nan2008"
220 // CHECK-BE-NAN-32: "-internal-isystem"
221 // CHECK-BE-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
222 // CHECK-BE-NAN-32: "-internal-externc-isystem"
223 // CHECK-BE-NAN-32: "[[TC]]/include"
224 // CHECK-BE-NAN-32: "-internal-externc-isystem"
225 // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/usr/include"
226 // CHECK-BE-NAN-32: "{{.*}}ld{{(.exe)?}}"
227 // CHECK-BE-NAN-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/nan2008"
228 // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
229 // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
230 // CHECK-BE-NAN-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtbegin.o"
231 // CHECK-BE-NAN-32: "-L[[TC]]/mips32/nan2008"
232 // CHECK-BE-NAN-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/nan2008"
233 // CHECK-BE-NAN-32: "-L[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib"
234 // CHECK-BE-NAN-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtend.o"
235 // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
236 //
237 // = Big-endian, mips32, fp64, nan2008
238 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
239 // RUN:     --target=mips-linux-gnu -mips32 -mfp64 -mnan=2008 \
240 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
241 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-32 %s
242 // CHECK-BE-NAN64-32: "-internal-isystem"
243 // CHECK-BE-NAN64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
244 // CHECK-BE-NAN64-32: "-internal-isystem"
245 // CHECK-BE-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/fp64/nan2008"
246 // CHECK-BE-NAN64-32: "-internal-isystem"
247 // CHECK-BE-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
248 // CHECK-BE-NAN64-32: "-internal-externc-isystem"
249 // CHECK-BE-NAN64-32: "[[TC]]/include"
250 // CHECK-BE-NAN64-32: "-internal-externc-isystem"
251 // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/usr/include"
252 // CHECK-BE-NAN64-32: "{{.*}}ld{{(.exe)?}}"
253 // CHECK-BE-NAN64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/fp64/nan2008"
254 // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/mips32/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
255 // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/mips32/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
256 // CHECK-BE-NAN64-32: "[[TC]]/mips32/fp64/nan2008{{/|\\\\}}crtbegin.o"
257 // CHECK-BE-NAN64-32: "-L[[TC]]/mips32/fp64/nan2008"
258 // CHECK-BE-NAN64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/fp64/nan2008"
259 // CHECK-BE-NAN64-32: "-L[[TC]]/../../../../sysroot/mips32/fp64/nan2008/usr/lib/../lib"
260 // CHECK-BE-NAN64-32: "[[TC]]/mips32/fp64/nan2008{{/|\\\\}}crtend.o"
261 // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/mips32/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
262 //
263 // = Big-endian, mips32r2, hard float
264 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
265 // RUN:     --target=mips-linux-gnu -mips32r2 -mhard-float \
266 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
267 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-32R2 %s
268 // CHECK-BE-HF-32R2: "-internal-isystem"
269 // CHECK-BE-HF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
270 // CHECK-BE-HF-32R2: "-internal-isystem"
271 // CHECK-BE-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu"
272 // CHECK-BE-HF-32R2: "-internal-isystem"
273 // CHECK-BE-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
274 // CHECK-BE-HF-32R2: "-internal-externc-isystem"
275 // CHECK-BE-HF-32R2: "[[TC]]/include"
276 // CHECK-BE-HF-32R2: "-internal-externc-isystem"
277 // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/include"
278 // CHECK-BE-HF-32R2: "{{.*}}ld{{(.exe)?}}"
279 // CHECK-BE-HF-32R2: "--sysroot=[[TC]]/../../../../sysroot"
280 // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crt1.o"
281 // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crti.o"
282 // CHECK-BE-HF-32R2: "[[TC]]{{/|\\\\}}crtbegin.o"
283 // CHECK-BE-HF-32R2: "-L[[TC]]"
284 // CHECK-BE-HF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib"
285 // CHECK-BE-HF-32R2: "-L[[TC]]/../../../../sysroot/usr/lib/../lib"
286 // CHECK-BE-HF-32R2: "[[TC]]{{/|\\\\}}crtend.o"
287 // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o"
288 //
289 // = Big-endian, mips32r2, fp64, hard float
290 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
291 // RUN:     --target=mips-linux-gnu -mips32r2 -mfp64 -mhard-float \
292 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
293 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-32R2 %s
294 // CHECK-BE-HF64-32R2: "-internal-isystem"
295 // CHECK-BE-HF64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
296 // CHECK-BE-HF64-32R2: "-internal-isystem"
297 // CHECK-BE-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/fp64"
298 // CHECK-BE-HF64-32R2: "-internal-isystem"
299 // CHECK-BE-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
300 // CHECK-BE-HF64-32R2: "-internal-externc-isystem"
301 // CHECK-BE-HF64-32R2: "[[TC]]/include"
302 // CHECK-BE-HF64-32R2: "-internal-externc-isystem"
303 // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/usr/include"
304 // CHECK-BE-HF64-32R2: "{{.*}}ld{{(.exe)?}}"
305 // CHECK-BE-HF64-32R2: "--sysroot=[[TC]]/../../../../sysroot/fp64"
306 // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
307 // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
308 // CHECK-BE-HF64-32R2: "[[TC]]/fp64{{/|\\\\}}crtbegin.o"
309 // CHECK-BE-HF64-32R2: "-L[[TC]]/fp64"
310 // CHECK-BE-HF64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/fp64"
311 // CHECK-BE-HF64-32R2: "-L[[TC]]/../../../../sysroot/fp64/usr/lib/../lib"
312 // CHECK-BE-HF64-32R2: "[[TC]]/fp64{{/|\\\\}}crtend.o"
313 // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
314 //
315 // = Big-endian, mips32r2, soft float
316 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
317 // RUN:     --target=mips-linux-gnu -mips32r2 -msoft-float \
318 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
319 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-32R2 %s
320 // CHECK-BE-SF-32R2: "-internal-isystem"
321 // CHECK-BE-SF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
322 // CHECK-BE-SF-32R2: "-internal-isystem"
323 // CHECK-BE-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/sof"
324 // CHECK-BE-SF-32R2: "-internal-isystem"
325 // CHECK-BE-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
326 // CHECK-BE-SF-32R2: "-internal-externc-isystem"
327 // CHECK-BE-SF-32R2: "[[TC]]/include"
328 // CHECK-BE-SF-32R2: "-internal-externc-isystem"
329 // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/usr/include"
330 // CHECK-BE-SF-32R2: "{{.*}}ld{{(.exe)?}}"
331 // CHECK-BE-SF-32R2: "--sysroot=[[TC]]/../../../../sysroot/sof"
332 // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
333 // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/sof/usr/lib/../lib{{/|\\\\}}crti.o"
334 // CHECK-BE-SF-32R2: "[[TC]]/sof{{/|\\\\}}crtbegin.o"
335 // CHECK-BE-SF-32R2: "-L[[TC]]/sof"
336 // CHECK-BE-SF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/sof"
337 // CHECK-BE-SF-32R2: "-L[[TC]]/../../../../sysroot/sof/usr/lib/../lib"
338 // CHECK-BE-SF-32R2: "[[TC]]/sof{{/|\\\\}}crtend.o"
339 // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
340 //
341 // = Big-endian, mips32r2 / mips16, hard float
342 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
343 // RUN:     --target=mips-linux-gnu -mips32r2 -mips16 -mhard-float \
344 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
345 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-16R2 %s
346 // CHECK-BE-HF-16R2: "-internal-isystem"
347 // CHECK-BE-HF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
348 // CHECK-BE-HF-16R2: "-internal-isystem"
349 // CHECK-BE-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16"
350 // CHECK-BE-HF-16R2: "-internal-isystem"
351 // CHECK-BE-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
352 // CHECK-BE-HF-16R2: "-internal-externc-isystem"
353 // CHECK-BE-HF-16R2: "[[TC]]/include"
354 // CHECK-BE-HF-16R2: "-internal-externc-isystem"
355 // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/usr/include"
356 // CHECK-BE-HF-16R2: "{{.*}}ld{{(.exe)?}}"
357 // CHECK-BE-HF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16"
358 // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crt1.o"
359 // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crti.o"
360 // CHECK-BE-HF-16R2: "[[TC]]/mips16{{/|\\\\}}crtbegin.o"
361 // CHECK-BE-HF-16R2: "-L[[TC]]/mips16"
362 // CHECK-BE-HF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16"
363 // CHECK-BE-HF-16R2: "-L[[TC]]/../../../../sysroot/mips16/usr/lib/../lib"
364 // CHECK-BE-HF-16R2: "[[TC]]/mips16{{/|\\\\}}crtend.o"
365 // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crtn.o"
366 //
367 // = Big-endian, mips32r2 / mips16, fp64, hard float
368 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
369 // RUN:     --target=mips-linux-gnu -mips32r2 -mips16 -mfp64 -mhard-float \
370 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
371 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-16R2 %s
372 // CHECK-BE-HF64-16R2: "-internal-isystem"
373 // CHECK-BE-HF64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
374 // CHECK-BE-HF64-16R2: "-internal-isystem"
375 // CHECK-BE-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/fp64"
376 // CHECK-BE-HF64-16R2: "-internal-isystem"
377 // CHECK-BE-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
378 // CHECK-BE-HF64-16R2: "-internal-externc-isystem"
379 // CHECK-BE-HF64-16R2: "[[TC]]/include"
380 // CHECK-BE-HF64-16R2: "-internal-externc-isystem"
381 // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/usr/include"
382 // CHECK-BE-HF64-16R2: "{{.*}}ld{{(.exe)?}}"
383 // CHECK-BE-HF64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/fp64"
384 // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
385 // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
386 // CHECK-BE-HF64-16R2: "[[TC]]/mips16/fp64{{/|\\\\}}crtbegin.o"
387 // CHECK-BE-HF64-16R2: "-L[[TC]]/mips16/fp64"
388 // CHECK-BE-HF64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/fp64"
389 // CHECK-BE-HF64-16R2: "-L[[TC]]/../../../../sysroot/mips16/fp64/usr/lib/../lib"
390 // CHECK-BE-HF64-16R2: "[[TC]]/mips16/fp64{{/|\\\\}}crtend.o"
391 // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
392 //
393 // = Big-endian, mips32r2 / mips16, soft float
394 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
395 // RUN:     --target=mips-linux-gnu -mips32r2 -mips16 -msoft-float \
396 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
397 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-16R2 %s
398 // CHECK-BE-SF-16R2: "-internal-isystem"
399 // CHECK-BE-SF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
400 // CHECK-BE-SF-16R2: "-internal-isystem"
401 // CHECK-BE-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/sof"
402 // CHECK-BE-SF-16R2: "-internal-isystem"
403 // CHECK-BE-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
404 // CHECK-BE-SF-16R2: "-internal-externc-isystem"
405 // CHECK-BE-SF-16R2: "[[TC]]/include"
406 // CHECK-BE-SF-16R2: "-internal-externc-isystem"
407 // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/usr/include"
408 // CHECK-BE-SF-16R2: "{{.*}}ld{{(.exe)?}}"
409 // CHECK-BE-SF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/sof"
410 // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
411 // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib{{/|\\\\}}crti.o"
412 // CHECK-BE-SF-16R2: "[[TC]]/mips16/sof{{/|\\\\}}crtbegin.o"
413 // CHECK-BE-SF-16R2: "-L[[TC]]/mips16/sof"
414 // CHECK-BE-SF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/sof"
415 // CHECK-BE-SF-16R2: "-L[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib"
416 // CHECK-BE-SF-16R2: "[[TC]]/mips16/sof{{/|\\\\}}crtend.o"
417 // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
418 //
419 // = Big-endian, mips32r2 / mips16, nan2008
420 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
421 // RUN:     --target=mips-linux-gnu -mips32r2 -mips16 -mnan=2008 \
422 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
423 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-16R2 %s
424 // CHECK-BE-NAN-16R2: "-internal-isystem"
425 // CHECK-BE-NAN-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
426 // CHECK-BE-NAN-16R2: "-internal-isystem"
427 // CHECK-BE-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/nan2008"
428 // CHECK-BE-NAN-16R2: "-internal-isystem"
429 // CHECK-BE-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
430 // CHECK-BE-NAN-16R2: "-internal-externc-isystem"
431 // CHECK-BE-NAN-16R2: "[[TC]]/include"
432 // CHECK-BE-NAN-16R2: "-internal-externc-isystem"
433 // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/usr/include"
434 // CHECK-BE-NAN-16R2: "{{.*}}ld{{(.exe)?}}"
435 // CHECK-BE-NAN-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/nan2008"
436 // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
437 // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
438 // CHECK-BE-NAN-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtbegin.o"
439 // CHECK-BE-NAN-16R2: "-L[[TC]]/mips16/nan2008"
440 // CHECK-BE-NAN-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/nan2008"
441 // CHECK-BE-NAN-16R2: "-L[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib"
442 // CHECK-BE-NAN-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtend.o"
443 // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
444 //
445 // = Big-endian, mips32r2 / mips16, fp64, nan2008
446 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
447 // RUN:     --target=mips-linux-gnu -mips32r2 -mips16 -mfp64 -mnan=2008 \
448 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
449 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-16R2 %s
450 // CHECK-BE-NAN64-16R2: "-internal-isystem"
451 // CHECK-BE-NAN64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
452 // CHECK-BE-NAN64-16R2: "-internal-isystem"
453 // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/fp64/nan2008"
454 // CHECK-BE-NAN64-16R2: "-internal-isystem"
455 // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
456 // CHECK-BE-NAN64-16R2: "-internal-externc-isystem"
457 // CHECK-BE-NAN64-16R2: "[[TC]]/include"
458 // CHECK-BE-NAN64-16R2: "-internal-externc-isystem"
459 // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/usr/include"
460 // CHECK-BE-NAN64-16R2: "{{.*}}ld{{(.exe)?}}"
461 // CHECK-BE-NAN64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/fp64/nan2008"
462 // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
463 // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
464 // CHECK-BE-NAN64-16R2: "[[TC]]/mips16/fp64/nan2008{{/|\\\\}}crtbegin.o"
465 // CHECK-BE-NAN64-16R2: "-L[[TC]]/mips16/fp64/nan2008"
466 // CHECK-BE-NAN64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/fp64/nan2008"
467 // CHECK-BE-NAN64-16R2: "-L[[TC]]/../../../../sysroot/mips16/fp64/nan2008/usr/lib/../lib"
468 // CHECK-BE-NAN64-16R2: "[[TC]]/mips16/fp64/nan2008{{/|\\\\}}crtend.o"
469 // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
470 //
471 // = Big-endian, mips32r2, nan2008
472 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
473 // RUN:     --target=mips-linux-gnu -mips32r2 -mnan=2008 \
474 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
475 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-32R2 %s
476 // CHECK-BE-NAN-32R2: "-internal-isystem"
477 // CHECK-BE-NAN-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
478 // CHECK-BE-NAN-32R2: "-internal-isystem"
479 // CHECK-BE-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/nan2008"
480 // CHECK-BE-NAN-32R2: "-internal-isystem"
481 // CHECK-BE-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
482 // CHECK-BE-NAN-32R2: "-internal-externc-isystem"
483 // CHECK-BE-NAN-32R2: "[[TC]]/include"
484 // CHECK-BE-NAN-32R2: "-internal-externc-isystem"
485 // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/usr/include"
486 // CHECK-BE-NAN-32R2: "{{.*}}ld{{(.exe)?}}"
487 // CHECK-BE-NAN-32R2: "--sysroot=[[TC]]/../../../../sysroot/nan2008"
488 // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
489 // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
490 // CHECK-BE-NAN-32R2: "[[TC]]/nan2008{{/|\\\\}}crtbegin.o"
491 // CHECK-BE-NAN-32R2: "-L[[TC]]/nan2008"
492 // CHECK-BE-NAN-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/nan2008"
493 // CHECK-BE-NAN-32R2: "-L[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib"
494 // CHECK-BE-NAN-32R2: "[[TC]]/nan2008{{/|\\\\}}crtend.o"
495 // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
496 //
497 // = Big-endian, mips32r2, fp64, nan2008
498 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
499 // RUN:     --target=mips-linux-gnu -mips32r2 -mfp64 -mnan=2008 \
500 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
501 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-32R2 %s
502 // CHECK-BE-NAN64-32R2: "-internal-isystem"
503 // CHECK-BE-NAN64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
504 // CHECK-BE-NAN64-32R2: "-internal-isystem"
505 // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/fp64/nan2008"
506 // CHECK-BE-NAN64-32R2: "-internal-isystem"
507 // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
508 // CHECK-BE-NAN64-32R2: "-internal-externc-isystem"
509 // CHECK-BE-NAN64-32R2: "[[TC]]/include"
510 // CHECK-BE-NAN64-32R2: "-internal-externc-isystem"
511 // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/usr/include"
512 // CHECK-BE-NAN64-32R2: "{{.*}}ld{{(.exe)?}}"
513 // CHECK-BE-NAN64-32R2: "--sysroot=[[TC]]/../../../../sysroot/fp64/nan2008"
514 // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
515 // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
516 // CHECK-BE-NAN64-32R2: "[[TC]]/fp64/nan2008{{/|\\\\}}crtbegin.o"
517 // CHECK-BE-NAN64-32R2: "-L[[TC]]/fp64/nan2008"
518 // CHECK-BE-NAN64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/fp64/nan2008"
519 // CHECK-BE-NAN64-32R2: "-L[[TC]]/../../../../sysroot/fp64/nan2008/usr/lib/../lib"
520 // CHECK-BE-NAN64-32R2: "[[TC]]/fp64/nan2008{{/|\\\\}}crtend.o"
521 // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
522 //
523 // = Big-endian, micromips, hard float
524 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
525 // RUN:     --target=mips-linux-gnu -mmicromips -mhard-float \
526 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
527 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-MM %s
528 // CHECK-BE-HF-MM: "-internal-isystem"
529 // CHECK-BE-HF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
530 // CHECK-BE-HF-MM: "-internal-isystem"
531 // CHECK-BE-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips"
532 // CHECK-BE-HF-MM: "-internal-isystem"
533 // CHECK-BE-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
534 // CHECK-BE-HF-MM: "-internal-externc-isystem"
535 // CHECK-BE-HF-MM: "[[TC]]/include"
536 // CHECK-BE-HF-MM: "-internal-externc-isystem"
537 // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/usr/include"
538 // CHECK-BE-HF-MM: "{{.*}}ld{{(.exe)?}}"
539 // CHECK-BE-HF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips"
540 // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crt1.o"
541 // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crti.o"
542 // CHECK-BE-HF-MM: "[[TC]]/micromips{{/|\\\\}}crtbegin.o"
543 // CHECK-BE-HF-MM: "-L[[TC]]/micromips"
544 // CHECK-BE-HF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips"
545 // CHECK-BE-HF-MM: "-L[[TC]]/../../../../sysroot/micromips/usr/lib/../lib"
546 // CHECK-BE-HF-MM: "[[TC]]/micromips{{/|\\\\}}crtend.o"
547 // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crtn.o"
548 //
549 // = Big-endian, micromips, fp64, hard float
550 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
551 // RUN:     --target=mips-linux-gnu -mmicromips -mfp64 -mhard-float \
552 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
553 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-MM %s
554 // CHECK-BE-HF64-MM: "-internal-isystem"
555 // CHECK-BE-HF64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
556 // CHECK-BE-HF64-MM: "-internal-isystem"
557 // CHECK-BE-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/fp64"
558 // CHECK-BE-HF64-MM: "-internal-isystem"
559 // CHECK-BE-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
560 // CHECK-BE-HF64-MM: "-internal-externc-isystem"
561 // CHECK-BE-HF64-MM: "[[TC]]/include"
562 // CHECK-BE-HF64-MM: "-internal-externc-isystem"
563 // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/usr/include"
564 // CHECK-BE-HF64-MM: "{{.*}}ld{{(.exe)?}}"
565 // CHECK-BE-HF64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/fp64"
566 // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/micromips/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
567 // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/micromips/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
568 // CHECK-BE-HF64-MM: "[[TC]]/micromips/fp64{{/|\\\\}}crtbegin.o"
569 // CHECK-BE-HF64-MM: "-L[[TC]]/micromips/fp64"
570 // CHECK-BE-HF64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/fp64"
571 // CHECK-BE-HF64-MM: "-L[[TC]]/../../../../sysroot/micromips/fp64/usr/lib/../lib"
572 // CHECK-BE-HF64-MM: "[[TC]]/micromips/fp64{{/|\\\\}}crtend.o"
573 // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/micromips/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
574 //
575 // = Big-endian, micromips, soft float
576 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
577 // RUN:     --target=mips-linux-gnu -mmicromips -msoft-float \
578 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
579 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-MM %s
580 // CHECK-BE-SF-MM: "-internal-isystem"
581 // CHECK-BE-SF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
582 // CHECK-BE-SF-MM: "-internal-isystem"
583 // CHECK-BE-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/sof"
584 // CHECK-BE-SF-MM: "-internal-isystem"
585 // CHECK-BE-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
586 // CHECK-BE-SF-MM: "-internal-externc-isystem"
587 // CHECK-BE-SF-MM: "[[TC]]/include"
588 // CHECK-BE-SF-MM: "-internal-externc-isystem"
589 // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/usr/include"
590 // CHECK-BE-SF-MM: "{{.*}}ld{{(.exe)?}}"
591 // CHECK-BE-SF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/sof"
592 // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
593 // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib{{/|\\\\}}crti.o"
594 // CHECK-BE-SF-MM: "[[TC]]/micromips/sof{{/|\\\\}}crtbegin.o"
595 // CHECK-BE-SF-MM: "-L[[TC]]/micromips/sof"
596 // CHECK-BE-SF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/sof"
597 // CHECK-BE-SF-MM: "-L[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib"
598 // CHECK-BE-SF-MM: "[[TC]]/micromips/sof{{/|\\\\}}crtend.o"
599 // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
600 //
601 // = Big-endian, micromips, nan2008
602 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
603 // RUN:     --target=mips-linux-gnu -mmicromips -mnan=2008 \
604 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
605 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-MM %s
606 // CHECK-BE-NAN-MM: "-internal-isystem"
607 // CHECK-BE-NAN-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
608 // CHECK-BE-NAN-MM: "-internal-isystem"
609 // CHECK-BE-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/nan2008"
610 // CHECK-BE-NAN-MM: "-internal-isystem"
611 // CHECK-BE-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
612 // CHECK-BE-NAN-MM: "-internal-externc-isystem"
613 // CHECK-BE-NAN-MM: "[[TC]]/include"
614 // CHECK-BE-NAN-MM: "-internal-externc-isystem"
615 // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/usr/include"
616 // CHECK-BE-NAN-MM: "{{.*}}ld{{(.exe)?}}"
617 // CHECK-BE-NAN-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/nan2008"
618 // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
619 // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
620 // CHECK-BE-NAN-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtbegin.o"
621 // CHECK-BE-NAN-MM: "-L[[TC]]/micromips/nan2008"
622 // CHECK-BE-NAN-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/nan2008"
623 // CHECK-BE-NAN-MM: "-L[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib"
624 // CHECK-BE-NAN-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtend.o"
625 // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
626 //
627 // = Big-endian, micromips, fp64, nan2008
628 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
629 // RUN:     --target=mips-linux-gnu -mmicromips -mfp64 -mnan=2008 \
630 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
631 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-MM %s
632 // CHECK-BE-NAN64-MM: "-internal-isystem"
633 // CHECK-BE-NAN64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
634 // CHECK-BE-NAN64-MM: "-internal-isystem"
635 // CHECK-BE-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/fp64/nan2008"
636 // CHECK-BE-NAN64-MM: "-internal-isystem"
637 // CHECK-BE-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
638 // CHECK-BE-NAN64-MM: "-internal-externc-isystem"
639 // CHECK-BE-NAN64-MM: "[[TC]]/include"
640 // CHECK-BE-NAN64-MM: "-internal-externc-isystem"
641 // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/usr/include"
642 // CHECK-BE-NAN64-MM: "{{.*}}ld{{(.exe)?}}"
643 // CHECK-BE-NAN64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/fp64/nan2008"
644 // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
645 // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
646 // CHECK-BE-NAN64-MM: "[[TC]]/micromips/fp64/nan2008{{/|\\\\}}crtbegin.o"
647 // CHECK-BE-NAN64-MM: "-L[[TC]]/micromips/fp64/nan2008"
648 // CHECK-BE-NAN64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/fp64/nan2008"
649 // CHECK-BE-NAN64-MM: "-L[[TC]]/../../../../sysroot/micromips/fp64/nan2008/usr/lib/../lib"
650 // CHECK-BE-NAN64-MM: "[[TC]]/micromips/fp64/nan2008{{/|\\\\}}crtend.o"
651 // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
652 //
653 // = Big-endian, mips64, ABI n32, hard float
654 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
655 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=n32 -mhard-float \
656 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
657 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-64-N32 %s
658 // CHECK-BE-HF-64-N32: "-internal-isystem"
659 // CHECK-BE-HF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
660 // CHECK-BE-HF-64-N32: "-internal-isystem"
661 // CHECK-BE-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64"
662 // CHECK-BE-HF-64-N32: "-internal-isystem"
663 // CHECK-BE-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
664 // CHECK-BE-HF-64-N32: "-internal-externc-isystem"
665 // CHECK-BE-HF-64-N32: "[[TC]]/include"
666 // CHECK-BE-HF-64-N32: "-internal-externc-isystem"
667 // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/usr/include"
668 // CHECK-BE-HF-64-N32: "{{.*}}ld{{(.exe)?}}"
669 // CHECK-BE-HF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64"
670 // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crt1.o"
671 // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crti.o"
672 // CHECK-BE-HF-64-N32: "[[TC]]/mips64{{/|\\\\}}crtbegin.o"
673 // CHECK-BE-HF-64-N32: "-L[[TC]]/mips64"
674 // CHECK-BE-HF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64"
675 // CHECK-BE-HF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/usr/lib"
676 // CHECK-BE-HF-64-N32: "[[TC]]/mips64{{/|\\\\}}crtend.o"
677 // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crtn.o"
678 //
679 // = Big-endian, mips64, ABI n32, fp64, hard float
680 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
681 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=n32 -mfp64 -mhard-float \
682 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
683 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-64-N32 %s
684 // CHECK-BE-HF64-64-N32: "-internal-isystem"
685 // CHECK-BE-HF64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
686 // CHECK-BE-HF64-64-N32: "-internal-isystem"
687 // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/fp64"
688 // CHECK-BE-HF64-64-N32: "-internal-isystem"
689 // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
690 // CHECK-BE-HF64-64-N32: "-internal-externc-isystem"
691 // CHECK-BE-HF64-64-N32: "[[TC]]/include"
692 // CHECK-BE-HF64-64-N32: "-internal-externc-isystem"
693 // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/usr/include"
694 // CHECK-BE-HF64-64-N32: "{{.*}}ld{{(.exe)?}}"
695 // CHECK-BE-HF64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/fp64"
696 // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/fp64/usr/lib{{/|\\\\}}crt1.o"
697 // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/fp64/usr/lib{{/|\\\\}}crti.o"
698 // CHECK-BE-HF64-64-N32: "[[TC]]/mips64/fp64{{/|\\\\}}crtbegin.o"
699 // CHECK-BE-HF64-64-N32: "-L[[TC]]/mips64/fp64"
700 // CHECK-BE-HF64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/fp64"
701 // CHECK-BE-HF64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/fp64/usr/lib"
702 // CHECK-BE-HF64-64-N32: "[[TC]]/mips64/fp64{{/|\\\\}}crtend.o"
703 // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/fp64/usr/lib{{/|\\\\}}crtn.o"
704 //
705 // = Big-endian, mips64, ABI n32, soft float
706 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
707 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=n32 -msoft-float \
708 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
709 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-64-N32 %s
710 // CHECK-BE-SF-64-N32: "-internal-isystem"
711 // CHECK-BE-SF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
712 // CHECK-BE-SF-64-N32: "-internal-isystem"
713 // CHECK-BE-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/sof"
714 // CHECK-BE-SF-64-N32: "-internal-isystem"
715 // CHECK-BE-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
716 // CHECK-BE-SF-64-N32: "-internal-externc-isystem"
717 // CHECK-BE-SF-64-N32: "[[TC]]/include"
718 // CHECK-BE-SF-64-N32: "-internal-externc-isystem"
719 // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/usr/include"
720 // CHECK-BE-SF-64-N32: "{{.*}}ld{{(.exe)?}}"
721 // CHECK-BE-SF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/sof"
722 // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/sof/usr/lib{{/|\\\\}}crt1.o"
723 // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/sof/usr/lib{{/|\\\\}}crti.o"
724 // CHECK-BE-SF-64-N32: "[[TC]]/mips64/sof{{/|\\\\}}crtbegin.o"
725 // CHECK-BE-SF-64-N32: "-L[[TC]]/mips64/sof"
726 // CHECK-BE-SF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/sof"
727 // CHECK-BE-SF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/sof/usr/lib"
728 // CHECK-BE-SF-64-N32: "[[TC]]/mips64/sof{{/|\\\\}}crtend.o"
729 // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/sof/usr/lib{{/|\\\\}}crtn.o"
730 //
731 // = Big-endian, mips64, ABI n32, nan2008
732 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
733 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=n32 -mnan=2008 \
734 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
735 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-64-N32 %s
736 // CHECK-BE-NAN-64-N32: "-internal-isystem"
737 // CHECK-BE-NAN-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
738 // CHECK-BE-NAN-64-N32: "-internal-isystem"
739 // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/nan2008"
740 // CHECK-BE-NAN-64-N32: "-internal-isystem"
741 // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
742 // CHECK-BE-NAN-64-N32: "-internal-externc-isystem"
743 // CHECK-BE-NAN-64-N32: "[[TC]]/include"
744 // CHECK-BE-NAN-64-N32: "-internal-externc-isystem"
745 // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/usr/include"
746 // CHECK-BE-NAN-64-N32: "{{.*}}ld{{(.exe)?}}"
747 // CHECK-BE-NAN-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/nan2008"
748 // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crt1.o"
749 // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crti.o"
750 // CHECK-BE-NAN-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtbegin.o"
751 // CHECK-BE-NAN-64-N32: "-L[[TC]]/mips64/nan2008"
752 // CHECK-BE-NAN-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/nan2008"
753 // CHECK-BE-NAN-64-N32: "-L[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib"
754 // CHECK-BE-NAN-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtend.o"
755 // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crtn.o"
756 //
757 // = Big-endian, mips64, ABI n32, fp64, nan2008
758 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
759 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=n32 -mfp64 -mnan=2008 \
760 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
761 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-64-N32 %s
762 // CHECK-BE-NAN64-64-N32: "-internal-isystem"
763 // CHECK-BE-NAN64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
764 // CHECK-BE-NAN64-64-N32: "-internal-isystem"
765 // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/fp64/nan2008"
766 // CHECK-BE-NAN64-64-N32: "-internal-isystem"
767 // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
768 // CHECK-BE-NAN64-64-N32: "-internal-externc-isystem"
769 // CHECK-BE-NAN64-64-N32: "[[TC]]/include"
770 // CHECK-BE-NAN64-64-N32: "-internal-externc-isystem"
771 // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/usr/include"
772 // CHECK-BE-NAN64-64-N32: "{{.*}}ld{{(.exe)?}}"
773 // CHECK-BE-NAN64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/fp64/nan2008"
774 // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
775 // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
776 // CHECK-BE-NAN64-64-N32: "[[TC]]/mips64/fp64/nan2008{{/|\\\\}}crtbegin.o"
777 // CHECK-BE-NAN64-64-N32: "-L[[TC]]/mips64/fp64/nan2008"
778 // CHECK-BE-NAN64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/fp64/nan2008"
779 // CHECK-BE-NAN64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/fp64/nan2008/usr/lib"
780 // CHECK-BE-NAN64-64-N32: "[[TC]]/mips64/fp64/nan2008{{/|\\\\}}crtend.o"
781 // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
782 //
783 // = Big-endian, mips64, ABI 64, hard float
784 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
785 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=64 -mhard-float \
786 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
787 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-64-64 %s
788 // CHECK-BE-HF-64-64: "-internal-isystem"
789 // CHECK-BE-HF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
790 // CHECK-BE-HF-64-64: "-internal-isystem"
791 // CHECK-BE-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64"
792 // CHECK-BE-HF-64-64: "-internal-isystem"
793 // CHECK-BE-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
794 // CHECK-BE-HF-64-64: "-internal-externc-isystem"
795 // CHECK-BE-HF-64-64: "[[TC]]/include"
796 // CHECK-BE-HF-64-64: "-internal-externc-isystem"
797 // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/usr/include"
798 // CHECK-BE-HF-64-64: "{{.*}}ld{{(.exe)?}}"
799 // CHECK-BE-HF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64"
800 // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crt1.o"
801 // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crti.o"
802 // CHECK-BE-HF-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtbegin.o"
803 // CHECK-BE-HF-64-64: "-L[[TC]]/mips64/64"
804 // CHECK-BE-HF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64"
805 // CHECK-BE-HF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/usr/lib"
806 // CHECK-BE-HF-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtend.o"
807 // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crtn.o"
808 //
809 // = Big-endian, mips64, ABI 64, fp64, hard float
810 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
811 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=64 -mfp64 -mhard-float \
812 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
813 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-64-64 %s
814 // CHECK-BE-HF64-64-64: "-internal-isystem"
815 // CHECK-BE-HF64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
816 // CHECK-BE-HF64-64-64: "-internal-isystem"
817 // CHECK-BE-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/fp64"
818 // CHECK-BE-HF64-64-64: "-internal-isystem"
819 // CHECK-BE-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
820 // CHECK-BE-HF64-64-64: "-internal-externc-isystem"
821 // CHECK-BE-HF64-64-64: "[[TC]]/include"
822 // CHECK-BE-HF64-64-64: "-internal-externc-isystem"
823 // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/usr/include"
824 // CHECK-BE-HF64-64-64: "{{.*}}ld{{(.exe)?}}"
825 // CHECK-BE-HF64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/fp64"
826 // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/fp64/usr/lib{{/|\\\\}}crt1.o"
827 // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/fp64/usr/lib{{/|\\\\}}crti.o"
828 // CHECK-BE-HF64-64-64: "[[TC]]/mips64/64/fp64{{/|\\\\}}crtbegin.o"
829 // CHECK-BE-HF64-64-64: "-L[[TC]]/mips64/64/fp64"
830 // CHECK-BE-HF64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/fp64"
831 // CHECK-BE-HF64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/fp64/usr/lib"
832 // CHECK-BE-HF64-64-64: "[[TC]]/mips64/64/fp64{{/|\\\\}}crtend.o"
833 // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/fp64/usr/lib{{/|\\\\}}crtn.o"
834 //
835 // = Big-endian, mips64, ABI 64, soft float
836 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
837 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=64 -msoft-float \
838 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
839 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-64-64 %s
840 // CHECK-BE-SF-64-64: "-internal-isystem"
841 // CHECK-BE-SF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
842 // CHECK-BE-SF-64-64: "-internal-isystem"
843 // CHECK-BE-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/sof"
844 // CHECK-BE-SF-64-64: "-internal-isystem"
845 // CHECK-BE-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
846 // CHECK-BE-SF-64-64: "-internal-externc-isystem"
847 // CHECK-BE-SF-64-64: "[[TC]]/include"
848 // CHECK-BE-SF-64-64: "-internal-externc-isystem"
849 // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/usr/include"
850 // CHECK-BE-SF-64-64: "{{.*}}ld{{(.exe)?}}"
851 // CHECK-BE-SF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/sof"
852 // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib{{/|\\\\}}crt1.o"
853 // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib{{/|\\\\}}crti.o"
854 // CHECK-BE-SF-64-64: "[[TC]]/mips64/64/sof{{/|\\\\}}crtbegin.o"
855 // CHECK-BE-SF-64-64: "-L[[TC]]/mips64/64/sof"
856 // CHECK-BE-SF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/sof"
857 // CHECK-BE-SF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib"
858 // CHECK-BE-SF-64-64: "[[TC]]/mips64/64/sof{{/|\\\\}}crtend.o"
859 // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib{{/|\\\\}}crtn.o"
860 //
861 // = Big-endian, mips64, ABI 64, nan2008
862 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
863 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=64 -mnan=2008 \
864 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
865 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-64-64 %s
866 // CHECK-BE-NAN-64-64: "-internal-isystem"
867 // CHECK-BE-NAN-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
868 // CHECK-BE-NAN-64-64: "-internal-isystem"
869 // CHECK-BE-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/nan2008"
870 // CHECK-BE-NAN-64-64: "-internal-isystem"
871 // CHECK-BE-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
872 // CHECK-BE-NAN-64-64: "-internal-externc-isystem"
873 // CHECK-BE-NAN-64-64: "[[TC]]/include"
874 // CHECK-BE-NAN-64-64: "-internal-externc-isystem"
875 // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/usr/include"
876 // CHECK-BE-NAN-64-64: "{{.*}}ld{{(.exe)?}}"
877 // CHECK-BE-NAN-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/nan2008"
878 // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crt1.o"
879 // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crti.o"
880 // CHECK-BE-NAN-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtbegin.o"
881 // CHECK-BE-NAN-64-64: "-L[[TC]]/mips64/64/nan2008"
882 // CHECK-BE-NAN-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/nan2008"
883 // CHECK-BE-NAN-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib"
884 // CHECK-BE-NAN-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtend.o"
885 // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crtn.o"
886 //
887 // = Big-endian, mips64, ABI 64, fp64, nan2008
888 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
889 // RUN:     --target=mips64-linux-gnu -mips64 -mabi=64 -mfp64 -mnan=2008 \
890 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
891 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-64-64 %s
892 // CHECK-BE-NAN64-64-64: "-internal-isystem"
893 // CHECK-BE-NAN64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
894 // CHECK-BE-NAN64-64-64: "-internal-isystem"
895 // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/fp64/nan2008"
896 // CHECK-BE-NAN64-64-64: "-internal-isystem"
897 // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
898 // CHECK-BE-NAN64-64-64: "-internal-externc-isystem"
899 // CHECK-BE-NAN64-64-64: "[[TC]]/include"
900 // CHECK-BE-NAN64-64-64: "-internal-externc-isystem"
901 // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/usr/include"
902 // CHECK-BE-NAN64-64-64: "{{.*}}ld{{(.exe)?}}"
903 // CHECK-BE-NAN64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/fp64/nan2008"
904 // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
905 // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
906 // CHECK-BE-NAN64-64-64: "[[TC]]/mips64/64/fp64/nan2008{{/|\\\\}}crtbegin.o"
907 // CHECK-BE-NAN64-64-64: "-L[[TC]]/mips64/64/fp64/nan2008"
908 // CHECK-BE-NAN64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/fp64/nan2008"
909 // CHECK-BE-NAN64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/fp64/nan2008/usr/lib"
910 // CHECK-BE-NAN64-64-64: "[[TC]]/mips64/64/fp64/nan2008{{/|\\\\}}crtend.o"
911 // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
912 //
913 // = Big-endian, mips64r2, ABI n32, hard float
914 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
915 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=n32 -mhard-float \
916 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
917 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-64R2-N32 %s
918 // CHECK-BE-HF-64R2-N32: "-internal-isystem"
919 // CHECK-BE-HF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
920 // CHECK-BE-HF-64R2-N32: "-internal-isystem"
921 // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2"
922 // CHECK-BE-HF-64R2-N32: "-internal-isystem"
923 // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
924 // CHECK-BE-HF-64R2-N32: "-internal-externc-isystem"
925 // CHECK-BE-HF-64R2-N32: "[[TC]]/include"
926 // CHECK-BE-HF-64R2-N32: "-internal-externc-isystem"
927 // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
928 // CHECK-BE-HF-64R2-N32: "{{.*}}ld{{(.exe)?}}"
929 // CHECK-BE-HF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2"
930 // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crt1.o"
931 // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crti.o"
932 // CHECK-BE-HF-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtbegin.o"
933 // CHECK-BE-HF-64R2-N32: "-L[[TC]]/mips64r2"
934 // CHECK-BE-HF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2"
935 // CHECK-BE-HF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/usr/lib"
936 // CHECK-BE-HF-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtend.o"
937 // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crtn.o"
938 //
939 // = Big-endian, mips64r2, ABI n32, fp64, hard float
940 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
941 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mhard-float \
942 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
943 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-64R2-N32 %s
944 // CHECK-BE-HF64-64R2-N32: "-internal-isystem"
945 // CHECK-BE-HF64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
946 // CHECK-BE-HF64-64R2-N32: "-internal-isystem"
947 // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/fp64"
948 // CHECK-BE-HF64-64R2-N32: "-internal-isystem"
949 // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
950 // CHECK-BE-HF64-64R2-N32: "-internal-externc-isystem"
951 // CHECK-BE-HF64-64R2-N32: "[[TC]]/include"
952 // CHECK-BE-HF64-64R2-N32: "-internal-externc-isystem"
953 // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
954 // CHECK-BE-HF64-64R2-N32: "{{.*}}ld{{(.exe)?}}"
955 // CHECK-BE-HF64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/fp64"
956 // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/fp64/usr/lib{{/|\\\\}}crt1.o"
957 // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/fp64/usr/lib{{/|\\\\}}crti.o"
958 // CHECK-BE-HF64-64R2-N32: "[[TC]]/mips64r2/fp64{{/|\\\\}}crtbegin.o"
959 // CHECK-BE-HF64-64R2-N32: "-L[[TC]]/mips64r2/fp64"
960 // CHECK-BE-HF64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/fp64"
961 // CHECK-BE-HF64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/fp64/usr/lib"
962 // CHECK-BE-HF64-64R2-N32: "[[TC]]/mips64r2/fp64{{/|\\\\}}crtend.o"
963 // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/fp64/usr/lib{{/|\\\\}}crtn.o"
964 //
965 // = Big-endian, mips64r2, ABI n32, soft float
966 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
967 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=n32 -msoft-float \
968 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
969 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-64R2-N32 %s
970 // CHECK-BE-SF-64R2-N32: "-internal-isystem"
971 // CHECK-BE-SF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
972 // CHECK-BE-SF-64R2-N32: "-internal-isystem"
973 // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/sof"
974 // CHECK-BE-SF-64R2-N32: "-internal-isystem"
975 // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
976 // CHECK-BE-SF-64R2-N32: "-internal-externc-isystem"
977 // CHECK-BE-SF-64R2-N32: "[[TC]]/include"
978 // CHECK-BE-SF-64R2-N32: "-internal-externc-isystem"
979 // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
980 // CHECK-BE-SF-64R2-N32: "{{.*}}ld{{(.exe)?}}"
981 // CHECK-BE-SF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/sof"
982 // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib{{/|\\\\}}crt1.o"
983 // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib{{/|\\\\}}crti.o"
984 // CHECK-BE-SF-64R2-N32: "[[TC]]/mips64r2/sof{{/|\\\\}}crtbegin.o"
985 // CHECK-BE-SF-64R2-N32: "-L[[TC]]/mips64r2/sof"
986 // CHECK-BE-SF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/sof"
987 // CHECK-BE-SF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib"
988 // CHECK-BE-SF-64R2-N32: "[[TC]]/mips64r2/sof{{/|\\\\}}crtend.o"
989 // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib{{/|\\\\}}crtn.o"
990 //
991 // = Big-endian, mips64r2, ABI n32, nan2008
992 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
993 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=n32 -mnan=2008 \
994 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
995 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-64R2-N32 %s
996 // CHECK-BE-NAN-64R2-N32: "-internal-isystem"
997 // CHECK-BE-NAN-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
998 // CHECK-BE-NAN-64R2-N32: "-internal-isystem"
999 // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/nan2008"
1000 // CHECK-BE-NAN-64R2-N32: "-internal-isystem"
1001 // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1002 // CHECK-BE-NAN-64R2-N32: "-internal-externc-isystem"
1003 // CHECK-BE-NAN-64R2-N32: "[[TC]]/include"
1004 // CHECK-BE-NAN-64R2-N32: "-internal-externc-isystem"
1005 // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
1006 // CHECK-BE-NAN-64R2-N32: "{{.*}}ld{{(.exe)?}}"
1007 // CHECK-BE-NAN-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/nan2008"
1008 // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crt1.o"
1009 // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crti.o"
1010 // CHECK-BE-NAN-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtbegin.o"
1011 // CHECK-BE-NAN-64R2-N32: "-L[[TC]]/mips64r2/nan2008"
1012 // CHECK-BE-NAN-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/nan2008"
1013 // CHECK-BE-NAN-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib"
1014 // CHECK-BE-NAN-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtend.o"
1015 // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crtn.o"
1016 //
1017 // = Big-endian, mips64r2, ABI n32, fp64, nan2008
1018 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1019 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mnan=2008 \
1020 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1021 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-64R2-N32 %s
1022 // CHECK-BE-NAN64-64R2-N32: "-internal-isystem"
1023 // CHECK-BE-NAN64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1024 // CHECK-BE-NAN64-64R2-N32: "-internal-isystem"
1025 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/fp64/nan2008"
1026 // CHECK-BE-NAN64-64R2-N32: "-internal-isystem"
1027 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1028 // CHECK-BE-NAN64-64R2-N32: "-internal-externc-isystem"
1029 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/include"
1030 // CHECK-BE-NAN64-64R2-N32: "-internal-externc-isystem"
1031 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
1032 // CHECK-BE-NAN64-64R2-N32: "{{.*}}ld{{(.exe)?}}"
1033 // CHECK-BE-NAN64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/fp64/nan2008"
1034 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
1035 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
1036 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/mips64r2/fp64/nan2008{{/|\\\\}}crtbegin.o"
1037 // CHECK-BE-NAN64-64R2-N32: "-L[[TC]]/mips64r2/fp64/nan2008"
1038 // CHECK-BE-NAN64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/fp64/nan2008"
1039 // CHECK-BE-NAN64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/fp64/nan2008/usr/lib"
1040 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/mips64r2/fp64/nan2008{{/|\\\\}}crtend.o"
1041 // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
1042 //
1043 // = Big-endian, mips64r2, ABI 64, hard float
1044 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1045 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=64 -mhard-float \
1046 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1047 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF-64R2-64 %s
1048 // CHECK-BE-HF-64R2-64: "-internal-isystem"
1049 // CHECK-BE-HF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1050 // CHECK-BE-HF-64R2-64: "-internal-isystem"
1051 // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64"
1052 // CHECK-BE-HF-64R2-64: "-internal-isystem"
1053 // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1054 // CHECK-BE-HF-64R2-64: "-internal-externc-isystem"
1055 // CHECK-BE-HF-64R2-64: "[[TC]]/include"
1056 // CHECK-BE-HF-64R2-64: "-internal-externc-isystem"
1057 // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
1058 // CHECK-BE-HF-64R2-64: "{{.*}}ld{{(.exe)?}}"
1059 // CHECK-BE-HF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64"
1060 // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crt1.o"
1061 // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crti.o"
1062 // CHECK-BE-HF-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtbegin.o"
1063 // CHECK-BE-HF-64R2-64: "-L[[TC]]/mips64r2/64"
1064 // CHECK-BE-HF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64"
1065 // CHECK-BE-HF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib"
1066 // CHECK-BE-HF-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o"
1067 // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o"
1068 //
1069 // = Big-endian, mips64r2, ABI 64, fp64, hard float
1070 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1071 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=64 -mfp64 -mhard-float \
1072 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1073 // RUN:   | FileCheck --check-prefix=CHECK-BE-HF64-64R2-64 %s
1074 // CHECK-BE-HF64-64R2-64: "-internal-isystem"
1075 // CHECK-BE-HF64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1076 // CHECK-BE-HF64-64R2-64: "-internal-isystem"
1077 // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/fp64"
1078 // CHECK-BE-HF64-64R2-64: "-internal-isystem"
1079 // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1080 // CHECK-BE-HF64-64R2-64: "-internal-externc-isystem"
1081 // CHECK-BE-HF64-64R2-64: "[[TC]]/include"
1082 // CHECK-BE-HF64-64R2-64: "-internal-externc-isystem"
1083 // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
1084 // CHECK-BE-HF64-64R2-64: "{{.*}}ld{{(.exe)?}}"
1085 // CHECK-BE-HF64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/fp64"
1086 // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/fp64/usr/lib{{/|\\\\}}crt1.o"
1087 // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/fp64/usr/lib{{/|\\\\}}crti.o"
1088 // CHECK-BE-HF64-64R2-64: "[[TC]]/mips64r2/64/fp64{{/|\\\\}}crtbegin.o"
1089 // CHECK-BE-HF64-64R2-64: "-L[[TC]]/mips64r2/64/fp64"
1090 // CHECK-BE-HF64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/fp64"
1091 // CHECK-BE-HF64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/fp64/usr/lib"
1092 // CHECK-BE-HF64-64R2-64: "[[TC]]/mips64r2/64/fp64{{/|\\\\}}crtend.o"
1093 // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/fp64/usr/lib{{/|\\\\}}crtn.o"
1094 //
1095 // = Big-endian, mips64r2, ABI 64, soft float
1096 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1097 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=64 -msoft-float \
1098 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1099 // RUN:   | FileCheck --check-prefix=CHECK-BE-SF-64R2-64 %s
1100 // CHECK-BE-SF-64R2-64: "-internal-isystem"
1101 // CHECK-BE-SF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1102 // CHECK-BE-SF-64R2-64: "-internal-isystem"
1103 // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/sof"
1104 // CHECK-BE-SF-64R2-64: "-internal-isystem"
1105 // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1106 // CHECK-BE-SF-64R2-64: "-internal-externc-isystem"
1107 // CHECK-BE-SF-64R2-64: "[[TC]]/include"
1108 // CHECK-BE-SF-64R2-64: "-internal-externc-isystem"
1109 // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
1110 // CHECK-BE-SF-64R2-64: "{{.*}}ld{{(.exe)?}}"
1111 // CHECK-BE-SF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/sof"
1112 // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib{{/|\\\\}}crt1.o"
1113 // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib{{/|\\\\}}crti.o"
1114 // CHECK-BE-SF-64R2-64: "[[TC]]/mips64r2/64/sof{{/|\\\\}}crtbegin.o"
1115 // CHECK-BE-SF-64R2-64: "-L[[TC]]/mips64r2/64/sof"
1116 // CHECK-BE-SF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/sof"
1117 // CHECK-BE-SF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib"
1118 // CHECK-BE-SF-64R2-64: "[[TC]]/mips64r2/64/sof{{/|\\\\}}crtend.o"
1119 // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib{{/|\\\\}}crtn.o"
1120 //
1121 // = Big-endian, mips64r2, ABI 64, nan2008
1122 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1123 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=64 -mnan=2008 \
1124 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1125 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN-64R2-64 %s
1126 // CHECK-BE-NAN-64R2-64: "-internal-isystem"
1127 // CHECK-BE-NAN-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1128 // CHECK-BE-NAN-64R2-64: "-internal-isystem"
1129 // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/nan2008"
1130 // CHECK-BE-NAN-64R2-64: "-internal-isystem"
1131 // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1132 // CHECK-BE-NAN-64R2-64: "-internal-externc-isystem"
1133 // CHECK-BE-NAN-64R2-64: "[[TC]]/include"
1134 // CHECK-BE-NAN-64R2-64: "-internal-externc-isystem"
1135 // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
1136 // CHECK-BE-NAN-64R2-64: "{{.*}}ld{{(.exe)?}}"
1137 // CHECK-BE-NAN-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/nan2008"
1138 // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crt1.o"
1139 // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crti.o"
1140 // CHECK-BE-NAN-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtbegin.o"
1141 // CHECK-BE-NAN-64R2-64: "-L[[TC]]/mips64r2/64/nan2008"
1142 // CHECK-BE-NAN-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/nan2008"
1143 // CHECK-BE-NAN-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib"
1144 // CHECK-BE-NAN-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtend.o"
1145 // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crtn.o"
1146 //
1147 // = Big-endian, mips64r2, ABI 64, fp64, nan2008
1148 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1149 // RUN:     --target=mips64-linux-gnu -mips64r2 -mabi=64 -mfp64 -mnan=2008 \
1150 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1151 // RUN:   | FileCheck --check-prefix=CHECK-BE-NAN64-64R2-64 %s
1152 // CHECK-BE-NAN64-64R2-64: "-internal-isystem"
1153 // CHECK-BE-NAN64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1154 // CHECK-BE-NAN64-64R2-64: "-internal-isystem"
1155 // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/fp64/nan2008"
1156 // CHECK-BE-NAN64-64R2-64: "-internal-isystem"
1157 // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1158 // CHECK-BE-NAN64-64R2-64: "-internal-externc-isystem"
1159 // CHECK-BE-NAN64-64R2-64: "[[TC]]/include"
1160 // CHECK-BE-NAN64-64R2-64: "-internal-externc-isystem"
1161 // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
1162 // CHECK-BE-NAN64-64R2-64: "{{.*}}ld{{(.exe)?}}"
1163 // CHECK-BE-NAN64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/fp64/nan2008"
1164 // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
1165 // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
1166 // CHECK-BE-NAN64-64R2-64: "[[TC]]/mips64r2/64/fp64/nan2008{{/|\\\\}}crtbegin.o"
1167 // CHECK-BE-NAN64-64R2-64: "-L[[TC]]/mips64r2/64/fp64/nan2008"
1168 // CHECK-BE-NAN64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/fp64/nan2008"
1169 // CHECK-BE-NAN64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/fp64/nan2008/usr/lib"
1170 // CHECK-BE-NAN64-64R2-64: "[[TC]]/mips64r2/64/fp64/nan2008{{/|\\\\}}crtend.o"
1171 // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
1172 //
1173 // = Little-endian, mips32, hard float
1174 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1175 // RUN:     --target=mipsel-linux-gnu -mips32 -mhard-float \
1176 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1177 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-32 %s
1178 // CHECK-EL-HF-32: "-internal-isystem"
1179 // CHECK-EL-HF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1180 // CHECK-EL-HF-32: "-internal-isystem"
1181 // CHECK-EL-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el"
1182 // CHECK-EL-HF-32: "-internal-isystem"
1183 // CHECK-EL-HF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1184 // CHECK-EL-HF-32: "-internal-externc-isystem"
1185 // CHECK-EL-HF-32: "[[TC]]/include"
1186 // CHECK-EL-HF-32: "-internal-externc-isystem"
1187 // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/usr/include"
1188 // CHECK-EL-HF-32: "{{.*}}ld{{(.exe)?}}"
1189 // CHECK-EL-HF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el"
1190 // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crt1.o"
1191 // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crti.o"
1192 // CHECK-EL-HF-32: "[[TC]]/mips32/el{{/|\\\\}}crtbegin.o"
1193 // CHECK-EL-HF-32: "-L[[TC]]/mips32/el"
1194 // CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el"
1195 // CHECK-EL-HF-32: "-L[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib"
1196 // CHECK-EL-HF-32: "[[TC]]/mips32/el{{/|\\\\}}crtend.o"
1197 // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crtn.o"
1198 //
1199 // = Little-endian, mips32, fp64, hard float
1200 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1201 // RUN:     --target=mipsel-linux-gnu -mips32 -mfp64 -mhard-float \
1202 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1203 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-32 %s
1204 // CHECK-EL-HF64-32: "-internal-isystem"
1205 // CHECK-EL-HF64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1206 // CHECK-EL-HF64-32: "-internal-isystem"
1207 // CHECK-EL-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el/fp64"
1208 // CHECK-EL-HF64-32: "-internal-isystem"
1209 // CHECK-EL-HF64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1210 // CHECK-EL-HF64-32: "-internal-externc-isystem"
1211 // CHECK-EL-HF64-32: "[[TC]]/include"
1212 // CHECK-EL-HF64-32: "-internal-externc-isystem"
1213 // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/usr/include"
1214 // CHECK-EL-HF64-32: "{{.*}}ld{{(.exe)?}}"
1215 // CHECK-EL-HF64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el/fp64"
1216 // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/mips32/el/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
1217 // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/mips32/el/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
1218 // CHECK-EL-HF64-32: "[[TC]]/mips32/el/fp64{{/|\\\\}}crtbegin.o"
1219 // CHECK-EL-HF64-32: "-L[[TC]]/mips32/el/fp64"
1220 // CHECK-EL-HF64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el/fp64"
1221 // CHECK-EL-HF64-32: "-L[[TC]]/../../../../sysroot/mips32/el/fp64/usr/lib/../lib"
1222 // CHECK-EL-HF64-32: "[[TC]]/mips32/el/fp64{{/|\\\\}}crtend.o"
1223 // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/mips32/el/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
1224 //
1225 // = Little-endian, mips32, soft float
1226 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1227 // RUN:     --target=mipsel-linux-gnu -mips32 -msoft-float \
1228 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1229 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-32 %s
1230 // CHECK-EL-SF-32: "-internal-isystem"
1231 // CHECK-EL-SF-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1232 // CHECK-EL-SF-32: "-internal-isystem"
1233 // CHECK-EL-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el/sof"
1234 // CHECK-EL-SF-32: "-internal-isystem"
1235 // CHECK-EL-SF-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1236 // CHECK-EL-SF-32: "-internal-externc-isystem"
1237 // CHECK-EL-SF-32: "[[TC]]/include"
1238 // CHECK-EL-SF-32: "-internal-externc-isystem"
1239 // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/usr/include"
1240 // CHECK-EL-SF-32: "{{.*}}ld{{(.exe)?}}"
1241 // CHECK-EL-SF-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el/sof"
1242 // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
1243 // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib{{/|\\\\}}crti.o"
1244 // CHECK-EL-SF-32: "[[TC]]/mips32/el/sof{{/|\\\\}}crtbegin.o"
1245 // CHECK-EL-SF-32: "-L[[TC]]/mips32/el/sof"
1246 // CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el/sof"
1247 // CHECK-EL-SF-32: "-L[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib"
1248 // CHECK-EL-SF-32: "[[TC]]/mips32/el/sof{{/|\\\\}}crtend.o"
1249 // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
1250 //
1251 // = Little-endian, mips32 / mips16, hard float
1252 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1253 // RUN:     --target=mipsel-linux-gnu -mips32 -mips16 -mhard-float \
1254 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1255 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-16 %s
1256 // CHECK-EL-HF-16: "-internal-isystem"
1257 // CHECK-EL-HF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1258 // CHECK-EL-HF-16: "-internal-isystem"
1259 // CHECK-EL-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el"
1260 // CHECK-EL-HF-16: "-internal-isystem"
1261 // CHECK-EL-HF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1262 // CHECK-EL-HF-16: "-internal-externc-isystem"
1263 // CHECK-EL-HF-16: "[[TC]]/include"
1264 // CHECK-EL-HF-16: "-internal-externc-isystem"
1265 // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/usr/include"
1266 // CHECK-EL-HF-16: "{{.*}}ld{{(.exe)?}}"
1267 // CHECK-EL-HF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el"
1268 // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crt1.o"
1269 // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crti.o"
1270 // CHECK-EL-HF-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtbegin.o"
1271 // CHECK-EL-HF-16: "-L[[TC]]/mips32/mips16/el"
1272 // CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el"
1273 // CHECK-EL-HF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib"
1274 // CHECK-EL-HF-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtend.o"
1275 // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o"
1276 //
1277 // = Little-endian, mips32 / mips16, fp64, hard float
1278 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1279 // RUN:     --target=mipsel-linux-gnu -mips32 -mips16 -mfp64 -mhard-float \
1280 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1281 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-16 %s
1282 // CHECK-EL-HF64-16: "-internal-isystem"
1283 // CHECK-EL-HF64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1284 // CHECK-EL-HF64-16: "-internal-isystem"
1285 // CHECK-EL-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el/fp64"
1286 // CHECK-EL-HF64-16: "-internal-isystem"
1287 // CHECK-EL-HF64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1288 // CHECK-EL-HF64-16: "-internal-externc-isystem"
1289 // CHECK-EL-HF64-16: "[[TC]]/include"
1290 // CHECK-EL-HF64-16: "-internal-externc-isystem"
1291 // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/usr/include"
1292 // CHECK-EL-HF64-16: "{{.*}}ld{{(.exe)?}}"
1293 // CHECK-EL-HF64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el/fp64"
1294 // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
1295 // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
1296 // CHECK-EL-HF64-16: "[[TC]]/mips32/mips16/el/fp64{{/|\\\\}}crtbegin.o"
1297 // CHECK-EL-HF64-16: "-L[[TC]]/mips32/mips16/el/fp64"
1298 // CHECK-EL-HF64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el/fp64"
1299 // CHECK-EL-HF64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/usr/lib/../lib"
1300 // CHECK-EL-HF64-16: "[[TC]]/mips32/mips16/el/fp64{{/|\\\\}}crtend.o"
1301 // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
1302 //
1303 // = Little-endian, mips32 / mips16, soft float
1304 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1305 // RUN:     --target=mipsel-linux-gnu -mips32 -mips16 -msoft-float \
1306 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1307 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-16 %s
1308 // CHECK-EL-SF-16: "-internal-isystem"
1309 // CHECK-EL-SF-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1310 // CHECK-EL-SF-16: "-internal-isystem"
1311 // CHECK-EL-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el/sof"
1312 // CHECK-EL-SF-16: "-internal-isystem"
1313 // CHECK-EL-SF-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1314 // CHECK-EL-SF-16: "-internal-externc-isystem"
1315 // CHECK-EL-SF-16: "[[TC]]/include"
1316 // CHECK-EL-SF-16: "-internal-externc-isystem"
1317 // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/usr/include"
1318 // CHECK-EL-SF-16: "{{.*}}ld{{(.exe)?}}"
1319 // CHECK-EL-SF-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el/sof"
1320 // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
1321 // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crti.o"
1322 // CHECK-EL-SF-16: "[[TC]]/mips32/mips16/el/sof{{/|\\\\}}crtbegin.o"
1323 // CHECK-EL-SF-16: "-L[[TC]]/mips32/mips16/el/sof"
1324 // CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el/sof"
1325 // CHECK-EL-SF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib"
1326 // CHECK-EL-SF-16: "[[TC]]/mips32/mips16/el/sof{{/|\\\\}}crtend.o"
1327 // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
1328 //
1329 // = Little-endian, mips32 / mips16, nan2008
1330 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1331 // RUN:     --target=mipsel-linux-gnu -mips32 -mips16 -mnan=2008 \
1332 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1333 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-16 %s
1334 // CHECK-EL-NAN-16: "-internal-isystem"
1335 // CHECK-EL-NAN-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1336 // CHECK-EL-NAN-16: "-internal-isystem"
1337 // CHECK-EL-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el/nan2008"
1338 // CHECK-EL-NAN-16: "-internal-isystem"
1339 // CHECK-EL-NAN-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1340 // CHECK-EL-NAN-16: "-internal-externc-isystem"
1341 // CHECK-EL-NAN-16: "[[TC]]/include"
1342 // CHECK-EL-NAN-16: "-internal-externc-isystem"
1343 // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/usr/include"
1344 // CHECK-EL-NAN-16: "{{.*}}ld{{(.exe)?}}"
1345 // CHECK-EL-NAN-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008"
1346 // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1347 // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1348 // CHECK-EL-NAN-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtbegin.o"
1349 // CHECK-EL-NAN-16: "-L[[TC]]/mips32/mips16/el/nan2008"
1350 // CHECK-EL-NAN-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el/nan2008"
1351 // CHECK-EL-NAN-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib"
1352 // CHECK-EL-NAN-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtend.o"
1353 // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1354 //
1355 // = Little-endian, mips32 / mips16, fp64, nan2008
1356 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1357 // RUN:     --target=mipsel-linux-gnu -mips32 -mips16 -mfp64 -mnan=2008 \
1358 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1359 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-16 %s
1360 // CHECK-EL-NAN64-16: "-internal-isystem"
1361 // CHECK-EL-NAN64-16: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1362 // CHECK-EL-NAN64-16: "-internal-isystem"
1363 // CHECK-EL-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/mips16/el/fp64/nan2008"
1364 // CHECK-EL-NAN64-16: "-internal-isystem"
1365 // CHECK-EL-NAN64-16: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1366 // CHECK-EL-NAN64-16: "-internal-externc-isystem"
1367 // CHECK-EL-NAN64-16: "[[TC]]/include"
1368 // CHECK-EL-NAN64-16: "-internal-externc-isystem"
1369 // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/usr/include"
1370 // CHECK-EL-NAN64-16: "{{.*}}ld{{(.exe)?}}"
1371 // CHECK-EL-NAN64-16: "--sysroot=[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/nan2008"
1372 // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1373 // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1374 // CHECK-EL-NAN64-16: "[[TC]]/mips32/mips16/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
1375 // CHECK-EL-NAN64-16: "-L[[TC]]/mips32/mips16/el/fp64/nan2008"
1376 // CHECK-EL-NAN64-16: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/mips16/el/fp64/nan2008"
1377 // CHECK-EL-NAN64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/nan2008/usr/lib/../lib"
1378 // CHECK-EL-NAN64-16: "[[TC]]/mips32/mips16/el/fp64/nan2008{{/|\\\\}}crtend.o"
1379 // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1380 //
1381 // = Little-endian, mips32, nan2008
1382 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1383 // RUN:     --target=mipsel-linux-gnu -mips32 -mnan=2008 \
1384 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1385 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-32 %s
1386 // CHECK-EL-NAN-32: "-internal-isystem"
1387 // CHECK-EL-NAN-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1388 // CHECK-EL-NAN-32: "-internal-isystem"
1389 // CHECK-EL-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el/nan2008"
1390 // CHECK-EL-NAN-32: "-internal-isystem"
1391 // CHECK-EL-NAN-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1392 // CHECK-EL-NAN-32: "-internal-externc-isystem"
1393 // CHECK-EL-NAN-32: "[[TC]]/include"
1394 // CHECK-EL-NAN-32: "-internal-externc-isystem"
1395 // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/usr/include"
1396 // CHECK-EL-NAN-32: "{{.*}}ld{{(.exe)?}}"
1397 // CHECK-EL-NAN-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el/nan2008"
1398 // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1399 // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1400 // CHECK-EL-NAN-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtbegin.o"
1401 // CHECK-EL-NAN-32: "-L[[TC]]/mips32/el/nan2008"
1402 // CHECK-EL-NAN-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el/nan2008"
1403 // CHECK-EL-NAN-32: "-L[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib"
1404 // CHECK-EL-NAN-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtend.o"
1405 // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1406 //
1407 // = Little-endian, mips32, fp64, nan2008
1408 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1409 // RUN:     --target=mipsel-linux-gnu -mips32 -mfp64 -mnan=2008 \
1410 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1411 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-32 %s
1412 // CHECK-EL-NAN64-32: "-internal-isystem"
1413 // CHECK-EL-NAN64-32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1414 // CHECK-EL-NAN64-32: "-internal-isystem"
1415 // CHECK-EL-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips32/el/fp64/nan2008"
1416 // CHECK-EL-NAN64-32: "-internal-isystem"
1417 // CHECK-EL-NAN64-32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1418 // CHECK-EL-NAN64-32: "-internal-externc-isystem"
1419 // CHECK-EL-NAN64-32: "[[TC]]/include"
1420 // CHECK-EL-NAN64-32: "-internal-externc-isystem"
1421 // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/usr/include"
1422 // CHECK-EL-NAN64-32: "{{.*}}ld{{(.exe)?}}"
1423 // CHECK-EL-NAN64-32: "--sysroot=[[TC]]/../../../../sysroot/mips32/el/fp64/nan2008"
1424 // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/mips32/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1425 // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/mips32/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1426 // CHECK-EL-NAN64-32: "[[TC]]/mips32/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
1427 // CHECK-EL-NAN64-32: "-L[[TC]]/mips32/el/fp64/nan2008"
1428 // CHECK-EL-NAN64-32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips32/el/fp64/nan2008"
1429 // CHECK-EL-NAN64-32: "-L[[TC]]/../../../../sysroot/mips32/el/fp64/nan2008/usr/lib/../lib"
1430 // CHECK-EL-NAN64-32: "[[TC]]/mips32/el/fp64/nan2008{{/|\\\\}}crtend.o"
1431 // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/mips32/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1432 //
1433 // = Little-endian, mips32r2, hard float
1434 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1435 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mhard-float \
1436 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1437 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-32R2 %s
1438 // CHECK-EL-HF-32R2: "-internal-isystem"
1439 // CHECK-EL-HF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1440 // CHECK-EL-HF-32R2: "-internal-isystem"
1441 // CHECK-EL-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el"
1442 // CHECK-EL-HF-32R2: "-internal-isystem"
1443 // CHECK-EL-HF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1444 // CHECK-EL-HF-32R2: "-internal-externc-isystem"
1445 // CHECK-EL-HF-32R2: "[[TC]]/include"
1446 // CHECK-EL-HF-32R2: "-internal-externc-isystem"
1447 // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/usr/include"
1448 // CHECK-EL-HF-32R2: "{{.*}}ld{{(.exe)?}}"
1449 // CHECK-EL-HF-32R2: "--sysroot=[[TC]]/../../../../sysroot/el"
1450 // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crt1.o"
1451 // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crti.o"
1452 // CHECK-EL-HF-32R2: "[[TC]]/el{{/|\\\\}}crtbegin.o"
1453 // CHECK-EL-HF-32R2: "-L[[TC]]/el"
1454 // CHECK-EL-HF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el"
1455 // CHECK-EL-HF-32R2: "-L[[TC]]/../../../../sysroot/el/usr/lib/../lib"
1456 // CHECK-EL-HF-32R2: "[[TC]]/el{{/|\\\\}}crtend.o"
1457 // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crtn.o"
1458 //
1459 // = Little-endian, mips32r2, fp64, hard float
1460 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1461 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mfp64 -mhard-float \
1462 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1463 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-32R2 %s
1464 // CHECK-EL-HF64-32R2: "-internal-isystem"
1465 // CHECK-EL-HF64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1466 // CHECK-EL-HF64-32R2: "-internal-isystem"
1467 // CHECK-EL-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/fp64"
1468 // CHECK-EL-HF64-32R2: "-internal-isystem"
1469 // CHECK-EL-HF64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1470 // CHECK-EL-HF64-32R2: "-internal-externc-isystem"
1471 // CHECK-EL-HF64-32R2: "[[TC]]/include"
1472 // CHECK-EL-HF64-32R2: "-internal-externc-isystem"
1473 // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/usr/include"
1474 // CHECK-EL-HF64-32R2: "{{.*}}ld{{(.exe)?}}"
1475 // CHECK-EL-HF64-32R2: "--sysroot=[[TC]]/../../../../sysroot/el/fp64"
1476 // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/el/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
1477 // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/el/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
1478 // CHECK-EL-HF64-32R2: "[[TC]]/el/fp64{{/|\\\\}}crtbegin.o"
1479 // CHECK-EL-HF64-32R2: "-L[[TC]]/el/fp64"
1480 // CHECK-EL-HF64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/fp64"
1481 // CHECK-EL-HF64-32R2: "-L[[TC]]/../../../../sysroot/el/fp64/usr/lib/../lib"
1482 // CHECK-EL-HF64-32R2: "[[TC]]/el/fp64{{/|\\\\}}crtend.o"
1483 // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/el/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
1484 //
1485 // = Little-endian, mips32r2, soft float
1486 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1487 // RUN:     --target=mipsel-linux-gnu -mips32r2 -msoft-float \
1488 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1489 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-32R2 %s
1490 // CHECK-EL-SF-32R2: "-internal-isystem"
1491 // CHECK-EL-SF-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1492 // CHECK-EL-SF-32R2: "-internal-isystem"
1493 // CHECK-EL-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/sof"
1494 // CHECK-EL-SF-32R2: "-internal-isystem"
1495 // CHECK-EL-SF-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1496 // CHECK-EL-SF-32R2: "-internal-externc-isystem"
1497 // CHECK-EL-SF-32R2: "[[TC]]/include"
1498 // CHECK-EL-SF-32R2: "-internal-externc-isystem"
1499 // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/usr/include"
1500 // CHECK-EL-SF-32R2: "{{.*}}ld{{(.exe)?}}"
1501 // CHECK-EL-SF-32R2: "--sysroot=[[TC]]/../../../../sysroot/el/sof"
1502 // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
1503 // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib{{/|\\\\}}crti.o"
1504 // CHECK-EL-SF-32R2: "[[TC]]/el/sof{{/|\\\\}}crtbegin.o"
1505 // CHECK-EL-SF-32R2: "-L[[TC]]/el/sof"
1506 // CHECK-EL-SF-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/sof"
1507 // CHECK-EL-SF-32R2: "-L[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib"
1508 // CHECK-EL-SF-32R2: "[[TC]]/el/sof{{/|\\\\}}crtend.o"
1509 // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
1510 //
1511 // = Little-endian, mips32r2 / mips16, hard float
1512 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1513 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mips16 -mhard-float \
1514 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1515 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-16R2 %s
1516 // CHECK-EL-HF-16R2: "-internal-isystem"
1517 // CHECK-EL-HF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1518 // CHECK-EL-HF-16R2: "-internal-isystem"
1519 // CHECK-EL-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el"
1520 // CHECK-EL-HF-16R2: "-internal-isystem"
1521 // CHECK-EL-HF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1522 // CHECK-EL-HF-16R2: "-internal-externc-isystem"
1523 // CHECK-EL-HF-16R2: "[[TC]]/include"
1524 // CHECK-EL-HF-16R2: "-internal-externc-isystem"
1525 // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/usr/include"
1526 // CHECK-EL-HF-16R2: "{{.*}}ld{{(.exe)?}}"
1527 // CHECK-EL-HF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el"
1528 // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crt1.o"
1529 // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crti.o"
1530 // CHECK-EL-HF-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtbegin.o"
1531 // CHECK-EL-HF-16R2: "-L[[TC]]/mips16/el"
1532 // CHECK-EL-HF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el"
1533 // CHECK-EL-HF-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib"
1534 // CHECK-EL-HF-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtend.o"
1535 // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o"
1536 //
1537 // = Little-endian, mips32r2 / mips16, fp64, hard float
1538 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1539 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mips16 -mfp64 -mhard-float \
1540 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1541 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-16R2 %s
1542 // CHECK-EL-HF64-16R2: "-internal-isystem"
1543 // CHECK-EL-HF64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1544 // CHECK-EL-HF64-16R2: "-internal-isystem"
1545 // CHECK-EL-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el/fp64"
1546 // CHECK-EL-HF64-16R2: "-internal-isystem"
1547 // CHECK-EL-HF64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1548 // CHECK-EL-HF64-16R2: "-internal-externc-isystem"
1549 // CHECK-EL-HF64-16R2: "[[TC]]/include"
1550 // CHECK-EL-HF64-16R2: "-internal-externc-isystem"
1551 // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/usr/include"
1552 // CHECK-EL-HF64-16R2: "{{.*}}ld{{(.exe)?}}"
1553 // CHECK-EL-HF64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el/fp64"
1554 // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/el/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
1555 // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/el/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
1556 // CHECK-EL-HF64-16R2: "[[TC]]/mips16/el/fp64{{/|\\\\}}crtbegin.o"
1557 // CHECK-EL-HF64-16R2: "-L[[TC]]/mips16/el/fp64"
1558 // CHECK-EL-HF64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el/fp64"
1559 // CHECK-EL-HF64-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/fp64/usr/lib/../lib"
1560 // CHECK-EL-HF64-16R2: "[[TC]]/mips16/el/fp64{{/|\\\\}}crtend.o"
1561 // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/el/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
1562 //
1563 // = Little-endian, mips32r2 / mips16, soft float
1564 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1565 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mips16 -msoft-float \
1566 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1567 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-16R2 %s
1568 // CHECK-EL-SF-16R2: "-internal-isystem"
1569 // CHECK-EL-SF-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1570 // CHECK-EL-SF-16R2: "-internal-isystem"
1571 // CHECK-EL-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el/sof"
1572 // CHECK-EL-SF-16R2: "-internal-isystem"
1573 // CHECK-EL-SF-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1574 // CHECK-EL-SF-16R2: "-internal-externc-isystem"
1575 // CHECK-EL-SF-16R2: "[[TC]]/include"
1576 // CHECK-EL-SF-16R2: "-internal-externc-isystem"
1577 // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/usr/include"
1578 // CHECK-EL-SF-16R2: "{{.*}}ld{{(.exe)?}}"
1579 // CHECK-EL-SF-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el/sof"
1580 // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
1581 // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crti.o"
1582 // CHECK-EL-SF-16R2: "[[TC]]/mips16/el/sof{{/|\\\\}}crtbegin.o"
1583 // CHECK-EL-SF-16R2: "-L[[TC]]/mips16/el/sof"
1584 // CHECK-EL-SF-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el/sof"
1585 // CHECK-EL-SF-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib"
1586 // CHECK-EL-SF-16R2: "[[TC]]/mips16/el/sof{{/|\\\\}}crtend.o"
1587 // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
1588 //
1589 // = Little-endian, mips32r2 / mips16, nan2008
1590 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1591 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mips16 -mnan=2008 \
1592 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1593 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-16R2 %s
1594 // CHECK-EL-NAN-16R2: "-internal-isystem"
1595 // CHECK-EL-NAN-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1596 // CHECK-EL-NAN-16R2: "-internal-isystem"
1597 // CHECK-EL-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el/nan2008"
1598 // CHECK-EL-NAN-16R2: "-internal-isystem"
1599 // CHECK-EL-NAN-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1600 // CHECK-EL-NAN-16R2: "-internal-externc-isystem"
1601 // CHECK-EL-NAN-16R2: "[[TC]]/include"
1602 // CHECK-EL-NAN-16R2: "-internal-externc-isystem"
1603 // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/usr/include"
1604 // CHECK-EL-NAN-16R2: "{{.*}}ld{{(.exe)?}}"
1605 // CHECK-EL-NAN-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el/nan2008"
1606 // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1607 // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1608 // CHECK-EL-NAN-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtbegin.o"
1609 // CHECK-EL-NAN-16R2: "-L[[TC]]/mips16/el/nan2008"
1610 // CHECK-EL-NAN-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el/nan2008"
1611 // CHECK-EL-NAN-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib"
1612 // CHECK-EL-NAN-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtend.o"
1613 // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1614 //
1615 // = Little-endian, mips32r2 / mips16, fp64, nan2008
1616 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1617 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mips16 -mfp64 -mnan=2008 \
1618 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1619 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-16R2 %s
1620 // CHECK-EL-NAN64-16R2: "-internal-isystem"
1621 // CHECK-EL-NAN64-16R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1622 // CHECK-EL-NAN64-16R2: "-internal-isystem"
1623 // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips16/el/fp64/nan2008"
1624 // CHECK-EL-NAN64-16R2: "-internal-isystem"
1625 // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1626 // CHECK-EL-NAN64-16R2: "-internal-externc-isystem"
1627 // CHECK-EL-NAN64-16R2: "[[TC]]/include"
1628 // CHECK-EL-NAN64-16R2: "-internal-externc-isystem"
1629 // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/usr/include"
1630 // CHECK-EL-NAN64-16R2: "{{.*}}ld{{(.exe)?}}"
1631 // CHECK-EL-NAN64-16R2: "--sysroot=[[TC]]/../../../../sysroot/mips16/el/fp64/nan2008"
1632 // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1633 // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1634 // CHECK-EL-NAN64-16R2: "[[TC]]/mips16/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
1635 // CHECK-EL-NAN64-16R2: "-L[[TC]]/mips16/el/fp64/nan2008"
1636 // CHECK-EL-NAN64-16R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/mips16/el/fp64/nan2008"
1637 // CHECK-EL-NAN64-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/fp64/nan2008/usr/lib/../lib"
1638 // CHECK-EL-NAN64-16R2: "[[TC]]/mips16/el/fp64/nan2008{{/|\\\\}}crtend.o"
1639 // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1640 //
1641 // = Little-endian, mips32r2, nan2008
1642 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1643 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mnan=2008 \
1644 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1645 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-32R2 %s
1646 // CHECK-EL-NAN-32R2: "-internal-isystem"
1647 // CHECK-EL-NAN-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1648 // CHECK-EL-NAN-32R2: "-internal-isystem"
1649 // CHECK-EL-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/nan2008"
1650 // CHECK-EL-NAN-32R2: "-internal-isystem"
1651 // CHECK-EL-NAN-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1652 // CHECK-EL-NAN-32R2: "-internal-externc-isystem"
1653 // CHECK-EL-NAN-32R2: "[[TC]]/include"
1654 // CHECK-EL-NAN-32R2: "-internal-externc-isystem"
1655 // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/usr/include"
1656 // CHECK-EL-NAN-32R2: "{{.*}}ld{{(.exe)?}}"
1657 // CHECK-EL-NAN-32R2: "--sysroot=[[TC]]/../../../../sysroot/el/nan2008"
1658 // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1659 // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1660 // CHECK-EL-NAN-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtbegin.o"
1661 // CHECK-EL-NAN-32R2: "-L[[TC]]/el/nan2008"
1662 // CHECK-EL-NAN-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/nan2008"
1663 // CHECK-EL-NAN-32R2: "-L[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib"
1664 // CHECK-EL-NAN-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtend.o"
1665 // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1666 //
1667 // = Little-endian, mips32r2, fp64, nan2008
1668 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1669 // RUN:     --target=mipsel-linux-gnu -mips32r2 -mfp64 -mnan=2008 \
1670 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1671 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-32R2 %s
1672 // CHECK-EL-NAN64-32R2: "-internal-isystem"
1673 // CHECK-EL-NAN64-32R2: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1674 // CHECK-EL-NAN64-32R2: "-internal-isystem"
1675 // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/el/fp64/nan2008"
1676 // CHECK-EL-NAN64-32R2: "-internal-isystem"
1677 // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1678 // CHECK-EL-NAN64-32R2: "-internal-externc-isystem"
1679 // CHECK-EL-NAN64-32R2: "[[TC]]/include"
1680 // CHECK-EL-NAN64-32R2: "-internal-externc-isystem"
1681 // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/usr/include"
1682 // CHECK-EL-NAN64-32R2: "{{.*}}ld{{(.exe)?}}"
1683 // CHECK-EL-NAN64-32R2: "--sysroot=[[TC]]/../../../../sysroot/el/fp64/nan2008"
1684 // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1685 // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1686 // CHECK-EL-NAN64-32R2: "[[TC]]/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
1687 // CHECK-EL-NAN64-32R2: "-L[[TC]]/el/fp64/nan2008"
1688 // CHECK-EL-NAN64-32R2: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/el/fp64/nan2008"
1689 // CHECK-EL-NAN64-32R2: "-L[[TC]]/../../../../sysroot/el/fp64/nan2008/usr/lib/../lib"
1690 // CHECK-EL-NAN64-32R2: "[[TC]]/el/fp64/nan2008{{/|\\\\}}crtend.o"
1691 // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1692 //
1693 // = Little-endian, micromips, hard float
1694 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1695 // RUN:     --target=mipsel-linux-gnu -mmicromips -mhard-float \
1696 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1697 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-MM %s
1698 // CHECK-EL-HF-MM: "-internal-isystem"
1699 // CHECK-EL-HF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1700 // CHECK-EL-HF-MM: "-internal-isystem"
1701 // CHECK-EL-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el"
1702 // CHECK-EL-HF-MM: "-internal-isystem"
1703 // CHECK-EL-HF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1704 // CHECK-EL-HF-MM: "-internal-externc-isystem"
1705 // CHECK-EL-HF-MM: "[[TC]]/include"
1706 // CHECK-EL-HF-MM: "-internal-externc-isystem"
1707 // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/usr/include"
1708 // CHECK-EL-HF-MM: "{{.*}}ld{{(.exe)?}}"
1709 // CHECK-EL-HF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el"
1710 // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crt1.o"
1711 // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crti.o"
1712 // CHECK-EL-HF-MM: "[[TC]]/micromips/el{{/|\\\\}}crtbegin.o"
1713 // CHECK-EL-HF-MM: "-L[[TC]]/micromips/el"
1714 // CHECK-EL-HF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el"
1715 // CHECK-EL-HF-MM: "-L[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib"
1716 // CHECK-EL-HF-MM: "[[TC]]/micromips/el{{/|\\\\}}crtend.o"
1717 // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crtn.o"
1718 //
1719 // = Little-endian, micromips, fp64, hard float
1720 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1721 // RUN:     --target=mipsel-linux-gnu -mmicromips -mfp64 -mhard-float \
1722 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1723 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-MM %s
1724 // CHECK-EL-HF64-MM: "-internal-isystem"
1725 // CHECK-EL-HF64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1726 // CHECK-EL-HF64-MM: "-internal-isystem"
1727 // CHECK-EL-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el/fp64"
1728 // CHECK-EL-HF64-MM: "-internal-isystem"
1729 // CHECK-EL-HF64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1730 // CHECK-EL-HF64-MM: "-internal-externc-isystem"
1731 // CHECK-EL-HF64-MM: "[[TC]]/include"
1732 // CHECK-EL-HF64-MM: "-internal-externc-isystem"
1733 // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/usr/include"
1734 // CHECK-EL-HF64-MM: "{{.*}}ld{{(.exe)?}}"
1735 // CHECK-EL-HF64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el/fp64"
1736 // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/micromips/el/fp64/usr/lib/../lib{{/|\\\\}}crt1.o"
1737 // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/micromips/el/fp64/usr/lib/../lib{{/|\\\\}}crti.o"
1738 // CHECK-EL-HF64-MM: "[[TC]]/micromips/el/fp64{{/|\\\\}}crtbegin.o"
1739 // CHECK-EL-HF64-MM: "-L[[TC]]/micromips/el/fp64"
1740 // CHECK-EL-HF64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el/fp64"
1741 // CHECK-EL-HF64-MM: "-L[[TC]]/../../../../sysroot/micromips/el/fp64/usr/lib/../lib"
1742 // CHECK-EL-HF64-MM: "[[TC]]/micromips/el/fp64{{/|\\\\}}crtend.o"
1743 // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/micromips/el/fp64/usr/lib/../lib{{/|\\\\}}crtn.o"
1744 //
1745 // = Little-endian, micromips, soft float
1746 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1747 // RUN:     --target=mipsel-linux-gnu -mmicromips -msoft-float \
1748 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1749 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-MM %s
1750 // CHECK-EL-SF-MM: "-internal-isystem"
1751 // CHECK-EL-SF-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1752 // CHECK-EL-SF-MM: "-internal-isystem"
1753 // CHECK-EL-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el/sof"
1754 // CHECK-EL-SF-MM: "-internal-isystem"
1755 // CHECK-EL-SF-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1756 // CHECK-EL-SF-MM: "-internal-externc-isystem"
1757 // CHECK-EL-SF-MM: "[[TC]]/include"
1758 // CHECK-EL-SF-MM: "-internal-externc-isystem"
1759 // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/usr/include"
1760 // CHECK-EL-SF-MM: "{{.*}}ld{{(.exe)?}}"
1761 // CHECK-EL-SF-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el/sof"
1762 // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib{{/|\\\\}}crt1.o"
1763 // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib{{/|\\\\}}crti.o"
1764 // CHECK-EL-SF-MM: "[[TC]]/micromips/el/sof{{/|\\\\}}crtbegin.o"
1765 // CHECK-EL-SF-MM: "-L[[TC]]/micromips/el/sof"
1766 // CHECK-EL-SF-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el/sof"
1767 // CHECK-EL-SF-MM: "-L[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib"
1768 // CHECK-EL-SF-MM: "[[TC]]/micromips/el/sof{{/|\\\\}}crtend.o"
1769 // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o"
1770 //
1771 // = Little-endian, micromips, nan2008
1772 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1773 // RUN:     --target=mipsel-linux-gnu -mmicromips -mnan=2008 \
1774 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1775 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-MM %s
1776 // CHECK-EL-NAN-MM: "-internal-isystem"
1777 // CHECK-EL-NAN-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1778 // CHECK-EL-NAN-MM: "-internal-isystem"
1779 // CHECK-EL-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el/nan2008"
1780 // CHECK-EL-NAN-MM: "-internal-isystem"
1781 // CHECK-EL-NAN-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1782 // CHECK-EL-NAN-MM: "-internal-externc-isystem"
1783 // CHECK-EL-NAN-MM: "[[TC]]/include"
1784 // CHECK-EL-NAN-MM: "-internal-externc-isystem"
1785 // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/usr/include"
1786 // CHECK-EL-NAN-MM: "{{.*}}ld{{(.exe)?}}"
1787 // CHECK-EL-NAN-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el/nan2008"
1788 // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1789 // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1790 // CHECK-EL-NAN-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtbegin.o"
1791 // CHECK-EL-NAN-MM: "-L[[TC]]/micromips/el/nan2008"
1792 // CHECK-EL-NAN-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el/nan2008"
1793 // CHECK-EL-NAN-MM: "-L[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib"
1794 // CHECK-EL-NAN-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtend.o"
1795 // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1796 //
1797 // = Little-endian, micromips, fp64, nan2008
1798 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1799 // RUN:     --target=mipsel-linux-gnu -mmicromips -mfp64 -mnan=2008 \
1800 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1801 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-MM %s
1802 // CHECK-EL-NAN64-MM: "-internal-isystem"
1803 // CHECK-EL-NAN64-MM: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1804 // CHECK-EL-NAN64-MM: "-internal-isystem"
1805 // CHECK-EL-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/micromips/el/fp64/nan2008"
1806 // CHECK-EL-NAN64-MM: "-internal-isystem"
1807 // CHECK-EL-NAN64-MM: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1808 // CHECK-EL-NAN64-MM: "-internal-externc-isystem"
1809 // CHECK-EL-NAN64-MM: "[[TC]]/include"
1810 // CHECK-EL-NAN64-MM: "-internal-externc-isystem"
1811 // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/usr/include"
1812 // CHECK-EL-NAN64-MM: "{{.*}}ld{{(.exe)?}}"
1813 // CHECK-EL-NAN64-MM: "--sysroot=[[TC]]/../../../../sysroot/micromips/el/fp64/nan2008"
1814 // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crt1.o"
1815 // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crti.o"
1816 // CHECK-EL-NAN64-MM: "[[TC]]/micromips/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
1817 // CHECK-EL-NAN64-MM: "-L[[TC]]/micromips/el/fp64/nan2008"
1818 // CHECK-EL-NAN64-MM: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/../lib/micromips/el/fp64/nan2008"
1819 // CHECK-EL-NAN64-MM: "-L[[TC]]/../../../../sysroot/micromips/el/fp64/nan2008/usr/lib/../lib"
1820 // CHECK-EL-NAN64-MM: "[[TC]]/micromips/el/fp64/nan2008{{/|\\\\}}crtend.o"
1821 // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/el/fp64/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o"
1822 //
1823 // = Little-endian, mips64, ABI n32, hard float
1824 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1825 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=n32 -mhard-float \
1826 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1827 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-64-N32 %s
1828 // CHECK-EL-HF-64-N32: "-internal-isystem"
1829 // CHECK-EL-HF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1830 // CHECK-EL-HF-64-N32: "-internal-isystem"
1831 // CHECK-EL-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el"
1832 // CHECK-EL-HF-64-N32: "-internal-isystem"
1833 // CHECK-EL-HF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1834 // CHECK-EL-HF-64-N32: "-internal-externc-isystem"
1835 // CHECK-EL-HF-64-N32: "[[TC]]/include"
1836 // CHECK-EL-HF-64-N32: "-internal-externc-isystem"
1837 // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/usr/include"
1838 // CHECK-EL-HF-64-N32: "{{.*}}ld{{(.exe)?}}"
1839 // CHECK-EL-HF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el"
1840 // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crt1.o"
1841 // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crti.o"
1842 // CHECK-EL-HF-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtbegin.o"
1843 // CHECK-EL-HF-64-N32: "-L[[TC]]/mips64/el"
1844 // CHECK-EL-HF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el"
1845 // CHECK-EL-HF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/usr/lib"
1846 // CHECK-EL-HF-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtend.o"
1847 // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crtn.o"
1848 //
1849 // = Little-endian, mips64, ABI n32, fp64, hard float
1850 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1851 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=n32 -mfp64 -mhard-float \
1852 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1853 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-64-N32 %s
1854 // CHECK-EL-HF64-64-N32: "-internal-isystem"
1855 // CHECK-EL-HF64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1856 // CHECK-EL-HF64-64-N32: "-internal-isystem"
1857 // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el/fp64"
1858 // CHECK-EL-HF64-64-N32: "-internal-isystem"
1859 // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1860 // CHECK-EL-HF64-64-N32: "-internal-externc-isystem"
1861 // CHECK-EL-HF64-64-N32: "[[TC]]/include"
1862 // CHECK-EL-HF64-64-N32: "-internal-externc-isystem"
1863 // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/usr/include"
1864 // CHECK-EL-HF64-64-N32: "{{.*}}ld{{(.exe)?}}"
1865 // CHECK-EL-HF64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el/fp64"
1866 // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/fp64/usr/lib{{/|\\\\}}crt1.o"
1867 // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/fp64/usr/lib{{/|\\\\}}crti.o"
1868 // CHECK-EL-HF64-64-N32: "[[TC]]/mips64/el/fp64{{/|\\\\}}crtbegin.o"
1869 // CHECK-EL-HF64-64-N32: "-L[[TC]]/mips64/el/fp64"
1870 // CHECK-EL-HF64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el/fp64"
1871 // CHECK-EL-HF64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/fp64/usr/lib"
1872 // CHECK-EL-HF64-64-N32: "[[TC]]/mips64/el/fp64{{/|\\\\}}crtend.o"
1873 // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/fp64/usr/lib{{/|\\\\}}crtn.o"
1874 //
1875 // = Little-endian, mips64, ABI n32, soft float
1876 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1877 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=n32 -msoft-float \
1878 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1879 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-64-N32 %s
1880 // CHECK-EL-SF-64-N32: "-internal-isystem"
1881 // CHECK-EL-SF-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1882 // CHECK-EL-SF-64-N32: "-internal-isystem"
1883 // CHECK-EL-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el/sof"
1884 // CHECK-EL-SF-64-N32: "-internal-isystem"
1885 // CHECK-EL-SF-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1886 // CHECK-EL-SF-64-N32: "-internal-externc-isystem"
1887 // CHECK-EL-SF-64-N32: "[[TC]]/include"
1888 // CHECK-EL-SF-64-N32: "-internal-externc-isystem"
1889 // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/usr/include"
1890 // CHECK-EL-SF-64-N32: "{{.*}}ld{{(.exe)?}}"
1891 // CHECK-EL-SF-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el/sof"
1892 // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib{{/|\\\\}}crt1.o"
1893 // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib{{/|\\\\}}crti.o"
1894 // CHECK-EL-SF-64-N32: "[[TC]]/mips64/el/sof{{/|\\\\}}crtbegin.o"
1895 // CHECK-EL-SF-64-N32: "-L[[TC]]/mips64/el/sof"
1896 // CHECK-EL-SF-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el/sof"
1897 // CHECK-EL-SF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib"
1898 // CHECK-EL-SF-64-N32: "[[TC]]/mips64/el/sof{{/|\\\\}}crtend.o"
1899 // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib{{/|\\\\}}crtn.o"
1900 //
1901 // = Little-endian, mips64, ABI n32, nan2008
1902 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1903 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=n32 -mnan=2008 \
1904 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1905 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-64-N32 %s
1906 // CHECK-EL-NAN-64-N32: "-internal-isystem"
1907 // CHECK-EL-NAN-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1908 // CHECK-EL-NAN-64-N32: "-internal-isystem"
1909 // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el/nan2008"
1910 // CHECK-EL-NAN-64-N32: "-internal-isystem"
1911 // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1912 // CHECK-EL-NAN-64-N32: "-internal-externc-isystem"
1913 // CHECK-EL-NAN-64-N32: "[[TC]]/include"
1914 // CHECK-EL-NAN-64-N32: "-internal-externc-isystem"
1915 // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/usr/include"
1916 // CHECK-EL-NAN-64-N32: "{{.*}}ld{{(.exe)?}}"
1917 // CHECK-EL-NAN-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el/nan2008"
1918 // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crt1.o"
1919 // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crti.o"
1920 // CHECK-EL-NAN-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtbegin.o"
1921 // CHECK-EL-NAN-64-N32: "-L[[TC]]/mips64/el/nan2008"
1922 // CHECK-EL-NAN-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el/nan2008"
1923 // CHECK-EL-NAN-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib"
1924 // CHECK-EL-NAN-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtend.o"
1925 // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crtn.o"
1926 //
1927 // = Little-endian, mips64, ABI n32, fp64, nan2008
1928 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1929 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=n32 -mfp64 -mnan=2008 \
1930 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1931 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-64-N32 %s
1932 // CHECK-EL-NAN64-64-N32: "-internal-isystem"
1933 // CHECK-EL-NAN64-64-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1934 // CHECK-EL-NAN64-64-N32: "-internal-isystem"
1935 // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/el/fp64/nan2008"
1936 // CHECK-EL-NAN64-64-N32: "-internal-isystem"
1937 // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1938 // CHECK-EL-NAN64-64-N32: "-internal-externc-isystem"
1939 // CHECK-EL-NAN64-64-N32: "[[TC]]/include"
1940 // CHECK-EL-NAN64-64-N32: "-internal-externc-isystem"
1941 // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/usr/include"
1942 // CHECK-EL-NAN64-64-N32: "{{.*}}ld{{(.exe)?}}"
1943 // CHECK-EL-NAN64-64-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64/el/fp64/nan2008"
1944 // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
1945 // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
1946 // CHECK-EL-NAN64-64-N32: "[[TC]]/mips64/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
1947 // CHECK-EL-NAN64-64-N32: "-L[[TC]]/mips64/el/fp64/nan2008"
1948 // CHECK-EL-NAN64-64-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/el/fp64/nan2008"
1949 // CHECK-EL-NAN64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/fp64/nan2008/usr/lib"
1950 // CHECK-EL-NAN64-64-N32: "[[TC]]/mips64/el/fp64/nan2008{{/|\\\\}}crtend.o"
1951 // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
1952 //
1953 // = Little-endian, mips64, ABI 64, hard float
1954 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1955 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=64 -mhard-float \
1956 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1957 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-64-64 %s
1958 // CHECK-EL-HF-64-64: "-internal-isystem"
1959 // CHECK-EL-HF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1960 // CHECK-EL-HF-64-64: "-internal-isystem"
1961 // CHECK-EL-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el"
1962 // CHECK-EL-HF-64-64: "-internal-isystem"
1963 // CHECK-EL-HF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1964 // CHECK-EL-HF-64-64: "-internal-externc-isystem"
1965 // CHECK-EL-HF-64-64: "[[TC]]/include"
1966 // CHECK-EL-HF-64-64: "-internal-externc-isystem"
1967 // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/usr/include"
1968 // CHECK-EL-HF-64-64: "{{.*}}ld{{(.exe)?}}"
1969 // CHECK-EL-HF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el"
1970 // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crt1.o"
1971 // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crti.o"
1972 // CHECK-EL-HF-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtbegin.o"
1973 // CHECK-EL-HF-64-64: "-L[[TC]]/mips64/64/el"
1974 // CHECK-EL-HF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el"
1975 // CHECK-EL-HF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/usr/lib"
1976 // CHECK-EL-HF-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtend.o"
1977 // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crtn.o"
1978 //
1979 // = Little-endian, mips64, ABI 64, fp64, hard float
1980 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
1981 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=64 -mfp64 -mhard-float \
1982 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
1983 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-64-64 %s
1984 // CHECK-EL-HF64-64-64: "-internal-isystem"
1985 // CHECK-EL-HF64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
1986 // CHECK-EL-HF64-64-64: "-internal-isystem"
1987 // CHECK-EL-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el/fp64"
1988 // CHECK-EL-HF64-64-64: "-internal-isystem"
1989 // CHECK-EL-HF64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
1990 // CHECK-EL-HF64-64-64: "-internal-externc-isystem"
1991 // CHECK-EL-HF64-64-64: "[[TC]]/include"
1992 // CHECK-EL-HF64-64-64: "-internal-externc-isystem"
1993 // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/usr/include"
1994 // CHECK-EL-HF64-64-64: "{{.*}}ld{{(.exe)?}}"
1995 // CHECK-EL-HF64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el/fp64"
1996 // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/fp64/usr/lib{{/|\\\\}}crt1.o"
1997 // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/fp64/usr/lib{{/|\\\\}}crti.o"
1998 // CHECK-EL-HF64-64-64: "[[TC]]/mips64/64/el/fp64{{/|\\\\}}crtbegin.o"
1999 // CHECK-EL-HF64-64-64: "-L[[TC]]/mips64/64/el/fp64"
2000 // CHECK-EL-HF64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el/fp64"
2001 // CHECK-EL-HF64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/fp64/usr/lib"
2002 // CHECK-EL-HF64-64-64: "[[TC]]/mips64/64/el/fp64{{/|\\\\}}crtend.o"
2003 // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/fp64/usr/lib{{/|\\\\}}crtn.o"
2004 //
2005 // = Little-endian, mips64, ABI 64, soft float
2006 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2007 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=64 -msoft-float \
2008 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2009 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-64-64 %s
2010 // CHECK-EL-SF-64-64: "-internal-isystem"
2011 // CHECK-EL-SF-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2012 // CHECK-EL-SF-64-64: "-internal-isystem"
2013 // CHECK-EL-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el/sof"
2014 // CHECK-EL-SF-64-64: "-internal-isystem"
2015 // CHECK-EL-SF-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2016 // CHECK-EL-SF-64-64: "-internal-externc-isystem"
2017 // CHECK-EL-SF-64-64: "[[TC]]/include"
2018 // CHECK-EL-SF-64-64: "-internal-externc-isystem"
2019 // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/usr/include"
2020 // CHECK-EL-SF-64-64: "{{.*}}ld{{(.exe)?}}"
2021 // CHECK-EL-SF-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el/sof"
2022 // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib{{/|\\\\}}crt1.o"
2023 // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib{{/|\\\\}}crti.o"
2024 // CHECK-EL-SF-64-64: "[[TC]]/mips64/64/el/sof{{/|\\\\}}crtbegin.o"
2025 // CHECK-EL-SF-64-64: "-L[[TC]]/mips64/64/el/sof"
2026 // CHECK-EL-SF-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el/sof"
2027 // CHECK-EL-SF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib"
2028 // CHECK-EL-SF-64-64: "[[TC]]/mips64/64/el/sof{{/|\\\\}}crtend.o"
2029 // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib{{/|\\\\}}crtn.o"
2030 //
2031 // = Little-endian, mips64, ABI 64, nan2008
2032 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2033 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=64 -mnan=2008 \
2034 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2035 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-64-64 %s
2036 // CHECK-EL-NAN-64-64: "-internal-isystem"
2037 // CHECK-EL-NAN-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2038 // CHECK-EL-NAN-64-64: "-internal-isystem"
2039 // CHECK-EL-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el/nan2008"
2040 // CHECK-EL-NAN-64-64: "-internal-isystem"
2041 // CHECK-EL-NAN-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2042 // CHECK-EL-NAN-64-64: "-internal-externc-isystem"
2043 // CHECK-EL-NAN-64-64: "[[TC]]/include"
2044 // CHECK-EL-NAN-64-64: "-internal-externc-isystem"
2045 // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/usr/include"
2046 // CHECK-EL-NAN-64-64: "{{.*}}ld{{(.exe)?}}"
2047 // CHECK-EL-NAN-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el/nan2008"
2048 // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crt1.o"
2049 // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crti.o"
2050 // CHECK-EL-NAN-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtbegin.o"
2051 // CHECK-EL-NAN-64-64: "-L[[TC]]/mips64/64/el/nan2008"
2052 // CHECK-EL-NAN-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el/nan2008"
2053 // CHECK-EL-NAN-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib"
2054 // CHECK-EL-NAN-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtend.o"
2055 // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o"
2056 //
2057 // = Little-endian, mips64, ABI 64, fp64, nan2008
2058 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2059 // RUN:     --target=mips64el-linux-gnu -mips64 -mabi=64 -mfp64 -mnan=2008 \
2060 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2061 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-64-64 %s
2062 // CHECK-EL-NAN64-64-64: "-internal-isystem"
2063 // CHECK-EL-NAN64-64-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2064 // CHECK-EL-NAN64-64-64: "-internal-isystem"
2065 // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64/64/el/fp64/nan2008"
2066 // CHECK-EL-NAN64-64-64: "-internal-isystem"
2067 // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2068 // CHECK-EL-NAN64-64-64: "-internal-externc-isystem"
2069 // CHECK-EL-NAN64-64-64: "[[TC]]/include"
2070 // CHECK-EL-NAN64-64-64: "-internal-externc-isystem"
2071 // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/usr/include"
2072 // CHECK-EL-NAN64-64-64: "{{.*}}ld{{(.exe)?}}"
2073 // CHECK-EL-NAN64-64-64: "--sysroot=[[TC]]/../../../../sysroot/mips64/64/el/fp64/nan2008"
2074 // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
2075 // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
2076 // CHECK-EL-NAN64-64-64: "[[TC]]/mips64/64/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
2077 // CHECK-EL-NAN64-64-64: "-L[[TC]]/mips64/64/el/fp64/nan2008"
2078 // CHECK-EL-NAN64-64-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64/64/el/fp64/nan2008"
2079 // CHECK-EL-NAN64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/fp64/nan2008/usr/lib"
2080 // CHECK-EL-NAN64-64-64: "[[TC]]/mips64/64/el/fp64/nan2008{{/|\\\\}}crtend.o"
2081 // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
2082 //
2083 // = Little-endian, mips64r2, ABI n32, hard float
2084 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2085 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=n32 -mhard-float \
2086 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2087 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-64R2-N32 %s
2088 // CHECK-EL-HF-64R2-N32: "-internal-isystem"
2089 // CHECK-EL-HF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2090 // CHECK-EL-HF-64R2-N32: "-internal-isystem"
2091 // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el"
2092 // CHECK-EL-HF-64R2-N32: "-internal-isystem"
2093 // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2094 // CHECK-EL-HF-64R2-N32: "-internal-externc-isystem"
2095 // CHECK-EL-HF-64R2-N32: "[[TC]]/include"
2096 // CHECK-EL-HF-64R2-N32: "-internal-externc-isystem"
2097 // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
2098 // CHECK-EL-HF-64R2-N32: "{{.*}}ld{{(.exe)?}}"
2099 // CHECK-EL-HF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el"
2100 // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crt1.o"
2101 // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crti.o"
2102 // CHECK-EL-HF-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtbegin.o"
2103 // CHECK-EL-HF-64R2-N32: "-L[[TC]]/mips64r2/el"
2104 // CHECK-EL-HF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el"
2105 // CHECK-EL-HF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/usr/lib"
2106 // CHECK-EL-HF-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtend.o"
2107 // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crtn.o"
2108 //
2109 // = Little-endian, mips64r2, ABI n32, fp64, hard float
2110 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2111 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mhard-float \
2112 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2113 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-64R2-N32 %s
2114 // CHECK-EL-HF64-64R2-N32: "-internal-isystem"
2115 // CHECK-EL-HF64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2116 // CHECK-EL-HF64-64R2-N32: "-internal-isystem"
2117 // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el/fp64"
2118 // CHECK-EL-HF64-64R2-N32: "-internal-isystem"
2119 // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2120 // CHECK-EL-HF64-64R2-N32: "-internal-externc-isystem"
2121 // CHECK-EL-HF64-64R2-N32: "[[TC]]/include"
2122 // CHECK-EL-HF64-64R2-N32: "-internal-externc-isystem"
2123 // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
2124 // CHECK-EL-HF64-64R2-N32: "{{.*}}ld{{(.exe)?}}"
2125 // CHECK-EL-HF64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el/fp64"
2126 // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/fp64/usr/lib{{/|\\\\}}crt1.o"
2127 // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/fp64/usr/lib{{/|\\\\}}crti.o"
2128 // CHECK-EL-HF64-64R2-N32: "[[TC]]/mips64r2/el/fp64{{/|\\\\}}crtbegin.o"
2129 // CHECK-EL-HF64-64R2-N32: "-L[[TC]]/mips64r2/el/fp64"
2130 // CHECK-EL-HF64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el/fp64"
2131 // CHECK-EL-HF64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/fp64/usr/lib"
2132 // CHECK-EL-HF64-64R2-N32: "[[TC]]/mips64r2/el/fp64{{/|\\\\}}crtend.o"
2133 // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/fp64/usr/lib{{/|\\\\}}crtn.o"
2134 //
2135 // = Little-endian, mips64r2, ABI n32, soft float
2136 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2137 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=n32 -msoft-float \
2138 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2139 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-64R2-N32 %s
2140 // CHECK-EL-SF-64R2-N32: "-internal-isystem"
2141 // CHECK-EL-SF-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2142 // CHECK-EL-SF-64R2-N32: "-internal-isystem"
2143 // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el/sof"
2144 // CHECK-EL-SF-64R2-N32: "-internal-isystem"
2145 // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2146 // CHECK-EL-SF-64R2-N32: "-internal-externc-isystem"
2147 // CHECK-EL-SF-64R2-N32: "[[TC]]/include"
2148 // CHECK-EL-SF-64R2-N32: "-internal-externc-isystem"
2149 // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
2150 // CHECK-EL-SF-64R2-N32: "{{.*}}ld{{(.exe)?}}"
2151 // CHECK-EL-SF-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el/sof"
2152 // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib{{/|\\\\}}crt1.o"
2153 // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib{{/|\\\\}}crti.o"
2154 // CHECK-EL-SF-64R2-N32: "[[TC]]/mips64r2/el/sof{{/|\\\\}}crtbegin.o"
2155 // CHECK-EL-SF-64R2-N32: "-L[[TC]]/mips64r2/el/sof"
2156 // CHECK-EL-SF-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el/sof"
2157 // CHECK-EL-SF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib"
2158 // CHECK-EL-SF-64R2-N32: "[[TC]]/mips64r2/el/sof{{/|\\\\}}crtend.o"
2159 // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib{{/|\\\\}}crtn.o"
2160 //
2161 // = Little-endian, mips64r2, ABI n32, nan2008
2162 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2163 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=n32 -mnan=2008 \
2164 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2165 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-64R2-N32 %s
2166 // CHECK-EL-NAN-64R2-N32: "-internal-isystem"
2167 // CHECK-EL-NAN-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2168 // CHECK-EL-NAN-64R2-N32: "-internal-isystem"
2169 // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el/nan2008"
2170 // CHECK-EL-NAN-64R2-N32: "-internal-isystem"
2171 // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2172 // CHECK-EL-NAN-64R2-N32: "-internal-externc-isystem"
2173 // CHECK-EL-NAN-64R2-N32: "[[TC]]/include"
2174 // CHECK-EL-NAN-64R2-N32: "-internal-externc-isystem"
2175 // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
2176 // CHECK-EL-NAN-64R2-N32: "{{.*}}ld{{(.exe)?}}"
2177 // CHECK-EL-NAN-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el/nan2008"
2178 // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crt1.o"
2179 // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crti.o"
2180 // CHECK-EL-NAN-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtbegin.o"
2181 // CHECK-EL-NAN-64R2-N32: "-L[[TC]]/mips64r2/el/nan2008"
2182 // CHECK-EL-NAN-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el/nan2008"
2183 // CHECK-EL-NAN-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib"
2184 // CHECK-EL-NAN-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtend.o"
2185 // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crtn.o"
2186 //
2187 // = Little-endian, mips64r2, ABI n32, fp64, nan2008
2188 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2189 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mnan=2008 \
2190 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2191 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-64R2-N32 %s
2192 // CHECK-EL-NAN64-64R2-N32: "-internal-isystem"
2193 // CHECK-EL-NAN64-64R2-N32: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2194 // CHECK-EL-NAN64-64R2-N32: "-internal-isystem"
2195 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/el/fp64/nan2008"
2196 // CHECK-EL-NAN64-64R2-N32: "-internal-isystem"
2197 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2198 // CHECK-EL-NAN64-64R2-N32: "-internal-externc-isystem"
2199 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/include"
2200 // CHECK-EL-NAN64-64R2-N32: "-internal-externc-isystem"
2201 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/usr/include"
2202 // CHECK-EL-NAN64-64R2-N32: "{{.*}}ld{{(.exe)?}}"
2203 // CHECK-EL-NAN64-64R2-N32: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/el/fp64/nan2008"
2204 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
2205 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
2206 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/mips64r2/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
2207 // CHECK-EL-NAN64-64R2-N32: "-L[[TC]]/mips64r2/el/fp64/nan2008"
2208 // CHECK-EL-NAN64-64R2-N32: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/el/fp64/nan2008"
2209 // CHECK-EL-NAN64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/fp64/nan2008/usr/lib"
2210 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/mips64r2/el/fp64/nan2008{{/|\\\\}}crtend.o"
2211 // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
2212 //
2213 // = Little-endian, mips64r2, ABI 64, hard float
2214 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2215 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=64 -mhard-float \
2216 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2217 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF-64R2-64 %s
2218 // CHECK-EL-HF-64R2-64: "-internal-isystem"
2219 // CHECK-EL-HF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2220 // CHECK-EL-HF-64R2-64: "-internal-isystem"
2221 // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el"
2222 // CHECK-EL-HF-64R2-64: "-internal-isystem"
2223 // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2224 // CHECK-EL-HF-64R2-64: "-internal-externc-isystem"
2225 // CHECK-EL-HF-64R2-64: "[[TC]]/include"
2226 // CHECK-EL-HF-64R2-64: "-internal-externc-isystem"
2227 // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
2228 // CHECK-EL-HF-64R2-64: "{{.*}}ld{{(.exe)?}}"
2229 // CHECK-EL-HF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el"
2230 // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crt1.o"
2231 // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crti.o"
2232 // CHECK-EL-HF-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtbegin.o"
2233 // CHECK-EL-HF-64R2-64: "-L[[TC]]/mips64r2/64/el"
2234 // CHECK-EL-HF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el"
2235 // CHECK-EL-HF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib"
2236 // CHECK-EL-HF-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtend.o"
2237 // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crtn.o"
2238 //
2239 // = Little-endian, mips64r2, ABI 64, fp64, hard float
2240 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2241 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=64 -mfp64 -mhard-float \
2242 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2243 // RUN:   | FileCheck --check-prefix=CHECK-EL-HF64-64R2-64 %s
2244 // CHECK-EL-HF64-64R2-64: "-internal-isystem"
2245 // CHECK-EL-HF64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2246 // CHECK-EL-HF64-64R2-64: "-internal-isystem"
2247 // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/fp64"
2248 // CHECK-EL-HF64-64R2-64: "-internal-isystem"
2249 // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2250 // CHECK-EL-HF64-64R2-64: "-internal-externc-isystem"
2251 // CHECK-EL-HF64-64R2-64: "[[TC]]/include"
2252 // CHECK-EL-HF64-64R2-64: "-internal-externc-isystem"
2253 // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
2254 // CHECK-EL-HF64-64R2-64: "{{.*}}ld{{(.exe)?}}"
2255 // CHECK-EL-HF64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/fp64"
2256 // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/usr/lib{{/|\\\\}}crt1.o"
2257 // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/usr/lib{{/|\\\\}}crti.o"
2258 // CHECK-EL-HF64-64R2-64: "[[TC]]/mips64r2/64/el/fp64{{/|\\\\}}crtbegin.o"
2259 // CHECK-EL-HF64-64R2-64: "-L[[TC]]/mips64r2/64/el/fp64"
2260 // CHECK-EL-HF64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/fp64"
2261 // CHECK-EL-HF64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/usr/lib"
2262 // CHECK-EL-HF64-64R2-64: "[[TC]]/mips64r2/64/el/fp64{{/|\\\\}}crtend.o"
2263 // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/usr/lib{{/|\\\\}}crtn.o"
2264 //
2265 // = Little-endian, mips64r2, ABI 64, soft float
2266 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2267 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=64 -msoft-float \
2268 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2269 // RUN:   | FileCheck --check-prefix=CHECK-EL-SF-64R2-64 %s
2270 // CHECK-EL-SF-64R2-64: "-internal-isystem"
2271 // CHECK-EL-SF-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2272 // CHECK-EL-SF-64R2-64: "-internal-isystem"
2273 // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/sof"
2274 // CHECK-EL-SF-64R2-64: "-internal-isystem"
2275 // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2276 // CHECK-EL-SF-64R2-64: "-internal-externc-isystem"
2277 // CHECK-EL-SF-64R2-64: "[[TC]]/include"
2278 // CHECK-EL-SF-64R2-64: "-internal-externc-isystem"
2279 // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
2280 // CHECK-EL-SF-64R2-64: "{{.*}}ld{{(.exe)?}}"
2281 // CHECK-EL-SF-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/sof"
2282 // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib{{/|\\\\}}crt1.o"
2283 // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib{{/|\\\\}}crti.o"
2284 // CHECK-EL-SF-64R2-64: "[[TC]]/mips64r2/64/el/sof{{/|\\\\}}crtbegin.o"
2285 // CHECK-EL-SF-64R2-64: "-L[[TC]]/mips64r2/64/el/sof"
2286 // CHECK-EL-SF-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/sof"
2287 // CHECK-EL-SF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib"
2288 // CHECK-EL-SF-64R2-64: "[[TC]]/mips64r2/64/el/sof{{/|\\\\}}crtend.o"
2289 // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib{{/|\\\\}}crtn.o"
2290 //
2291 // = Little-endian, mips64r2, ABI 64, nan2008
2292 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2293 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=64 -mnan=2008 \
2294 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2295 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN-64R2-64 %s
2296 // CHECK-EL-NAN-64R2-64: "-internal-isystem"
2297 // CHECK-EL-NAN-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2298 // CHECK-EL-NAN-64R2-64: "-internal-isystem"
2299 // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/nan2008"
2300 // CHECK-EL-NAN-64R2-64: "-internal-isystem"
2301 // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2302 // CHECK-EL-NAN-64R2-64: "-internal-externc-isystem"
2303 // CHECK-EL-NAN-64R2-64: "[[TC]]/include"
2304 // CHECK-EL-NAN-64R2-64: "-internal-externc-isystem"
2305 // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
2306 // CHECK-EL-NAN-64R2-64: "{{.*}}ld{{(.exe)?}}"
2307 // CHECK-EL-NAN-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008"
2308 // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crt1.o"
2309 // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crti.o"
2310 // CHECK-EL-NAN-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtbegin.o"
2311 // CHECK-EL-NAN-64R2-64: "-L[[TC]]/mips64r2/64/el/nan2008"
2312 // CHECK-EL-NAN-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/nan2008"
2313 // CHECK-EL-NAN-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib"
2314 // CHECK-EL-NAN-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtend.o"
2315 // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o"
2316 //
2317 // = Little-endian, mips64r2, ABI 64, fp64, nan2008
2318 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
2319 // RUN:     --target=mips64el-linux-gnu -mips64r2 -mabi=64 -mfp64 -mnan=2008 \
2320 // RUN:     --gcc-toolchain=%S/Inputs/mips_fsf_tree \
2321 // RUN:   | FileCheck --check-prefix=CHECK-EL-NAN64-64R2-64 %s
2322 // CHECK-EL-NAN64-64R2-64: "-internal-isystem"
2323 // CHECK-EL-NAN64-64R2-64: "[[TC:[^"]+/lib/gcc/mips-mti-linux-gnu/4.9.0]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0"
2324 // CHECK-EL-NAN64-64R2-64: "-internal-isystem"
2325 // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/mips-mti-linux-gnu/mips64r2/64/el/fp64/nan2008"
2326 // CHECK-EL-NAN64-64R2-64: "-internal-isystem"
2327 // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../mips-mti-linux-gnu/include/c++/4.9.0/backward"
2328 // CHECK-EL-NAN64-64R2-64: "-internal-externc-isystem"
2329 // CHECK-EL-NAN64-64R2-64: "[[TC]]/include"
2330 // CHECK-EL-NAN64-64R2-64: "-internal-externc-isystem"
2331 // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/usr/include"
2332 // CHECK-EL-NAN64-64R2-64: "{{.*}}ld{{(.exe)?}}"
2333 // CHECK-EL-NAN64-64R2-64: "--sysroot=[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/nan2008"
2334 // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/nan2008/usr/lib{{/|\\\\}}crt1.o"
2335 // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/nan2008/usr/lib{{/|\\\\}}crti.o"
2336 // CHECK-EL-NAN64-64R2-64: "[[TC]]/mips64r2/64/el/fp64/nan2008{{/|\\\\}}crtbegin.o"
2337 // CHECK-EL-NAN64-64R2-64: "-L[[TC]]/mips64r2/64/el/fp64/nan2008"
2338 // CHECK-EL-NAN64-64R2-64: "-L[[TC]]/../../../../mips-mti-linux-gnu/lib/mips64r2/64/el/fp64/nan2008"
2339 // CHECK-EL-NAN64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/nan2008/usr/lib"
2340 // CHECK-EL-NAN64-64R2-64: "[[TC]]/mips64r2/64/el/fp64/nan2008{{/|\\\\}}crtend.o"
2341 // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/fp64/nan2008/usr/lib{{/|\\\\}}crtn.o"
2342