diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/pch/pch.exp')
-rw-r--r-- | gcc/testsuite/gcc.dg/pch/pch.exp | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pch/pch.exp b/gcc/testsuite/gcc.dg/pch/pch.exp new file mode 100644 index 000000000..132e595cc --- /dev/null +++ b/gcc/testsuite/gcc.dg/pch/pch.exp @@ -0,0 +1,64 @@ +# Copyright (C) 1997, 2002, 2003, 2007, 2009, 2010 +# Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# <http://www.gnu.org/licenses/>. + +# GCC testsuite for precompiled header interaction, +# that uses the `dg.exp' driver. + +# Load support procs. +load_lib gcc-dg.exp +load_lib dg-pch.exp +load_lib torture-options.exp + +# Initialize `dg'. +dg-init +torture-init +set-torture-options $DG_TORTURE_OPTIONS + +set old_dg_do_what_default "${dg-do-what-default}" + +# Main loop. +foreach test [lsort [glob -nocomplain $srcdir/$subdir/*.c]] { + global torture_without_loops + + # We don't try to use the loop-optimizing options, since they are highly + # unlikely to make any difference to PCH. However, we do want to + # add -O0 -g, since users who want PCH usually want debugging and quick + # compiles. + dg-pch $subdir $test [concat [list {-O0 -g}] $torture_without_loops] ".h" +} + +set test "largefile.c" +set testh "largefile.hs" +set f [open $test w] +puts $f "/* { dg-timeout-factor 4.0 } */" +set v 0 +for { set v 0 } { $v < 10000 } { incr v } { + puts $f "#define MACRO_${v} \"1234567890\" \"$v\"" +} +puts $f "#include \"largefile.h\"" +close $f +set f [open $testh w] +close $f +dg-pch $subdir $test [concat [list {-O0 -g}] $torture_without_loops] ".h" +file delete $test +file delete $testh + +set dg-do-what-default "$old_dg_do_what_default" + +# All done. +torture-finish +dg-finish |