[multiple changes]
authorJakub Jelinek <jakub@gcc.gnu.org>
Sun, 26 Jun 2011 07:57:30 +0000 (09:57 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Sun, 26 Jun 2011 07:57:30 +0000 (09:57 +0200)
2011-06-26  Jakub Jelinek  <jakub@redhat.com>

PR tree-optimization/48377
* gcc.dg/vect/pr48377.c: Add dg-require-effective-target
non_strict_align.

2011-06-26  Steve Ellcey  <sje@cup.hp.com>

PR middle-end/49191
* lib/target-supports.exp (check_effective_target_non_strict_align):
New.
* gcc.dg/memcpy-3.c: Add dg-require-effective-target non_strict_align.

From-SVN: r175408

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/memcpy-3.c
gcc/testsuite/gcc.dg/vect/pr48377.c
gcc/testsuite/lib/target-supports.exp

index c0f297671dafb7add170ab6b930298af0aa09b87..01ef0d9544f02fc726f742c5f9efbad4a563694b 100644 (file)
@@ -1,3 +1,16 @@
+2011-06-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/48377
+       * gcc.dg/vect/pr48377.c: Add dg-require-effective-target
+       non_strict_align.
+
+2011-06-26  Steve Ellcey  <sje@cup.hp.com>
+
+       PR middle-end/49191
+       * lib/target-supports.exp (check_effective_target_non_strict_align):
+       New.
+       * gcc.dg/memcpy-3.c: Add dg-require-effective-target non_strict_align.
+
 2011-06-24  Martin Jambor  <mjambor@suse.cz>
 
        PR tree-optimizations/49516
index ba3db56c99dfea1d285a31d7747c77f2585d69e0..3b5693b13efbfaad9d3ab07a4002bba7322552cd 100644 (file)
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-O -fdump-tree-optimized" } */
+/* { dg-require-effective-target non_strict_align } */
 
 int get_int(const void *p)
 {
index b9aaf49ee73ffbf95026b962dbffd5f9730855c6..24846cd042ebebcc73cce93280548402f2c9d130 100644 (file)
@@ -1,4 +1,5 @@
 /* PR tree-optimization/48377 */
+/* { dg-require-effective-target non_strict_align } */
 
 typedef unsigned int U __attribute__((__aligned__ (1), __may_alias__));
 
index b0e69c1c5cec5205824637b8941e8f4a4c551cd4..c69847a6ced37fd7be5f3bc9a669f94d432ede08 100644 (file)
@@ -3962,3 +3962,11 @@ proc check_vect_support_and_set_flags { } {
     return 1
 }
 
+proc check_effective_target_non_strict_align {} {
+    return [check_no_compiler_messages non_strict_align assembly {
+       char *y;
+       typedef char __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))) c;
+       c *z;
+       void foo(void) { z = (c *) y; }
+    } "-Wcast-align"]
+}