1# Copyright (C) 1997-2020 Free Software Foundation, Inc.
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# GCC testsuite that uses the `dg.exp' driver.
18
19# Exit immediately if this isn't a x86 target.
20if { ![istarget i?86*-*-*] && ![istarget x86_64-*-*] } then {
21  return
22}
23
24# Load support procs.
25load_lib gcc-dg.exp
26load_lib clearcap.exp
27
28# If a testcase doesn't have special options, use these.
29global DEFAULT_CFLAGS
30if ![info exists DEFAULT_CFLAGS] then {
31    set DEFAULT_CFLAGS " -ansi -pedantic-errors"
32}
33
34# Initialize `dg'.
35dg-init
36clearcap-init
37
38global runtests
39# Special case compilation of vect-args.c so we don't have to
40# replicate it 16 times.
41if [runtest_file_p $runtests $srcdir/$subdir/vect-args.c] {
42  foreach type { "" -mmmx -m3dnow -msse -msse2 -mavx -mavx2 -mavx512f } {
43    foreach level { "" -O } {
44      set flags "$type $level"
45      verbose -log "Testing vect-args, $flags" 1
46      dg-test $srcdir/$subdir/vect-args.c $flags ""
47    }
48  }
49}
50
51# Everything else.
52set tests [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]]
53set tests [prune $tests $srcdir/$subdir/vect-args.c]
54
55# Main loop.
56dg-runtest $tests "" $DEFAULT_CFLAGS
57
58# All done.
59clearcap-finish
60dg-finish
61