From: Kyrylo Tkachov Date: Thu, 11 Dec 2014 09:43:53 +0000 (+0000) Subject: [testsuite][1/2] Move ${tool}_check_unsupported_p into separate file X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f63950e56178b03d3adffc818b247eb6e1c6d340;p=gcc.git [testsuite][1/2] Move ${tool}_check_unsupported_p into separate file * lib/target-utils.exp: New file. * lib/gcc-defs.exp (${tool}_check_unsupported_p): Delete. Include target-utils.exp. * lib/objc.exp: Likewise. * lib/mike-gcc.exp: Load target-utils.exp. * lib/mike-g++.exp: Likewise. * lib/go-torture.exp: Likewise. * lib/fortran-torture.exp: Likewise. * lib/c-torture.exp: Likewise. From-SVN: r218620 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8b67fcff571..aab05553f06 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,15 @@ +2014-12-11 Kyrylo Tkachov kyrylo.tkachov@arm.com + + * lib/target-utils.exp: New file. + * lib/gcc-defs.exp (${tool}_check_unsupported_p): Delete. + Include target-utils.exp. + * lib/objc.exp: Likewise. + * lib/mike-gcc.exp: Load target-utils.exp. + * lib/mike-g++.exp: Likewise. + * lib/go-torture.exp: Likewise. + * lib/fortran-torture.exp: Likewise. + * lib/c-torture.exp: Likewise. + 2014-12-10 Ilya Tocar * gcc.target/i386/funcspec-5.c: Test avx512f and knl. diff --git a/gcc/testsuite/lib/c-torture.exp b/gcc/testsuite/lib/c-torture.exp index fde76fde893..3e339620afb 100644 --- a/gcc/testsuite/lib/c-torture.exp +++ b/gcc/testsuite/lib/c-torture.exp @@ -19,6 +19,7 @@ load_lib target-supports.exp load_lib file-format.exp load_lib target-libpath.exp +load_lib target-utils.exp # The default option list can be overridden by # TORTURE_OPTIONS="{ { list1 } ... { listN } }" diff --git a/gcc/testsuite/lib/fortran-torture.exp b/gcc/testsuite/lib/fortran-torture.exp index e7abac81581..cbc3427f6c0 100644 --- a/gcc/testsuite/lib/fortran-torture.exp +++ b/gcc/testsuite/lib/fortran-torture.exp @@ -22,6 +22,7 @@ load_lib target-supports.exp load_lib fortran-modules.exp +load_lib target-utils.exp # Return the list of options to use for fortran torture tests. # The default option list can be overridden by diff --git a/gcc/testsuite/lib/gcc-defs.exp b/gcc/testsuite/lib/gcc-defs.exp index d4796674f3a..a9c0d615dd2 100644 --- a/gcc/testsuite/lib/gcc-defs.exp +++ b/gcc/testsuite/lib/gcc-defs.exp @@ -18,6 +18,8 @@ load_lib target-libpath.exp load_lib wrapper.exp +load_lib target-utils.exp + # # ${tool}_check_compile -- Reports and returns pass/fail for a compilation # @@ -145,34 +147,6 @@ proc ${tool}_exit { } { unset gluefile } } - -# -# ${tool}_check_unsupported_p -- Check the compiler(/assembler/linker) output -# for text indicating that the testcase should be marked as "unsupported" -# -# Utility used by mike-gcc.exp and c-torture.exp. -# When dealing with a large number of tests, it's difficult to weed out the -# ones that are too big for a particular cpu (eg: 16 bit with a small amount -# of memory). There are various ways to deal with this. Here's one. -# Fortunately, all of the cases where this is likely to happen will be using -# gld so we can tell what the error text will look like. -# - -proc ${tool}_check_unsupported_p { output } { - if [regexp "(^|\n)\[^\n\]*: region \[^\n\]* is full" $output] { - return "memory full" - } - if { [regexp "(^|\n)\[^\n\]*: relocation truncated to fit" $output] - && [check_effective_target_tiny] } { - return "memory full" - } - - if { [istarget spu-*-*] && \ - [string match "*exceeds local store*" $output] } { - return "memory full" - } - return "" -} # # runtest_file_p -- Provide a definition for older dejagnu releases diff --git a/gcc/testsuite/lib/go-torture.exp b/gcc/testsuite/lib/go-torture.exp index d37d475874d..fc2f5596b72 100644 --- a/gcc/testsuite/lib/go-torture.exp +++ b/gcc/testsuite/lib/go-torture.exp @@ -22,6 +22,8 @@ load_lib target-supports.exp +load_lib target-utils.exp + # The default option list can be overridden by # TORTURE_OPTIONS="{ { list1 } ... { listN } }" diff --git a/gcc/testsuite/lib/mike-g++.exp b/gcc/testsuite/lib/mike-g++.exp index d5f31a8ecdf..e60dff8e389 100644 --- a/gcc/testsuite/lib/mike-g++.exp +++ b/gcc/testsuite/lib/mike-g++.exp @@ -16,6 +16,8 @@ # This file was written by Mike Stump +load_lib target-utils.exp + # # mike_cleanup -- remove any files that are created by the testcase # diff --git a/gcc/testsuite/lib/mike-gcc.exp b/gcc/testsuite/lib/mike-gcc.exp index 68cca239b03..b2705e6e179 100644 --- a/gcc/testsuite/lib/mike-gcc.exp +++ b/gcc/testsuite/lib/mike-gcc.exp @@ -16,6 +16,8 @@ # This file was derived from mike-g++.exp written by Mike Stump +load_lib target-utils.exp + # # mike_cleanup -- remove any files that are created by the testcase # diff --git a/gcc/testsuite/lib/objc.exp b/gcc/testsuite/lib/objc.exp index c0b4da7360c..976ef8793ce 100644 --- a/gcc/testsuite/lib/objc.exp +++ b/gcc/testsuite/lib/objc.exp @@ -29,6 +29,7 @@ load_lib prune.exp load_lib gcc-defs.exp load_lib timeout.exp load_lib target-libpath.exp +load_lib target-utils.exp # # OBJC_UNDER_TEST is the compiler under test. @@ -343,27 +344,6 @@ if { [info procs prune_warnings] == "" } then { } } -# Utility used by mike-gcc.exp and c-torture.exp. -# Check the compiler(/assembler/linker) output for text indicating that -# the testcase should be marked as "unsupported". -# -# When dealing with a large number of tests, it's difficult to weed out the -# ones that are too big for a particular cpu (eg: 16 bit with a small amount -# of memory). There are various ways to deal with this. Here's one. -# Fortunately, all of the cases where this is likely to happen will be using -# gld so we can tell what the error text will look like. - -proc ${tool}_check_unsupported_p { output } { - if [regexp "(^|\n)\[^\n\]*: region \[^\n\]* is full" $output] { - return "memory full" - } - if { [regexp "(^|\n)\[^\n\]*: relocation truncated to fit" $output] - && [check_effective_target_tiny] } { - return "memory full" - } - return "" -} - # Prune messages from objc that aren't useful. proc prune_objc_output { text } { diff --git a/gcc/testsuite/lib/target-utils.exp b/gcc/testsuite/lib/target-utils.exp new file mode 100644 index 00000000000..1f52adb1d1b --- /dev/null +++ b/gcc/testsuite/lib/target-utils.exp @@ -0,0 +1,44 @@ +# Copyright (C) 2014 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 +# . + +# +# ${tool}_check_unsupported_p -- Check the compiler(/assembler/linker) output +# for text indicating that the testcase should be marked as "unsupported" +# +# When dealing with a large number of tests, it's difficult to weed out the +# ones that are too big for a particular cpu (eg: 16 bit with a small amount +# of memory). There are various ways to deal with this. Here's one. +# Fortunately, all of the cases where this is likely to happen will be using +# gld so we can tell what the error text will look like. +# + +load_lib target-supports.exp + +proc ${tool}_check_unsupported_p { output } { + if [regexp "(^|\n)\[^\n\]*: region \[^\n\]* is full" $output] { + return "memory full" + } + if { [regexp "(^|\n)\[^\n\]*: relocation truncated to fit" $output] + && [check_effective_target_tiny] } { + return "memory full" + } + + if { [istarget spu-*-*] && \ + [string match "*exceeds local store*" $output] } { + return "memory full" + } + return "" +}