Hi, The loops in gcc.dg/vect/vect-peel-3.c and vect-peel-4.c have memory accesses with different misalignment values that cannot all be aligned by peeling. Therefore, these tests are not supposed to get vectorized on vect_no_align targets. This patch xfails the vectorization for such cases.
Tested on powerpc64-suse-linux and by Steve on IA64. Committed as obvious. Ira testsuite/ChangeLog: * gcc.dg/vect/vect-peel-3.c: Expect to fail on vect_no_align targets. * gcc.dg/vect/vect-peel-4.c: Likewise. Index: testsuite/gcc.dg/vect/vect-peel-3.c =================================================================== --- testsuite/gcc.dg/vect/vect-peel-3.c (revision 175242) +++ testsuite/gcc.dg/vect/vect-peel-3.c (working copy) @@ -47,7 +47,7 @@ return main1 (); } -/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail vect_no_align } } } */ /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail vect_no_align } } } */ -/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" } } */ +/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" { xfail vect_no_align } } } */ /* { dg-final { cleanup-tree-dump "vect" } } */ Index: testsuite/gcc.dg/vect/vect-peel-4.c =================================================================== --- testsuite/gcc.dg/vect/vect-peel-4.c (revision 175242) +++ testsuite/gcc.dg/vect/vect-peel-4.c (working copy) @@ -44,7 +44,7 @@ return main1 (); } -/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail vect_no_align } } } */ /* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail vect_no_align } } } */ /* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 0 "vect" } } */ /* { dg-final { cleanup-tree-dump "vect" } } */