aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAndy Hutchinson <hutchinsonandy@aim.com>2008-04-09 23:58:39 +0000
committerAndy Hutchinson <hutchinsonandy@gcc.gnu.org>2008-04-09 23:58:39 +0000
commita21f9a561f960c29ded7af4269bad4bbedc5bfae (patch)
tree93123ce580ee8e5cc8c378df792063e7fff66774 /gcc
parentdf79488418903fda527f6a6b88e84b1f1d598526 (diff)
downloadgcc-a21f9a561f960c29ded7af4269bad4bbedc5bfae.zip
gcc-a21f9a561f960c29ded7af4269bad4bbedc5bfae.tar.gz
gcc-a21f9a561f960c29ded7af4269bad4bbedc5bfae.tar.bz2
re PR testsuite/34894 (Some compile tests require trampolines even when the target sets no_trampolines)
2008-04-09 Andy Hutchinson <hutchinsonandy@aim.com> PR testsuite/34894 PR testsuite/33782 * lib/target-supports.dg: Add check_effective_target_trampolines. Disable profiling for avr-*-*. * gcc.c-torture/compile/pr27889.c: dg-requires trampolines. * gcc.c-torture/compile/nested-1.c: Ditto. * gcc.c-torture/compile/20050122-2.c: Ditto. * gcc.c-torture/compile/20010226-1.c: Ditto. * gcc.c-torture/compile/20010327-1.c: Skip for avr-*-*. * gcc.c-torture/compile/980506-1.c: Ditto. * gcc.c-torture/compile/20020604-1.c: Ditto. * gcc.c-torture/compile/limits-stringlit.c: Ditto * gcc.c-torture/compile/20001226-1.c: Ditto From-SVN: r134153
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog16
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20001226-1.c1
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20010226-1.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20010327-1.c1
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20020604-1.c1
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20050122-2.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/980506-1.c1
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/nested-1.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr27889.c2
-rw-r--r--gcc/testsuite/lib/target-supports.exp16
11 files changed, 46 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3e091a4..c82950a 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,19 @@
+2008-04-09 Andy Hutchinson <hutchinsonandy@aim.com>
+
+ PR testsuite/34894
+ PR testsuite/33782
+ * lib/target-supports.dg: Add check_effective_target_trampolines.
+ Disable profiling for avr-*-*.
+ * gcc.c-torture/compile/pr27889.c: dg-requires trampolines.
+ * gcc.c-torture/compile/nested-1.c: Ditto.
+ * gcc.c-torture/compile/20050122-2.c: Ditto.
+ * gcc.c-torture/compile/20010226-1.c: Ditto.
+ * gcc.c-torture/compile/20010327-1.c: Skip for avr-*-*.
+ * gcc.c-torture/compile/980506-1.c: Ditto.
+ * gcc.c-torture/compile/20020604-1.c: Ditto.
+ * gcc.c-torture/compile/limits-stringlit.c: Ditto
+ * gcc.c-torture/compile/20001226-1.c: Ditto
+
2008-04-09 Jason Merrill <jason@redhat.com>
PR c++/35708
diff --git a/gcc/testsuite/gcc.c-torture/compile/20001226-1.c b/gcc/testsuite/gcc.c-torture/compile/20001226-1.c
index ddea0aa..cfcf546 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20001226-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20001226-1.c
@@ -2,6 +2,7 @@
than 64K. */
/* { dg-do assemble } */
/* { dg-xfail-if "function larger than 64K" { m6811-*-* } { "*" } { "" } } */
+/* { dg-skip-if "too much code for avr" { "avr-*-*" } { "*" } { "" } } */
/* { dg-xfail-if "jump beyond 128K not supported" { xtensa-*-* } { "-O0" } { "" } } */
/* { dg-skip-if "" { m32c-*-* } { "*" } { "" } } */
diff --git a/gcc/testsuite/gcc.c-torture/compile/20010226-1.c b/gcc/testsuite/gcc.c-torture/compile/20010226-1.c
index c06be53..f25b483 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20010226-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20010226-1.c
@@ -1,3 +1,5 @@
+/* { dg-require-effective-target trampolines } */
+
void f1 (void *);
void f3 (void *, void (*)(void *));
void f2 (void *);
diff --git a/gcc/testsuite/gcc.c-torture/compile/20010327-1.c b/gcc/testsuite/gcc.c-torture/compile/20010327-1.c
index 189990a..59639e6 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20010327-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20010327-1.c
@@ -1,4 +1,5 @@
/* { dg-skip-if "non-SI pointers" { m32c-*-* } { "*" } { "" } } */
+/* { dg-skip-if "HI mode pointer for avr" { "avr-*-*" } { "*" } { "" } } */
/* This testcase tests whether GCC can produce static initialized data
that references addresses of size 'unsigned long', even if that's not
diff --git a/gcc/testsuite/gcc.c-torture/compile/20020604-1.c b/gcc/testsuite/gcc.c-torture/compile/20020604-1.c
index 539b9f5..17b9b21 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20020604-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20020604-1.c
@@ -1,5 +1,6 @@
/* { dg-do assemble } */
/* { dg-xfail-if "The array is too big" { "m6811-*-* m6812-*-*" } { "*" } { "" } } */
+/* { dg-skip-if "The array is too big" { "avr-*-*" } { "*" } { "" } } */
/* { dg-xfail-if "The array too big" { "h8300-*-*" } { "-mno-h" "-mn" } { "" } } */
/* { dg-skip-if "" { m32c-*-* } { } { } } */
diff --git a/gcc/testsuite/gcc.c-torture/compile/20050122-2.c b/gcc/testsuite/gcc.c-torture/compile/20050122-2.c
index d73f624..1e297be 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20050122-2.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20050122-2.c
@@ -1,4 +1,6 @@
/* Related to PR 19484. */
+/* { dg-require-effective-target trampolines } */
+
extern void foo (void) __attribute__((noreturn));
int n;
diff --git a/gcc/testsuite/gcc.c-torture/compile/980506-1.c b/gcc/testsuite/gcc.c-torture/compile/980506-1.c
index 619e18d..5c22e7e 100644
--- a/gcc/testsuite/gcc.c-torture/compile/980506-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/980506-1.c
@@ -2,6 +2,7 @@
/* { dg-do assemble } */
/* { dg-require-effective-target size32plus } */
/* { dg-xfail-if "The array too big" { m6811-*-* m6812-*-* } { "*" } { "" } } /*
+/* { dg-skip-if "Array too big" { "avr-*-*" } { "*" } { "" } } */
/* { dg-xfail-if "The array too big" { h8300-*-* } { "-mno-h" "-mn" } { "" } } */
unsigned char TIFFFax2DMode[20][256];
diff --git a/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c b/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c
index 22dc19b..5b52c83 100644
--- a/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c
+++ b/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c
@@ -1,3 +1,5 @@
+/* { dg-skip-if "Array too big" { "avr-*-*" } { "*" } { "" } } */
+
#define STR2 "012345678901234567890123456789012345678901234567890123456789\
0123456789012345678901234567890123456789"
#define STR3 STR2 STR2 STR2 STR2 STR2 STR2 STR2 STR2 STR2 STR2
diff --git a/gcc/testsuite/gcc.c-torture/compile/nested-1.c b/gcc/testsuite/gcc.c-torture/compile/nested-1.c
index b6aa79d..135538a 100644
--- a/gcc/testsuite/gcc.c-torture/compile/nested-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/nested-1.c
@@ -1,3 +1,5 @@
+/* { dg-require-effective-target trampolines } */
+
typedef __SIZE_TYPE__ size_t;
extern int printf (const char *, ...);
extern void *memset (void *, int, size_t);
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr27889.c b/gcc/testsuite/gcc.c-torture/compile/pr27889.c
index ca50fce..4e76caa 100644
--- a/gcc/testsuite/gcc.c-torture/compile/pr27889.c
+++ b/gcc/testsuite/gcc.c-torture/compile/pr27889.c
@@ -1,3 +1,5 @@
+/* { dg-require-effective-target trampolines } */
+
void h(void (*)(void));
_Complex int g (void)
{
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index c1bdc79..180ce86 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -383,6 +383,21 @@ proc check_gc_sections_available { } {
return $gc_sections_available_saved
}
+# Return 1 if according to target_info struct and explicit target list
+# target is supposed to support trampolines.
+
+proc check_effective_target_trampolines { } {
+ if [target_info exists no_trampolines] {
+ return 0
+ }
+ if { [istarget avr-*-*]
+ || [istarget hppa2.0w-hp-hpux11.23]
+ || [istarget hppa64-hp-hpux11.23] } {
+ return 0;
+ }
+ return 1
+}
+
# Return true if profiling is supported on the target.
proc check_profiling_available { test_what } {
@@ -435,6 +450,7 @@ proc check_profiling_available { test_what } {
|| [istarget arm*-*-eabi*]
|| [istarget arm*-*-elf]
|| [istarget arm*-*-symbianelf*]
+ || [istarget avr-*-*]
|| [istarget bfin-*-*]
|| [istarget powerpc-*-eabi*]
|| [istarget strongarm*-*-elf]