aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2013-10-01 09:18:30 +0000
committerNick Clifton <nickc@gcc.gnu.org>2013-10-01 09:18:30 +0000
commitf1557372804d6b0cbdf1049d8a20c00b54a67d47 (patch)
tree84e20c9ac1a81205144f669314c7c83c4f37b706 /gcc/testsuite
parent818625cf9eb14c87e7ea46471321c38fda7cb6a5 (diff)
downloadgcc-f1557372804d6b0cbdf1049d8a20c00b54a67d47.zip
gcc-f1557372804d6b0cbdf1049d8a20c00b54a67d47.tar.gz
gcc-f1557372804d6b0cbdf1049d8a20c00b54a67d47.tar.bz2
target-supports.exp (check_effective_target_ptr32plus): Fail for MSP430.
* lib/target-supports.exp (check_effective_target_ptr32plus): Fail for MSP430. * gcc.c-torture/compile/20010327-1.c: Only run the test for ptr32plus targets. * gcc.c-torture/compile/pr41181.c: Likewise. * gcc.c-torture/compile/calls.c: Likewise. * gcc.c-torture/compile/990617-1.c: Likewise. * gcc.c-torture/compile/pr55955.c: Only run the test for int32plus targets. * gcc.c-torture/compile/limits-externdecl.c: Likewise. From-SVN: r203055
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog13
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20010327-1.c5
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20020604-1.c3
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20080625-1.c3
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/990617-1.c4
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/calls.c1
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/limits-externdecl.c3
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr41181.c1
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr55955.c1
-rw-r--r--gcc/testsuite/lib/target-supports.exp7
10 files changed, 30 insertions, 11 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 37af098..2e49e45 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,16 @@
+2013-10-01 Nick Clifton <nickc@redhat.com>
+
+ * lib/target-supports.exp (check_effective_target_ptr32plus): Fail
+ for MSP430.
+ * gcc.c-torture/compile/20010327-1.c: Only run the test for
+ ptr32plus targets.
+ * gcc.c-torture/compile/pr41181.c: Likewise.
+ * gcc.c-torture/compile/calls.c: Likewise.
+ * gcc.c-torture/compile/990617-1.c: Likewise.
+ * gcc.c-torture/compile/pr55955.c: Only run the test for
+ int32plus targets.
+ * gcc.c-torture/compile/limits-externdecl.c: Likewise.
+
2013-10-01 Richard Biener <rguenther@suse.de>
PR tree-optimization/58553
diff --git a/gcc/testsuite/gcc.c-torture/compile/20010327-1.c b/gcc/testsuite/gcc.c-torture/compile/20010327-1.c
index ce68f78..7e9c0c7 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20010327-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20010327-1.c
@@ -1,7 +1,4 @@
-/* { dg-skip-if "non-SI pointers" { m32c-*-* } { "*" } { "" } } */
-/* { dg-skip-if "HI mode pointer for avr" { "avr-*-*" } { "*" } { "" } } */
-/* { dg-skip-if "HI mode pointer for pdp11" { "pdp11-*-*" } { "*" } { "" } } */
-/* { dg-skip-if "non-SI pointers for w64" { "x86_64-*-mingw*" } { "*" } { "" } } */
+/* { dg-require-effective-target ptr32plus } */
/* 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 9486583..d2e186a 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20020604-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20020604-1.c
@@ -1,7 +1,6 @@
/* { dg-do assemble } */
-/* { dg-skip-if "The array is too big" { "avr-*-*" "pdp11-*-*" } { "*" } { "" } } */
+/* { dg-require-effective-target ptr32plus } */
/* { dg-xfail-if "The array too big" { "h8300-*-*" } { "-mno-h" "-mn" } { "" } } */
-/* { dg-skip-if "" { m32c-*-* } { } { } } */
/* PR c/6957
This testcase ICEd at -O2 on IA-32, because
diff --git a/gcc/testsuite/gcc.c-torture/compile/20080625-1.c b/gcc/testsuite/gcc.c-torture/compile/20080625-1.c
index 16def2c..4b3b7c2 100644
--- a/gcc/testsuite/gcc.c-torture/compile/20080625-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/20080625-1.c
@@ -1,4 +1,5 @@
-/* { dg-skip-if "too much data" { "avr-*-*" "m32c-*-*" "pdp11-*-*" } { "*" } { "" } } */
+/* { dg-require-effective-target int32plus } */
+
struct peakbufStruct {
unsigned int lnum [5000];
int lscan [5000][4000];
diff --git a/gcc/testsuite/gcc.c-torture/compile/990617-1.c b/gcc/testsuite/gcc.c-torture/compile/990617-1.c
index e9d3cf3..350b96a 100644
--- a/gcc/testsuite/gcc.c-torture/compile/990617-1.c
+++ b/gcc/testsuite/gcc.c-torture/compile/990617-1.c
@@ -1,7 +1,5 @@
-/* 0x70000000 is too large a constant to become a pointer on
- xstormy16. */
/* { dg-do assemble } */
-/* { dg-xfail-if "" { xstormy16-*-* } { "*" } { "" } } */
+/* { dg-require-effective-target ptr32plus } */
int main()
{
diff --git a/gcc/testsuite/gcc.c-torture/compile/calls.c b/gcc/testsuite/gcc.c-torture/compile/calls.c
index 1582c0e..1241058 100644
--- a/gcc/testsuite/gcc.c-torture/compile/calls.c
+++ b/gcc/testsuite/gcc.c-torture/compile/calls.c
@@ -1,3 +1,4 @@
+/* { dg-require-effective-target ptr32plus } */
typedef void *(*T)(void);
f1 ()
{
diff --git a/gcc/testsuite/gcc.c-torture/compile/limits-externdecl.c b/gcc/testsuite/gcc.c-torture/compile/limits-externdecl.c
index 6899d4b..17afe73 100644
--- a/gcc/testsuite/gcc.c-torture/compile/limits-externdecl.c
+++ b/gcc/testsuite/gcc.c-torture/compile/limits-externdecl.c
@@ -1,3 +1,4 @@
+/* { dg-require-effective-target int32plus } */
/* Inspired by the test case for PR middle-end/52640. */
typedef struct
@@ -52,4 +53,4 @@ LIM5 (X);
REFERENCE references[] = {
LIM5 (X)
0
-}; /* { dg-error "size of array is too large" "" { target avr-*-* } } */
+};
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr41181.c b/gcc/testsuite/gcc.c-torture/compile/pr41181.c
index 5fafb02..e1e4806 100644
--- a/gcc/testsuite/gcc.c-torture/compile/pr41181.c
+++ b/gcc/testsuite/gcc.c-torture/compile/pr41181.c
@@ -1,3 +1,4 @@
+/* { dg-require-effective-target ptr32plus } */
/* { dg-skip-if "The array is too big" { "avr-*-*" "pdp11-*-*" } { "*" } { "" } } */
char paths[1024];
static void x264_slicetype_path(char (*best_paths)[250], int n, int length)
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr55955.c b/gcc/testsuite/gcc.c-torture/compile/pr55955.c
index 2656ffb..cd96d56 100644
--- a/gcc/testsuite/gcc.c-torture/compile/pr55955.c
+++ b/gcc/testsuite/gcc.c-torture/compile/pr55955.c
@@ -1,3 +1,4 @@
+/* { dg-require-effective-target int32plus } */
/* PR tree-optimization/55955 */
int b;
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index f997031..7eb4dfe 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -1751,6 +1751,13 @@ proc check_effective_target_int32plus { } {
# options, 0 otherwise.
proc check_effective_target_ptr32plus { } {
+ # The msp430 has 16-bit or 20-bit pointers. The 20-bit pointer is stored
+ # in a 32-bit slot when in memory, so sizeof(void *) returns 4, but it
+ # cannot really hold a 32-bit address, so we always return false here.
+ if { [istarget msp430-*-*] } {
+ return 0
+ }
+
return [check_no_compiler_messages ptr32plus object {
int dummy[sizeof (void *) >= 4 ? 1 : -1];
}]