1#   Copyright (C) 2005-2018 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 PowerPC target.
20if { ![istarget powerpc*-*-*] && ![istarget rs6000-*-*] } then {
21  return
22}
23
24# Load support procs.
25load_lib gcc-dg.exp
26load_lib torture-options.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
36
37# Main loop.
38dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] \
39	"" $DEFAULT_CFLAGS
40
41set SAVRES_TEST_OPTS [list -Os -O2 {-Os -mno-multiple} {-O2 -mno-multiple}]
42set alti ""
43if [check_vmx_hw_available] {
44    set alti "-maltivec"
45}
46torture-init
47set-torture-options $SAVRES_TEST_OPTS
48gcc-dg-runtest [list $srcdir/$subdir/savres.c] "" $alti
49
50# All done.
51torture-finish
52
53torture-init
54# Test load/store builtins at multiple optimizations
55set-torture-options [list -O0 -Os -O1 -O2 -O3]
56gcc-dg-runtest [list $srcdir/$subdir/builtins-4-runnable.c \
57		$srcdir/$subdir/builtins-4-int128-runnable.c \
58		$srcdir/$subdir/builtins-6-runnable.c \
59		$srcdir/$subdir/builtins-5-p9-runnable.c \
60	       	$srcdir/$subdir/builtins-6-p9-runnable.c] "" $DEFAULT_CFLAGS
61
62# All done.
63torture-finish
64
65dg-finish
66