Hello!

These two tests require non_strict_aligned effective target, since IPA
fails in tree_non_mode_aligned_mem_p () for "cow" and "calf"
candidates for STRICT_ALIGNMENT targets. Mode alignment requires 32
bytes, while data is aligned to 8 bytes.

2011-10-19  Uros Bizjak  <ubiz...@gmail.com>

        * gcc.dg/ipa/ipa-sra-2.c: Add dg-require-effective-target
        non_strict_align.
        * gcc.dg/ipa/ipa-sra-6.c: Ditto.

Tested on x86_64-pc-linux-gnu and alphaev68-pc-linux-gnu, where the
patch "fixes":

FAIL: gcc.dg/ipa/ipa-sra-2.c scan-tree-dump eipa_sra "About to replace
expr cow_.*D.->red with \\*ISRA"
FAIL: gcc.dg/ipa/ipa-sra-2.c scan-tree-dump eipa_sra "About to replace
expr cow_.*D.->green with ISRA"
FAIL: gcc.dg/ipa/ipa-sra-2.c scan-tree-dump eipa_sra "About to replace
expr calf_.*D.->red with \\*ISRA"
FAIL: gcc.dg/ipa/ipa-sra-2.c scan-tree-dump eipa_sra "About to replace
expr calf_.*D.->green with ISRA"
FAIL: gcc.dg/ipa/ipa-sra-6.c scan-tree-dump-times eipa_sra "foo " 1

OK for mainline and 4.6 branch?

Uros.
Index: gcc.dg/ipa/ipa-sra-2.c
===================================================================
--- gcc.dg/ipa/ipa-sra-2.c      (revision 180193)
+++ gcc.dg/ipa/ipa-sra-2.c      (working copy)
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-O2 -fipa-sra -fdump-tree-eipa_sra-details"  } */
+/* { dg-require-effective-target non_strict_align } */
 
 struct bovid
 {
Index: gcc.dg/ipa/ipa-sra-6.c
===================================================================
--- gcc.dg/ipa/ipa-sra-6.c      (revision 180193)
+++ gcc.dg/ipa/ipa-sra-6.c      (working copy)
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-O2 -fipa-sra -fdump-tree-eipa_sra-slim"  } */
+/* { dg-require-effective-target non_strict_align } */
 
 struct bovid
 {

Reply via email to