aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Hutchinson <hutchinsonandy@aim.com>2008-06-18 21:41:13 +0000
committerAndy Hutchinson <hutchinsonandy@gcc.gnu.org>2008-06-18 21:41:13 +0000
commit77cacee41732f60acc96a5aaf1488a6b4ee7f8ac (patch)
treed135d9d6dc54d40b5ebf53b3ba679174d0f7a06c
parent0cf7fb1fd8313ba8f792f10b017c5f0d87b89133 (diff)
downloadgcc-77cacee41732f60acc96a5aaf1488a6b4ee7f8ac.zip
gcc-77cacee41732f60acc96a5aaf1488a6b4ee7f8ac.tar.gz
gcc-77cacee41732f60acc96a5aaf1488a6b4ee7f8ac.tar.bz2
limits-fndefn.c: Skip for AVR.
* gcc.c-torture/compile/limits-fndefn.c: Skip for AVR. * gcc.dg/builtins-config.h: Use standard independent __AVR__ symbol. * gcc.dg/cdce1.c: Skip for AVR. * gcc.dg/cdce2.c: Ditto. * gcc.dg/fold-bitand-1.c: Ignore warnings such as alignment. * gcc.dg/fold-eqandshift-3.c: Use long on AVR. * gcc.dg/fold-overflow-1.c: Skip for AVR. * gcc.dg/multiple-overflow-warn-3.c: Use target independent macro for ms bit position. * gcc.dg/pch/struct-1.c: Allow for target without 32 bit int. * gcc.dg/tree-ssa/pr33920.c: Add warning check for AVR. * gcc.dg/ucnid-5.c: Skip for AVR. * gcc.dg/Wconversion-5.c: Mark warning xfail for AVR target. * gcc.dg/Wconversion-real-integer.c: Skip for AVR. * gcc.dg/Wconversion-real.c: Ditto. * gcc.dg/wtr-conversion-1.c: Add warning test for AVR. * gcc.dg/utf-cvt.c: Skip tests and mark excess xfail for AVR. * gcc.dg/Wtype-limits-Wextra.c: Ditto. * gcc.dg/Wtype-limits.c: Ditto. From-SVN: r136918
-rw-r--r--gcc/testsuite/ChangeLog21
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c1
-rw-r--r--gcc/testsuite/gcc.dg/Wconversion-5.c2
-rw-r--r--gcc/testsuite/gcc.dg/Wconversion-real-integer.c2
-rw-r--r--gcc/testsuite/gcc.dg/Wconversion-real.c1
-rw-r--r--gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c11
-rw-r--r--gcc/testsuite/gcc.dg/Wtype-limits.c11
-rw-r--r--gcc/testsuite/gcc.dg/builtins-config.h2
-rw-r--r--gcc/testsuite/gcc.dg/cdce1.c2
-rw-r--r--gcc/testsuite/gcc.dg/cdce2.c2
-rw-r--r--gcc/testsuite/gcc.dg/fold-bitand-1.c5
-rw-r--r--gcc/testsuite/gcc.dg/fold-eqandshift-3.c10
-rw-r--r--gcc/testsuite/gcc.dg/fold-overflow-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/multiple-overflow-warn-3.c3
-rw-r--r--gcc/testsuite/gcc.dg/pch/struct-1.c6
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/pr33920.c2
-rw-r--r--gcc/testsuite/gcc.dg/ucnid-5.c1
-rw-r--r--gcc/testsuite/gcc.dg/utf-cvt.c7
-rw-r--r--gcc/testsuite/gcc.dg/wtr-conversion-1.c6
19 files changed, 69 insertions, 28 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3965595..f9bd049 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,24 @@
+2008-06-18 Andy Hutchinson <hutchinsonandy@aim.com>
+
+ * gcc.c-torture/compile/limits-fndefn.c: Skip for AVR.
+ * gcc.dg/builtins-config.h: Use standard independent __AVR__ symbol.
+ * gcc.dg/cdce1.c: Skip for AVR.
+ * gcc.dg/cdce2.c: Ditto.
+ * gcc.dg/fold-bitand-1.c: Ignore warnings such as alignment.
+ * gcc.dg/fold-eqandshift-3.c: Use long on AVR.
+ * gcc.dg/fold-overflow-1.c: Skip for AVR.
+ * gcc.dg/multiple-overflow-warn-3.c: Use target independent macro for ms bit position.
+ * gcc.dg/pch/struct-1.c: Allow for target without 32 bit int.
+ * gcc.dg/tree-ssa/pr33920.c: Add warning check for AVR.
+ * gcc.dg/ucnid-5.c: Skip for AVR.
+ * gcc.dg/Wconversion-5.c: Mark warning xfail for AVR target.
+ * gcc.dg/Wconversion-real-integer.c: Skip for AVR.
+ * gcc.dg/Wconversion-real.c: Ditto.
+ * gcc.dg/wtr-conversion-1.c: Add warning test for AVR.
+ * gcc.dg/utf-cvt.c: Skip tests and mark excess xfail for AVR.
+ * gcc.dg/Wtype-limits-Wextra.c: Ditto.
+ * gcc.dg/Wtype-limits.c: Ditto.
+
2008-06-18 Joseph Myers <joseph@codesourcery.com>
* gcc.dg/dfp/convert-bfp-6.c, gcc.dg/dfp/convert-bfp-9.c: XFAIL
diff --git a/gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c b/gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c
index 4d2aef0..0c5a2f5 100644
--- a/gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c
+++ b/gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "too complex for avr" { "avr-*-*" } { "*" } { "" } } */
#define LIM1(x) x##0, x##1, x##2, x##3, x##4, x##5, x##6, x##7, x##8, x##9,
#define LIM2(x) LIM1(x##0) LIM1(x##1) LIM1(x##2) LIM1(x##3) LIM1(x##4) \
LIM1(x##5) LIM1(x##6) LIM1(x##7) LIM1(x##8) LIM1(x##9)
diff --git a/gcc/testsuite/gcc.dg/Wconversion-5.c b/gcc/testsuite/gcc.dg/Wconversion-5.c
index a09caae..2b08845 100644
--- a/gcc/testsuite/gcc.dg/Wconversion-5.c
+++ b/gcc/testsuite/gcc.dg/Wconversion-5.c
@@ -19,7 +19,7 @@ void test1 (void)
unsigned char f = (int) uc;
signed char g = (int) sc;
unsigned char h = (unsigned int) (short int) uc;
- signed char i = (int) (unsigned short int) sc; /* { dg-warning "may alter its value" } */
+ signed char i = (int) (unsigned short int) sc; /* { dg-warning "may alter its value" "" { xfail avr-*-* } } */
unsigned char j = (unsigned int) (short int) us; /* { dg-warning "may alter its value" } */
signed char k = (int) (unsigned short int) ss; /* { dg-warning "may alter its value" } */
}
diff --git a/gcc/testsuite/gcc.dg/Wconversion-real-integer.c b/gcc/testsuite/gcc.dg/Wconversion-real-integer.c
index 5911f6a..1c03ba4 100644
--- a/gcc/testsuite/gcc.dg/Wconversion-real-integer.c
+++ b/gcc/testsuite/gcc.dg/Wconversion-real-integer.c
@@ -2,6 +2,7 @@
integers. */
/* { dg-do compile }
+/* { dg-skip-if "doubles are floats,ints are 16bits" { "avr-*-*" } { "*" } { "" } } */
/* { dg-options "-std=c99 -Wconversion" } */
#include <limits.h>
@@ -70,3 +71,4 @@ void h (void)
}
+
diff --git a/gcc/testsuite/gcc.dg/Wconversion-real.c b/gcc/testsuite/gcc.dg/Wconversion-real.c
index 4e79fd2..06396fb 100644
--- a/gcc/testsuite/gcc.dg/Wconversion-real.c
+++ b/gcc/testsuite/gcc.dg/Wconversion-real.c
@@ -1,6 +1,7 @@
/* Test for diagnostics for Wconversion for floating-point. */
/* { dg-do compile } */
+/* { dg-skip-if "doubles are floats" { "avr-*-*" } { "*" } { "" } } */
/* { dg-options "-std=c99 -Wconversion" } */
float vfloat;
diff --git a/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c b/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c
index ae13e73..79fbbd0 100644
--- a/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c
+++ b/gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c
@@ -1,8 +1,8 @@
/* Test that -Wtype-limits is enabled by -Wextra */
/* { dg-do compile } */
+/* { dg-excess-errors "short=int" { target { avr-*-* } } } */
/* { dg-options "-Wextra" } */
-
void a (unsigned char x)
{
if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" } */
@@ -22,10 +22,10 @@ void a (unsigned char x)
void b (unsigned short x)
{
- if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" } */
- if (x >= 0) return;/* { dg-warning "comparison is always true due to limited range of data type" } */
- if (0 > x) return;/* { dg-warning "comparison is always false due to limited range of data type" } */
- if (0 <= x) return;/* { dg-warning "comparison is always true due to limited range of data type" } */
+ if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { ! "avr-*-*" } } } */
+ if (x >= 0) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { ! "avr-*-*" } } } */
+ if (0 > x) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { ! "avr-*-*" } } } */
+ if (0 <= x) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { ! "avr-*-*" } } } */
}
void c (unsigned int x)
@@ -64,3 +64,4 @@ int test (int x)
return 0;
}
+
diff --git a/gcc/testsuite/gcc.dg/Wtype-limits.c b/gcc/testsuite/gcc.dg/Wtype-limits.c
index 64e7da6..5a4605a 100644
--- a/gcc/testsuite/gcc.dg/Wtype-limits.c
+++ b/gcc/testsuite/gcc.dg/Wtype-limits.c
@@ -1,8 +1,8 @@
/* { dg-do compile } */
+/* { dg-excess-errors "short=int" { target { avr-*-* } } } */
/* { dg-options "-Wtype-limits" } */
-
void a (unsigned char x)
{
if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" } */
@@ -22,10 +22,10 @@ void a (unsigned char x)
void b (unsigned short x)
{
- if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" } */
- if (x >= 0) return;/* { dg-warning "comparison is always true due to limited range of data type" } */
- if (0 > x) return;/* { dg-warning "comparison is always false due to limited range of data type" } */
- if (0 <= x) return;/* { dg-warning "comparison is always true due to limited range of data type" } */
+ if (x < 0) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { ! "avr-*-*" } } } */
+ if (x >= 0) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { ! "avr-*-*" } } } */
+ if (0 > x) return;/* { dg-warning "comparison is always false due to limited range of data type" "" { target { ! "avr-*-*" } } } */
+ if (0 <= x) return;/* { dg-warning "comparison is always true due to limited range of data type" "" { target { ! "avr-*-*" } } } */
}
void c (unsigned int x)
@@ -64,3 +64,4 @@ int test (int x)
return 0;
}
+
diff --git a/gcc/testsuite/gcc.dg/builtins-config.h b/gcc/testsuite/gcc.dg/builtins-config.h
index 556e87a..7e375b8 100644
--- a/gcc/testsuite/gcc.dg/builtins-config.h
+++ b/gcc/testsuite/gcc.dg/builtins-config.h
@@ -13,7 +13,7 @@
/* PA HP-UX doesn't have the entire C99 runtime. */
#elif defined(__sgi)
/* Irix6 doesn't have the entire C99 runtime. */
-#elif defined(AVR)
+#elif defined(__AVR__)
/* AVR doesn't have the entire C99 runtime. */
#elif defined(__FreeBSD__) && (__FreeBSD__ < 5)
/* FreeBSD before version 5 doesn't have the entire C99 runtime. */
diff --git a/gcc/testsuite/gcc.dg/cdce1.c b/gcc/testsuite/gcc.dg/cdce1.c
index 7797172..61b19c9 100644
--- a/gcc/testsuite/gcc.dg/cdce1.c
+++ b/gcc/testsuite/gcc.dg/cdce1.c
@@ -1,9 +1,9 @@
/* { dg-do run } */
+/* { dg-skip-if "doubles are floats" { "avr-*-*" } { "*" } { "" } } */
/* { dg-options "-O2 -fmath-errno -fdump-tree-cdce-details -lm" } */
/* { dg-final { scan-tree-dump "cdce1.c:16: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
/* { dg-final { cleanup-tree-dump "cdce" } } */
-
#include <stdlib.h>
#include <math.h>
#include <errno.h>
diff --git a/gcc/testsuite/gcc.dg/cdce2.c b/gcc/testsuite/gcc.dg/cdce2.c
index d79f27e..a461ce7 100644
--- a/gcc/testsuite/gcc.dg/cdce2.c
+++ b/gcc/testsuite/gcc.dg/cdce2.c
@@ -1,9 +1,9 @@
/* { dg-do run } */
+/* { dg-skip-if "doubles are floats" { "avr-*-*" } { "*" } { "" } } */
/* { dg-options "-O2 -fmath-errno -fdump-tree-cdce-details -lm" } */
/* { dg-final { scan-tree-dump "cdce2.c:16: note: function call is shrink-wrapped into error conditions\." "cdce" } }*/
/* { dg-final { cleanup-tree-dump "cdce" } } */
-
#include <stdlib.h>
#include <math.h>
#include <errno.h>
diff --git a/gcc/testsuite/gcc.dg/fold-bitand-1.c b/gcc/testsuite/gcc.dg/fold-bitand-1.c
index 413ed67..f490b15 100644
--- a/gcc/testsuite/gcc.dg/fold-bitand-1.c
+++ b/gcc/testsuite/gcc.dg/fold-bitand-1.c
@@ -1,11 +1,10 @@
/* { dg-do compile } */
-/* { dg-options "-fdump-tree-original" } */
+/* { dg-options "-w -fdump-tree-original" } */
char c1 __attribute__ ((aligned (1)));
char c2 __attribute__ ((aligned (2)));
char c4 __attribute__ ((aligned (4)));
-char c8 __attribute__ ((aligned (8)));
-
+char c8 __attribute__ ((aligned (8)));
unsigned f1(void)
{
return 3 & (__SIZE_TYPE__)&c1;
diff --git a/gcc/testsuite/gcc.dg/fold-eqandshift-3.c b/gcc/testsuite/gcc.dg/fold-eqandshift-3.c
index d3b4adc..5ed744a 100644
--- a/gcc/testsuite/gcc.dg/fold-eqandshift-3.c
+++ b/gcc/testsuite/gcc.dg/fold-eqandshift-3.c
@@ -3,14 +3,22 @@
/* { dg-options "-O2 -fdump-tree-original" } */
void foo (void);
-
+#if(__SIZEOF_INT__ >= 4)
int test1 (int a)
+#else
+int test1 (long a)
+#endif
+
{
if ((a >> 3) & 134217728)
foo ();
}
+#if(__SIZEOF_INT__ >= 4)
int test2 (unsigned int b)
+#else
+int test2 (unsigned long b)
+#endif
{
if ((b >> 3) & 134217728)
foo ();
diff --git a/gcc/testsuite/gcc.dg/fold-overflow-1.c b/gcc/testsuite/gcc.dg/fold-overflow-1.c
index bed8aac..e2b731b 100644
--- a/gcc/testsuite/gcc.dg/fold-overflow-1.c
+++ b/gcc/testsuite/gcc.dg/fold-overflow-1.c
@@ -1,5 +1,5 @@
/* { dg-compile } */
-/* { dg-skip-if "consts are shorts, not longs" { "m32c-*-*" } { "*" } { "" } } */
+/* { dg-skip-if "consts are shorts, not longs" { "m32c-*-*" "avr-*-*" } { "*" } { "" } } */
/* { dg-options "-O -ftrapping-math" } */
/* There should be exactly 2 +Inf in the assembly file. */
diff --git a/gcc/testsuite/gcc.dg/multiple-overflow-warn-3.c b/gcc/testsuite/gcc.dg/multiple-overflow-warn-3.c
index afb4e51..da19de5 100644
--- a/gcc/testsuite/gcc.dg/multiple-overflow-warn-3.c
+++ b/gcc/testsuite/gcc.dg/multiple-overflow-warn-3.c
@@ -5,8 +5,9 @@
short int
g (void)
{
- short int wc = ((short int)1 << 31) - 1; /* { dg-bogus "overflow .* overflow" } */
+ short int wc = ((short int)1 << (8 * __SIZEOF_INT__ - 1)) - 1; /* { dg-bogus "overflow .* overflow" } */
/* { dg-warning "overflow" "" { target *-*-* } 8 } */
return wc;
}
+
diff --git a/gcc/testsuite/gcc.dg/pch/struct-1.c b/gcc/testsuite/gcc.dg/pch/struct-1.c
index 698e88b..9559c07 100644
--- a/gcc/testsuite/gcc.dg/pch/struct-1.c
+++ b/gcc/testsuite/gcc.dg/pch/struct-1.c
@@ -1,4 +1,3 @@
-/* { dg-require-effective-target int32plus } */
#include "struct-1.h"
struct ChainSearchRecord {
@@ -7,6 +6,11 @@ struct ChainSearchRecord {
typedef struct ChainSearchRecord ChainSearchRecord;
void foo (ChainSearchPtr s)
{
+#if(__SIZEOF_INT__ >= 4)
s->identity = 0x6a73616d;
+#else
+ s->identity = 0x616d;
+#endif
}
+
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c b/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c
index 1cece81..55e75d4 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c
@@ -29,7 +29,7 @@ void init_code ()
object V658;
T1240:
- if (V648 >= (long)V651)
+if (V648 >= (long)V651) /* { dg-warning "cast from pointer to integer of different size" "" { target { "avr-*-*" } } } */
goto T1243;
V653 = ((char *) V654->v.v_self)[V648];
V659 = (object) V654 + V653;
diff --git a/gcc/testsuite/gcc.dg/ucnid-5.c b/gcc/testsuite/gcc.dg/ucnid-5.c
index 8cd8606..aea57ef 100644
--- a/gcc/testsuite/gcc.dg/ucnid-5.c
+++ b/gcc/testsuite/gcc.dg/ucnid-5.c
@@ -1,5 +1,6 @@
/* { dg-do run } */
/* { dg-xfail-if "" { "powerpc-ibm-aix*" } { "*" } { "" } } */
+/* { dg-skip-if "No dollar in identfiers" { "avr-*-*" } { "*" } { "" } } */
/* { dg-options "-std=c99 -fdollars-in-identifiers -fextended-identifiers" } */
void abort (void);
diff --git a/gcc/testsuite/gcc.dg/utf-cvt.c b/gcc/testsuite/gcc.dg/utf-cvt.c
index 109d231..5c39644 100644
--- a/gcc/testsuite/gcc.dg/utf-cvt.c
+++ b/gcc/testsuite/gcc.dg/utf-cvt.c
@@ -1,6 +1,7 @@
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Test the char16_t and char32_t promotion rules. */
/* { dg-do compile } */
+/* { dg-excess-errors "short and int are 16bit" { target { "avr-*-*" } } } */
/* { dg-options "-std=gnu99 -Wall -Wconversion -Wsign-conversion" } */
typedef short unsigned int char16_t;
@@ -43,9 +44,9 @@ void m (char16_t c0, char32_t c1)
f_c (c1); /* { dg-warning "alter its value" } */
fsc (c1); /* { dg-warning "alter its value" } */
fuc (c1); /* { dg-warning "alter its value" } */
- f_s (c1); /* { dg-warning "alter its value" } */
- fss (c1); /* { dg-warning "alter its value" } */
- fus (c1); /* { dg-warning "alter its value" } */
+ f_s (c1); /* { dg-warning "alter its value" "" { target { ! "avr-*-*" } } } */
+ fss (c1); /* { dg-warning "alter its value" "" { target { ! "avr-*-*" } } } */
+ fus (c1); /* { dg-warning "alter its value" "" { target { ! "avr-*-*" } } } */
f_i (c1); /* { dg-warning "change the sign" } */
fsi (c1); /* { dg-warning "change the sign" } */
fui (c1);
diff --git a/gcc/testsuite/gcc.dg/wtr-conversion-1.c b/gcc/testsuite/gcc.dg/wtr-conversion-1.c
index 15086f2..72094c2 100644
--- a/gcc/testsuite/gcc.dg/wtr-conversion-1.c
+++ b/gcc/testsuite/gcc.dg/wtr-conversion-1.c
@@ -28,9 +28,9 @@ testfunc1 ()
foo_f (cd); /* { dg-warning "as floating rather than complex" "prototype conversion warning" } */
foo_ld (i); /* { dg-warning "as floating rather than integer" "prototype conversion warning" } */
- foo_ld (f);
- foo_ld (ld);
- foo_ld (cd); /* { dg-warning "as floating rather than complex" "prototype conversion warning" } */
+ foo_ld (f); /* { dg-warning "as 'float' rather than 'double'" "small double" { target { "avr-*-*" } } } */
+ foo_ld (ld);/* { dg-warning "as 'float' rather than 'double'" "small long double" { target { "avr-*-*" } } } */
+ foo_ld (cd);/* { dg-warning "as floating rather than complex" "prototype conversion warning" } */
foo_cd (i); /* { dg-warning "as complex rather than integer" "prototype conversion warning" } */
foo_cd (f); /* { dg-warning "as complex rather than floating" "prototype conversion warning" } */