Home | History | Annotate | Download | only in ld-plugin

Lines Matching refs:lto

1 # Expect script for ld-plugin LTO tests
21 # These tests require plugin and LTO.
59 set lto_fat "-ffat-lto-objects"
62 # Simple LTO tests and generate input files for complex LTO tests.
64 [list "LTO 1" \
66 {lto-1a.c lto-1b.c} {} "lto-1.exe"] \
69 {lto-2.c} {} ""] \
70 [list "LTO 2" \
71 "-static -O2 -flto -fuse-linker-plugin tmpdir/lto-2.o -lm" "" \
72 {dummy.c} {} "lto-2.exe"] \
75 {lto-3a.c} {} ""] \
78 {lto-3c.c} {} ""] \
81 {lto-3b.c} {} "liblto-3.a"] \
84 {lto-5a.c} {} ""] \
87 {lto-5b.c} {} ""] \
88 [list "LTO 6" \
90 {lto-6.c} {} "lto-6.exe" "c"] \
93 {lto-9.cc} {} "" "c++"] \
96 {lto-11a.c} {} ""] \
99 {lto-11b.c} {} ""] \
102 {lto-11c.c} {} ""] \
105 {lto-12c.c} {} "liblto-12.a"] \
108 {lto-12a.c lto-12b.c} {} ""] \
111 {lto-13a.c lto-13b.c} {} ""] \
114 {lto-13c.c} {} "liblto-13.a"] \
117 {lto-14a.c lto-14b.c} {} ""] \
120 {lto-14c.c} {} "liblto-14.a"] \
123 {lto-15a.c} {} ""] \
126 {lto-15b.c} {} "liblto-15.a"] \
188 # Generate input files for complex LTO tests for ELF.
192 {lto-7a.c lto-7b.c lto-7c.c} {} ""] \
195 {lto-7d.c} {} "liblto-7.so" "c"] \
198 {lto-8a.c} {} ""] \
201 {lto-8b.c} {} ""] \
204 {lto-17a.c} {{"nm" {} "lto-17a.d"}} "liblto-17a.so" "c"] \
206 "-shared -O2 -fpic -flto -fuse-linker-plugin tmpdir/lto-17a.o" "-O2 -fpic -flto" \
207 {lto-17b.c} {{"nm" {} "lto-17b-1.d"}} "liblto-17b.so"] \
209 "-shared -O2 -fpic -flto -fuse-linker-plugin tmpdir/lto-17a.o" "-O2 -fpic -flto" \
210 {lto-17b.c} {{"nm" {} "lto-17b-2.d"}} "liblto-17b.so"] \
254 [list "LTO 3 symbol" \
255 "-O2 -flto -fuse-linker-plugin tmpdir/lto-3a.o tmpdir/lto-3c.o tmpdir/liblto-3.a" "" \
256 {dummy.c} {{"nm" {} "lto-3.d"}} "lto-3.exe" "c"] \
257 [list "LTO 5 symbol" \
258 "-O2 -flto -fuse-linker-plugin tmpdir/lto-5.o" "" \
259 {dummy.c} {{"nm" {} "lto-5.d"}} "lto-5.exe" "c"] \
260 [list "LTO 9 symbol" \
261 "-O2 -flto -fuse-linker-plugin tmpdir/lto-9.o" "" \
262 {dummy.c} {{"nm" {-C} "lto-9.d"}} "lto-9.exe" "c++"] \
263 [list "LTO 16a symbol" \
265 {lto-16a.c} {{"nm" {} "lto-16a.d"}} "lto-16.exe" "c"] \
266 [list "LTO 16b symbol" \
268 {lto-16a.c lto-16b.c} {{"nm" {} "lto-16b.d"}} "lto-16b.exe" "c"] \
274 # LTO run-time tests.
276 [list "LTO 3a" \
277 "-O2 -flto -fuse-linker-plugin tmpdir/lto-3a.o tmpdir/lto-3c.o tmpdir/liblto-3.a" "" \
278 {dummy.c} "lto-3b.exe" "lto-3.out" "" "c"] \
279 [list "LTO 3b" \
280 "-O2 -flto -fuse-linker-plugin tmpdir/lto-3a.o tmpdir/lto-3c.o tmpdir/lto-3.o" "" \
281 {dummy.c} "lto-3c.exe" "lto-3.out" "" "c"] \
282 [list "LTO 3c" \
283 "-O2 -flto -fuse-linker-plugin tmpdir/lto-3a.o tmpdir/lto-3c.o -Wl,--whole-archive tmpdir/liblto-3.a -Wl,--no-whole-archive tmpdir/liblto-3.a" "" \
284 {dummy.c} "lto-3d.exe" "lto-3.out" "" "c"] \
285 [list "LTO 5" \
286 "-O2 -flto -fuse-linker-plugin tmpdir/lto-5.o" "" \
287 {dummy.c} "lto-5.exe" "lto-5.out" "" "c"] \
288 [list "LTO 11" \
290 {dummy.c} "lto-11.exe" "lto-11.out" "" "c"] \
291 [list "LTO 12a" \
292 "-O -flto -fuse-linker-plugin tmpdir/lto-12a.o tmpdir/liblto-12.a tmpdir/lto-12b.o" "" \
293 {dummy.c} "lto-12a.exe" "lto-12.out" "" "c"] \
294 [list "LTO 12b" \
295 "-O -flto -fuse-linker-plugin tmpdir/lto-12a.o tmpdir/lto-12b.o tmpdir/liblto-12.a" "" \
296 {dummy.c} "lto-12b.exe" "lto-12.out" "" "c"] \
297 [list "LTO 13" \
298 "-O -flto -fuse-linker-plugin tmpdir/lto-13a.o tmpdir/liblto-13.a tmpdir/lto-13b.o" "" \
299 {dummy.c} "lto-13.exe" "lto-13.out" "" "c"] \
300 [list "LTO 14" \
301 "-O2 -flto -fuse-linker-plugin tmpdir/lto-14a.o -Wl,--whole-archive tmpdir/liblto-14.a -Wl,--no-whole-archive tmpdir/lto-14b.o" "" \
302 {dummy.c} "lto-14.exe" "lto-14.out" "" "c"] \
303 [list "LTO 15" \
304 "-O2 -flto -fuse-linker-plugin -Wl,--start-group tmpdir/liblto-15.a tmpdir/lto-15a.o -Wl,--end-group" "" \
305 {dummy.c} "lto-15.exe" "lto-15.out" "" "c"] \
328 # LTO run-time tests for ELF
330 [list "LTO 7" \
331 "-O2 -flto -fuse-linker-plugin tmpdir/lto-7b.o tmpdir/lto-7c.o tmpdir/lto-7a.o -Wl,--no-as-needed tmpdir/liblto-7.so" "" \
332 {dummy.c} "lto-7.exe" "lto-7.out" "" "c"] \
333 [list "LTO 8" \
334 "-O2 -flto -fuse-linker-plugin tmpdir/lto-8b.o tmpdir/lto-8a.o" "" \
335 {dummy.c} "lto-8.exe" "lto-8.out" "" "c"] \
336 [list "LTO TLS IE" \
371 set catch_output [run_host_cmd "$ar" "rc $plug_opt tmpdir/liblto-11.a tmpdir/lto-11a.o tmpdir/lto-11b.o tmpdir/lto-11c.o"]
379 # Check expected LTO linker errors.
389 # Run "ld -r" to generate inputs for complex LTO tests.
390 run_dump_test "lto-3r"
391 remote_exec host "mv" "tmpdir/dump tmpdir/lto-3.o"
392 run_dump_test "lto-5r"
393 remote_exec host "mv" "tmpdir/dump tmpdir/lto-5.o"