]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/gdc.dg/lto/lto.exp
Update copyright years.
[thirdparty/gcc.git] / gcc / testsuite / gdc.dg / lto / lto.exp
CommitLineData
7adcbafe 1# Copyright (C) 2017-2022 Free Software Foundation, Inc.
b4c522fa
IB
2
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
5# the Free Software Foundation; either version 3 of the License, or
6# (at your option) any later version.
7#
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11# GNU General Public License for more details.
12#
13# You should have received a copy of the GNU General Public License
14# along with GCC; see the file COPYING3. If not see
15# <http://www.gnu.org/licenses/>.
16
17# Test link-time optimization across multiple files.
18#
19# Programs are broken into multiple files. Each one is compiled
20# separately with LTO information. The final executable is generated
21# by collecting all the generated object files using regular LTO or WHOPR.
22
23if $tracelevel then {
24 strace $tracelevel
25}
26
27# Load procedures from common libraries.
28load_lib standard.exp
29load_lib gdc-dg.exp
30
31# Load the language-independent compabibility support procedures.
32load_lib lto.exp
33
34# If LTO has not been enabled, bail.
35if { ![check_effective_target_lto] } {
36 return
37}
38
6d9434e5
RO
39# Likewise if the D runtime library is missing.
40if { ![check_effective_target_d_runtime] } {
41 return
42}
43
b4c522fa
IB
44lto_init no-mathlib
45
46# Define an identifier for use with this suite to avoid name conflicts
47# with other lto tests running at the same time.
48set sid "d_lto"
49
50# Main loop.
51foreach src [lsort [find $srcdir/$subdir *_0.d]] {
52 # If we're only testing specific files and this isn't one of them, skip it.
53 if ![runtest_file_p $runtests $src] then {
cc2cc3be 54 continue
b4c522fa
IB
55 }
56
57 lto-execute $src $sid
58}
59
60lto_finish
61