summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/testsuite/ChangeLog12
-rw-r--r--gcc/testsuite/lib/c-torture.exp1
-rw-r--r--gcc/testsuite/lib/fortran-torture.exp1
-rw-r--r--gcc/testsuite/lib/gcc-defs.exp30
-rw-r--r--gcc/testsuite/lib/go-torture.exp2
-rw-r--r--gcc/testsuite/lib/mike-g++.exp2
-rw-r--r--gcc/testsuite/lib/mike-gcc.exp2
-rw-r--r--gcc/testsuite/lib/objc.exp22
-rw-r--r--gcc/testsuite/lib/target-utils.exp44
9 files changed, 67 insertions, 49 deletions
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 <ilya.tocar@intel.com>
* 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 <mrs@cygnus.com>
+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 <mrs@cygnus.com>
+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
+# <http://www.gnu.org/licenses/>.
+
+#
+# ${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 ""
+}