limits-fndefn.c: Skip for AVR.
authorAndy Hutchinson <hutchinsonandy@aim.com>
Wed, 18 Jun 2008 21:41:13 +0000 (21:41 +0000)
committerAndy Hutchinson <hutchinsonandy@gcc.gnu.org>
Wed, 18 Jun 2008 21:41:13 +0000 (21:41 +0000)
* 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

19 files changed:
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/limits-fndefn.c
gcc/testsuite/gcc.dg/Wconversion-5.c
gcc/testsuite/gcc.dg/Wconversion-real-integer.c
gcc/testsuite/gcc.dg/Wconversion-real.c
gcc/testsuite/gcc.dg/Wtype-limits-Wextra.c
gcc/testsuite/gcc.dg/Wtype-limits.c
gcc/testsuite/gcc.dg/builtins-config.h
gcc/testsuite/gcc.dg/cdce1.c
gcc/testsuite/gcc.dg/cdce2.c
gcc/testsuite/gcc.dg/fold-bitand-1.c
gcc/testsuite/gcc.dg/fold-eqandshift-3.c
gcc/testsuite/gcc.dg/fold-overflow-1.c
gcc/testsuite/gcc.dg/multiple-overflow-warn-3.c
gcc/testsuite/gcc.dg/pch/struct-1.c
gcc/testsuite/gcc.dg/tree-ssa/pr33920.c
gcc/testsuite/gcc.dg/ucnid-5.c
gcc/testsuite/gcc.dg/utf-cvt.c
gcc/testsuite/gcc.dg/wtr-conversion-1.c

index 39655958612b242cfcd034c27b3f3005b02e3760..f9bd049d14d2b0afe25e0f65ab8021f91c0bf71e 100644 (file)
@@ -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
index 4d2aef08933d6886a816b6e4a4eeec6db01cb27f..0c5a2f5e774323fb30b21e9a96a76aa94fecd9ad 100644 (file)
@@ -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)
index a09caae4def5479450bcfba33456d46081cd6ead..2b0884525f48d8a3bd5da4c96d44bfa5601a879f 100644 (file)
@@ -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" } */
 }
index 5911f6a778b46fdc446ee0ffbd947160bded1f92..1c03ba487e35ddb832fc54b4254d4f0152dee5d5 100644 (file)
@@ -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)
 }
 
 
+
index 4e79fd20e1321cd30f4db353e30a508938574a16..06396fba33c8022357616c937b43f63e91d2d818 100644 (file)
@@ -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;
index ae13e73ef8b1b71cf177ac152c3912eff0217839..79fbbd00f4429e7121585da323a6300eca684dbc 100644 (file)
@@ -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;
 }
 
+
index 64e7da61c9a03367a378e6fd36e3f045684dc156..5a4605a08d6c393cd75228fd05e1c5e997a99eea 100644 (file)
@@ -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;
 }
 
+
index 556e87adee0319dc469e5d07d6115d09eb3da0ed..7e375b8d6931e52cc6b269f036739f9f07a865b9 100644 (file)
@@ -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. */
index 779717200862d57b93058ed39050642c0e26216e..61b19c9065c43112eb69f2e1ee58c952b7f72625 100644 (file)
@@ -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>
index d79f27e404fff28e2a4575fd285d49d13f8c8bfd..a461ce7ac3088e45e384f4cf6c636626ee3dff0c 100644 (file)
@@ -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>
index 413ed67d2391c8f481b8b6253b6a8f4e4fed1740..f490b153b2d73c6ea5708de0ecf6d6eac9c8f0b7 100644 (file)
@@ -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;
index d3b4adcf76c69710d7d70044c72e9c67f1299f18..5ed744ab536209913def588c601dbf7d2e9e0e57 100644 (file)
@@ -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 ();
index bed8aac9f9bf18bc6d82b5f8e3ef10db09f3686d..e2b731b735aab83164575cf71b445b286b72c3bc 100644 (file)
@@ -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.  */
index afb4e517f287d33e793ad771c77857383026399d..da19de508d41ce9fbf742be0b51f0bcf07fc530b 100644 (file)
@@ -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;
 }
 
+
index 698e88b285aab09cdbcc353ee83134deffa3292d..9559c07e9806a7e83432b4593564ab04a0e84698 100644 (file)
@@ -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
 }
 
+
index 1cece8163d2332f937ba3fee124884330dbf81c4..55e75d48e2b08d8e5d79853185e03d2a755a3e13 100644 (file)
@@ -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;
index 8cd86060dfe1fdebeef1803518c164d96f623082..aea57ef068242836219c54d7d06320a51f50a173 100644 (file)
@@ -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);
 
index 109d231bff4ee209dadd73ca872922f2005369d6..5c39644f9175d179edbea9b2cb49100fc1af434b 100644 (file)
@@ -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);
index 15086f245fe381c87c9b66dc284652ace6c1e642..72094c2184034419140ed6ad2ff0a3b56b0e20ba 100644 (file)
@@ -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" } */