1 // REQUIRES: mips-registered-target
3 // Check frontend and linker invocations on the IMG v2 MIPS toolchain.
5 // -EB -mips32r6 -mhard-float -mabi=32
6 // RUN: %clang -### %s 2>&1 \
7 // RUN: --target=mips-img-linux-gnu \
8 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
9 // RUN: -stdlib=libstdc++ \
10 // RUN: -EB -mips32r6 -mhard-float -mabi=32 -no-pie \
11 // RUN: | FileCheck --check-prefix=EB-HARD-O32 %s
12 // EB-HARD-O32: "-internal-isystem"
13 // EB-HARD-O32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
14 // EB-HARD-O32: "-internal-isystem"
15 // EB-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-hard/lib"
16 // EB-HARD-O32: "-internal-isystem"
17 // EB-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
18 // EB-HARD-O32: "-internal-externc-isystem"
19 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/lib/../usr/include"
20 // EB-HARD-O32: "{{.*}}ld{{(.exe)?}}"
21 // EB-HARD-O32: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-hard"
22 // EB-HARD-O32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
23 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
24 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
25 // EB-HARD-O32: "[[TC]]/mips-r6-hard/lib{{/|\\\\}}crtbegin.o"
26 // EB-HARD-O32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-hard/lib"
27 // EB-HARD-O32: "-L[[TC]]/mips-r6-hard/lib"
28 // EB-HARD-O32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/lib/../lib"
29 // EB-HARD-O32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib"
30 // EB-HARD-O32: "[[TC]]/mips-r6-hard/lib{{/|\\\\}}crtend.o"
31 // EB-HARD-O32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
33 // -EB -mips64r6 -mhard-float -mabi=n32
34 // RUN: %clang -### %s 2>&1 \
35 // RUN: --target=mips-img-linux-gnu \
36 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
37 // RUN: -stdlib=libstdc++ \
38 // RUN: -EB -mips64r6 -mhard-float -mabi=n32 -no-pie \
39 // RUN: | FileCheck --check-prefix=EB-HARD-N32 %s
40 // EB-HARD-N32: "-internal-isystem"
41 // EB-HARD-N32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
42 // EB-HARD-N32: "-internal-isystem"
43 // EB-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-hard/lib32"
44 // EB-HARD-N32: "-internal-isystem"
45 // EB-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
46 // EB-HARD-N32: "-internal-externc-isystem"
47 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/lib32/../usr/include"
48 // EB-HARD-N32: "{{.*}}ld{{(.exe)?}}"
49 // EB-HARD-N32: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-hard"
50 // EB-HARD-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1"
51 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32{{/|\\\\}}crt1.o"
52 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32{{/|\\\\}}crti.o"
53 // EB-HARD-N32: "[[TC]]/mips-r6-hard/lib32{{/|\\\\}}crtbegin.o"
54 // EB-HARD-N32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-hard/lib32"
55 // EB-HARD-N32: "-L[[TC]]/mips-r6-hard/lib32"
56 // EB-HARD-N32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/lib/../lib32"
57 // EB-HARD-N32: "-L[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32"
58 // EB-HARD-N32: "[[TC]]/mips-r6-hard/lib32{{/|\\\\}}crtend.o"
59 // EB-HARD-N32: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib32{{/|\\\\}}crtn.o"
61 // -EB -mips64r6 -mhard-float -mabi=64
62 // RUN: %clang -### %s 2>&1 \
63 // RUN: --target=mips64-img-linux-gnu \
64 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
65 // RUN: -stdlib=libstdc++ \
66 // RUN: -EB -mips64r6 -mhard-float -mabi=64 -no-pie \
67 // RUN: | FileCheck --check-prefix=EB-HARD-N64 %s
68 // EB-HARD-N64: "-internal-isystem"
69 // EB-HARD-N64: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
70 // EB-HARD-N64: "-internal-isystem"
71 // EB-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-hard/lib64"
72 // EB-HARD-N64: "-internal-isystem"
73 // EB-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
74 // EB-HARD-N64: "-internal-externc-isystem"
75 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/lib64/../usr/include"
76 // EB-HARD-N64: "{{.*}}ld{{(.exe)?}}"
77 // EB-HARD-N64: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-hard"
78 // EB-HARD-N64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1"
79 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64{{/|\\\\}}crt1.o"
80 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64{{/|\\\\}}crti.o"
81 // EB-HARD-N64: "[[TC]]/mips-r6-hard/lib64{{/|\\\\}}crtbegin.o"
82 // EB-HARD-N64: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-hard/lib64"
83 // EB-HARD-N64: "-L[[TC]]/mips-r6-hard/lib64"
84 // EB-HARD-N64: "-L[[TC]]/../../../../sysroot/mips-r6-hard/lib/../lib64"
85 // EB-HARD-N64: "-L[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64"
86 // EB-HARD-N64: "[[TC]]/mips-r6-hard/lib64{{/|\\\\}}crtend.o"
87 // EB-HARD-N64: "[[TC]]/../../../../sysroot/mips-r6-hard/usr/lib/../lib64{{/|\\\\}}crtn.o"
89 // -EL -mips32r6 -mhard-float -mabi=32
90 // RUN: %clang -### %s 2>&1 \
91 // RUN: --target=mips-img-linux-gnu \
92 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
93 // RUN: -stdlib=libstdc++ \
94 // RUN: -EL -mips32r6 -mhard-float -mabi=32 -no-pie \
95 // RUN: | FileCheck --check-prefix=EL-HARD-O32 %s
96 // EL-HARD-O32: "-internal-isystem"
97 // EL-HARD-O32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
98 // EL-HARD-O32: "-internal-isystem"
99 // EL-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-hard/lib"
100 // EL-HARD-O32: "-internal-isystem"
101 // EL-HARD-O32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
102 // EL-HARD-O32: "-internal-externc-isystem"
103 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../usr/include"
104 // EL-HARD-O32: "{{.*}}ld{{(.exe)?}}"
105 // EL-HARD-O32: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-hard"
106 // EL-HARD-O32: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
107 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
108 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
109 // EL-HARD-O32: "[[TC]]/mipsel-r6-hard/lib{{/|\\\\}}crtbegin.o"
110 // EL-HARD-O32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-hard/lib"
111 // EL-HARD-O32: "-L[[TC]]/mipsel-r6-hard/lib"
112 // EL-HARD-O32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../lib"
113 // EL-HARD-O32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib"
114 // EL-HARD-O32: "[[TC]]/mipsel-r6-hard/lib{{/|\\\\}}crtend.o"
115 // EL-HARD-O32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
117 // -EL -mips64r6 -mhard-float -mabi=n32
118 // RUN: %clang -### %s 2>&1 \
119 // RUN: --target=mips-img-linux-gnu \
120 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
121 // RUN: -stdlib=libstdc++ \
122 // RUN: -EL -mips64r6 -mhard-float -mabi=n32 -no-pie \
123 // RUN: | FileCheck --check-prefix=EL-HARD-N32 %s
124 // EL-HARD-N32: "-internal-isystem"
125 // EL-HARD-N32: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
126 // EL-HARD-N32: "-internal-isystem"
127 // EL-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-hard/lib32"
128 // EL-HARD-N32: "-internal-isystem"
129 // EL-HARD-N32: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
130 // EL-HARD-N32: "-internal-externc-isystem"
131 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/lib32/../usr/include"
132 // EL-HARD-N32: "{{.*}}ld{{(.exe)?}}"
133 // EL-HARD-N32: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-hard"
134 // EL-HARD-N32: "-dynamic-linker" "/lib32/ld-linux-mipsn8.so.1"
135 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32{{/|\\\\}}crt1.o"
136 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32{{/|\\\\}}crti.o"
137 // EL-HARD-N32: "[[TC]]/mipsel-r6-hard/lib32{{/|\\\\}}crtbegin.o"
138 // EL-HARD-N32: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-hard/lib32"
139 // EL-HARD-N32: "-L[[TC]]/mipsel-r6-hard/lib32"
140 // EL-HARD-N32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../lib32"
141 // EL-HARD-N32: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32"
142 // EL-HARD-N32: "[[TC]]/mipsel-r6-hard/lib32{{/|\\\\}}crtend.o"
143 // EL-HARD-N32: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib32{{/|\\\\}}crtn.o"
145 // -EL -mips64r6 -mhard-float -mabi=64
146 // RUN: %clang -### %s 2>&1 \
147 // RUN: --target=mips64-img-linux-gnu \
148 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
149 // RUN: -stdlib=libstdc++ \
150 // RUN: -EL -mips64r6 -mhard-float -mabi=64 -no-pie \
151 // RUN: | FileCheck --check-prefix=EL-HARD-N64 %s
152 // EL-HARD-N64: "-internal-isystem"
153 // EL-HARD-N64: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
154 // EL-HARD-N64: "-internal-isystem"
155 // EL-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-hard/lib64"
156 // EL-HARD-N64: "-internal-isystem"
157 // EL-HARD-N64: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
158 // EL-HARD-N64: "-internal-externc-isystem"
159 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/lib64/../usr/include"
160 // EL-HARD-N64: "{{.*}}ld{{(.exe)?}}"
161 // EL-HARD-N64: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-hard"
162 // EL-HARD-N64: "-dynamic-linker" "/lib64/ld-linux-mipsn8.so.1"
163 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64{{/|\\\\}}crt1.o"
164 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64{{/|\\\\}}crti.o"
165 // EL-HARD-N64: "[[TC]]/mipsel-r6-hard/lib64{{/|\\\\}}crtbegin.o"
166 // EL-HARD-N64: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-hard/lib64"
167 // EL-HARD-N64: "-L[[TC]]/mipsel-r6-hard/lib64"
168 // EL-HARD-N64: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/lib/../lib64"
169 // EL-HARD-N64: "-L[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64"
170 // EL-HARD-N64: "[[TC]]/mipsel-r6-hard/lib64{{/|\\\\}}crtend.o"
171 // EL-HARD-N64: "[[TC]]/../../../../sysroot/mipsel-r6-hard/usr/lib/../lib64{{/|\\\\}}crtn.o"
173 // -EB -mips32r6 -msoft-float
174 // RUN: %clang -### %s 2>&1 \
175 // RUN: --target=mips-img-linux-gnu \
176 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
177 // RUN: -stdlib=libstdc++ \
178 // RUN: -EB -mips32r6 -msoft-float -no-pie \
179 // RUN: | FileCheck --check-prefix=EB-SOFT %s
180 // EB-SOFT: "-internal-isystem"
181 // EB-SOFT: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
182 // EB-SOFT: "-internal-isystem"
183 // EB-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mips-r6-soft/lib"
184 // EB-SOFT: "-internal-isystem"
185 // EB-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
186 // EB-SOFT: "-internal-externc-isystem"
187 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/lib/../usr/include"
188 // EB-SOFT: "{{.*}}ld{{(.exe)?}}"
189 // EB-SOFT: "--sysroot=[[TC]]/../../../../sysroot/mips-r6-soft"
190 // EB-SOFT: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
191 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
192 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
193 // EB-SOFT: "[[TC]]/mips-r6-soft/lib{{/|\\\\}}crtbegin.o"
194 // EB-SOFT: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mips-r6-soft/lib"
195 // EB-SOFT: "-L[[TC]]/mips-r6-soft/lib"
196 // EB-SOFT: "-L[[TC]]/../../../../sysroot/mips-r6-soft/lib/../lib"
197 // EB-SOFT: "-L[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib"
198 // EB-SOFT: "[[TC]]/mips-r6-soft/lib{{/|\\\\}}crtend.o"
199 // EB-SOFT: "[[TC]]/../../../../sysroot/mips-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"
201 // -EL -mips32r6 -msoft-float
202 // RUN: %clang -### %s 2>&1 \
203 // RUN: --target=mips-img-linux-gnu \
204 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
205 // RUN: -stdlib=libstdc++ \
206 // RUN: -EL -mips32r6 -msoft-float -no-pie \
207 // RUN: | FileCheck --check-prefix=EL-SOFT %s
208 // EL-SOFT: "-internal-isystem"
209 // EL-SOFT: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
210 // EL-SOFT: "-internal-isystem"
211 // EL-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/mipsel-r6-soft/lib"
212 // EL-SOFT: "-internal-isystem"
213 // EL-SOFT: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
214 // EL-SOFT: "-internal-externc-isystem"
215 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/lib/../usr/include"
216 // EL-SOFT: "{{.*}}ld{{(.exe)?}}"
217 // EL-SOFT: "--sysroot=[[TC]]/../../../../sysroot/mipsel-r6-soft"
218 // EL-SOFT: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
219 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
220 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
221 // EL-SOFT: "[[TC]]/mipsel-r6-soft/lib{{/|\\\\}}crtbegin.o"
222 // EL-SOFT: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/mipsel-r6-soft/lib"
223 // EL-SOFT: "-L[[TC]]/mipsel-r6-soft/lib"
224 // EL-SOFT: "-L[[TC]]/../../../../sysroot/mipsel-r6-soft/lib/../lib"
225 // EL-SOFT: "-L[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib"
226 // EL-SOFT: "[[TC]]/mipsel-r6-soft/lib{{/|\\\\}}crtend.o"
227 // EL-SOFT: "[[TC]]/../../../../sysroot/mipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"
229 // -EB -mips32r6 -mhard-float -mmicromips
230 // RUN: %clang -### %s 2>&1 \
231 // RUN: --target=mips-img-linux-gnu \
232 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
233 // RUN: -stdlib=libstdc++ \
234 // RUN: -EB -mips32r6 -mhard-float -mmicromips -no-pie \
235 // RUN: | FileCheck --check-prefix=EB-HARD-MICRO %s
236 // EB-HARD-MICRO: "-internal-isystem"
237 // EB-HARD-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
238 // EB-HARD-MICRO: "-internal-isystem"
239 // EB-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromips-r6-hard/lib"
240 // EB-HARD-MICRO: "-internal-isystem"
241 // EB-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
242 // EB-HARD-MICRO: "-internal-externc-isystem"
243 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/lib/../usr/include"
244 // EB-HARD-MICRO: "{{.*}}ld{{(.exe)?}}"
245 // EB-HARD-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromips-r6-hard"
246 // EB-HARD-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
247 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
248 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
249 // EB-HARD-MICRO: "[[TC]]/micromips-r6-hard/lib{{/|\\\\}}crtbegin.o"
250 // EB-HARD-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromips-r6-hard/lib"
251 // EB-HARD-MICRO: "-L[[TC]]/micromips-r6-hard/lib"
252 // EB-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-hard/lib/../lib"
253 // EB-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib"
254 // EB-HARD-MICRO: "[[TC]]/micromips-r6-hard/lib{{/|\\\\}}crtend.o"
255 // EB-HARD-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
257 // -EB -mips32r6 -msoft-float -mmicromips
258 // RUN: %clang -### %s 2>&1 \
259 // RUN: --target=mips-img-linux-gnu \
260 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
261 // RUN: -stdlib=libstdc++ \
262 // RUN: -EB -mips32r6 -msoft-float -mmicromips -no-pie \
263 // RUN: | FileCheck --check-prefix=EB-SOFT-MICRO %s
264 // EB-SOFT-MICRO: "-internal-isystem"
265 // EB-SOFT-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
266 // EB-SOFT-MICRO: "-internal-isystem"
267 // EB-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromips-r6-soft/lib"
268 // EB-SOFT-MICRO: "-internal-isystem"
269 // EB-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
270 // EB-SOFT-MICRO: "-internal-externc-isystem"
271 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/lib/../usr/include"
272 // EB-SOFT-MICRO: "{{.*}}ld{{(.exe)?}}"
273 // EB-SOFT-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromips-r6-soft"
274 // EB-SOFT-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
275 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
276 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
277 // EB-SOFT-MICRO: "[[TC]]/micromips-r6-soft/lib{{/|\\\\}}crtbegin.o"
278 // EB-SOFT-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromips-r6-soft/lib"
279 // EB-SOFT-MICRO: "-L[[TC]]/micromips-r6-soft/lib"
280 // EB-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-soft/lib/../lib"
281 // EB-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib"
282 // EB-SOFT-MICRO: "[[TC]]/micromips-r6-soft/lib{{/|\\\\}}crtend.o"
283 // EB-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromips-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"
285 // -EL -mips32r6 -mhard-float -mmicromips
286 // RUN: %clang -### %s 2>&1 \
287 // RUN: --target=mips-img-linux-gnu \
288 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
289 // RUN: -stdlib=libstdc++ \
290 // RUN: -EL -mips32r6 -mhard-float -mmicromips -no-pie \
291 // RUN: | FileCheck --check-prefix=EL-HARD-MICRO %s
292 // EL-HARD-MICRO: "-internal-isystem"
293 // EL-HARD-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
294 // EL-HARD-MICRO: "-internal-isystem"
295 // EL-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromipsel-r6-hard/lib"
296 // EL-HARD-MICRO: "-internal-isystem"
297 // EL-HARD-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
298 // EL-HARD-MICRO: "-internal-externc-isystem"
299 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/lib/../usr/include"
300 // EL-HARD-MICRO: "{{.*}}ld{{(.exe)?}}"
301 // EL-HARD-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromipsel-r6-hard"
302 // EL-HARD-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
303 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crt1.o"
304 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crti.o"
305 // EL-HARD-MICRO: "[[TC]]/micromipsel-r6-hard/lib{{/|\\\\}}crtbegin.o"
306 // EL-HARD-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromipsel-r6-hard/lib"
307 // EL-HARD-MICRO: "-L[[TC]]/micromipsel-r6-hard/lib"
308 // EL-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-hard/lib/../lib"
309 // EL-HARD-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib"
310 // EL-HARD-MICRO: "[[TC]]/micromipsel-r6-hard/lib{{/|\\\\}}crtend.o"
311 // EL-HARD-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-hard/usr/lib/../lib{{/|\\\\}}crtn.o"
313 // -EL -mips32r6 -msoft-float -mmicromips
314 // RUN: %clang -### %s 2>&1 \
315 // RUN: --target=mips-img-linux-gnu \
316 // RUN: --gcc-toolchain=%S/Inputs/mips_img_v2_tree \
317 // RUN: -stdlib=libstdc++ \
318 // RUN: -EL -mips32r6 -msoft-float -mmicromips -no-pie \
319 // RUN: | FileCheck --check-prefix=EL-SOFT-MICRO %s
320 // EL-SOFT-MICRO: "-internal-isystem"
321 // EL-SOFT-MICRO: "[[TC:[^"]+/lib/gcc/mips-img-linux-gnu/4.9.2]]/../../../../mips-img-linux-gnu/include/c++/4.9.2"
322 // EL-SOFT-MICRO: "-internal-isystem"
323 // EL-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/mips-img-linux-gnu/micromipsel-r6-soft/lib"
324 // EL-SOFT-MICRO: "-internal-isystem"
325 // EL-SOFT-MICRO: "[[TC]]/../../../../mips-img-linux-gnu/include/c++/4.9.2/backward"
326 // EL-SOFT-MICRO: "-internal-externc-isystem"
327 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/lib/../usr/include"
328 // EL-SOFT-MICRO: "{{.*}}ld{{(.exe)?}}"
329 // EL-SOFT-MICRO: "--sysroot=[[TC]]/../../../../sysroot/micromipsel-r6-soft"
330 // EL-SOFT-MICRO: "-dynamic-linker" "/lib/ld-linux-mipsn8.so.1"
331 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crt1.o"
332 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crti.o"
333 // EL-SOFT-MICRO: "[[TC]]/micromipsel-r6-soft/lib{{/|\\\\}}crtbegin.o"
334 // EL-SOFT-MICRO: "-L[[TC]]/../../../../mips-img-linux-gnu/lib/micromipsel-r6-soft/lib"
335 // EL-SOFT-MICRO: "-L[[TC]]/micromipsel-r6-soft/lib"
336 // EL-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-soft/lib/../lib"
337 // EL-SOFT-MICRO: "-L[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib"
338 // EL-SOFT-MICRO: "[[TC]]/micromipsel-r6-soft/lib{{/|\\\\}}crtend.o"
339 // EL-SOFT-MICRO: "[[TC]]/../../../../sysroot/micromipsel-r6-soft/usr/lib/../lib{{/|\\\\}}crtn.o"