Hi! I believe the intent of these testcases was to verify the loops are vectorized and don't need versioning for alias, which is the only thing these constructs tell the compiler about. On some architectures, it is possible the loops will need versioning for alignment (or peeling for alignment or just using unaligned loads and/or stores in the vectorized loop).
Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2014-01-17 Jakub Jelinek <ja...@redhat.com> PR testsuite/59064 * gcc.dg/vect/vect-ivdep-1.c: Replace two dg-bogus lines separately testing for " version" and " alias" with one testing for " version\[^\n\r]* alias". * gcc.dg/vect/vect-ivdep-2.c: Likewise. * gfortran.dg/vect/vect-do-concurrent-1.f90: Likewise. * g++.dg/vect/pr33426-ivdep.cc: Likewise. * g++.dg/vect/pr33426-ivdep-2.cc: Likewise. * g++.dg/vect/pr33426-ivdep-3.cc: Likewise. * g++.dg/vect/pr33426-ivdep-4.cc: Adjust comments similarly. --- gcc/testsuite/gcc.dg/vect/vect-ivdep-1.c.jj 2013-11-12 11:31:19.000000000 +0100 +++ gcc/testsuite/gcc.dg/vect/vect-ivdep-1.c 2014-01-17 08:38:37.919749235 +0100 @@ -14,6 +14,5 @@ void foo(int n, int *a, int *b, int *c, } /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */ -/* { dg-bogus " version" "" { target *-*-* } 0 } */ -/* { dg-bogus " alias" "" { target *-*-* } 0 } */ +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */ /* { dg-final { cleanup-tree-dump "vect" } } */ --- gcc/testsuite/gcc.dg/vect/vect-ivdep-2.c.jj 2013-11-12 11:31:19.000000000 +0100 +++ gcc/testsuite/gcc.dg/vect/vect-ivdep-2.c 2014-01-17 08:38:55.854652038 +0100 @@ -30,6 +30,5 @@ void bar(int n, int *a, int *b, int *c) /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */ -/* { dg-bogus " version" "" { target *-*-* } 0 } */ -/* { dg-bogus " alias" "" { target *-*-* } 0 } */ +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */ /* { dg-final { cleanup-tree-dump "vect" } } */ --- gcc/testsuite/gfortran.dg/vect/vect-do-concurrent-1.f90.jj 2013-11-12 11:31:16.000000000 +0100 +++ gcc/testsuite/gfortran.dg/vect/vect-do-concurrent-1.f90 2014-01-17 08:41:58.744714758 +0100 @@ -12,6 +12,5 @@ subroutine test(n, a, b, c) end subroutine test ! { dg-message "loop vectorized" "" { target *-*-* } 0 } -! { dg-bogus " version" "" { target *-*-* } 0 } -! { dg-bogus " alias" "" { target *-*-* } 0 } +! { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } ! { dg-final { cleanup-tree-dump "vect" } } --- gcc/testsuite/g++.dg/vect/pr33426-ivdep.cc.jj 2013-11-12 11:31:20.000000000 +0100 +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep.cc 2014-01-17 08:40:08.534286245 +0100 @@ -14,6 +14,5 @@ void foo(int n, int *a, int *b, int *c, } /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */ -/* { dg-bogus " version" "" { target *-*-* } 0 } */ -/* { dg-bogus " alias" "" { target *-*-* } 0 } */ +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */ /* { dg-final { cleanup-tree-dump "vect" } } */ --- gcc/testsuite/g++.dg/vect/pr33426-ivdep-2.cc.jj 2013-11-12 11:31:20.000000000 +0100 +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep-2.cc 2014-01-17 08:40:23.557207616 +0100 @@ -29,8 +29,7 @@ void bar(int n, int *a, int *b, int *c) } /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */ -/* { dg-bogus " version" "" { target *-*-* } 0 } */ -/* { dg-bogus " alias" "" { target *-*-* } 0 } */ +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */ /* { dg-final { cleanup-tree-dump "vect" } } */ /* { dg-final { scan-tree-dump-times "ANNOTATE_EXPR " 2 "original" } } */ --- gcc/testsuite/g++.dg/vect/pr33426-ivdep-3.cc.jj 2013-11-12 11:31:20.000000000 +0100 +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep-3.cc 2014-01-17 08:40:31.833150629 +0100 @@ -15,8 +15,7 @@ void foo(int *a) { } /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */ -/* { dg-bogus " version" "" { target *-*-* } 0 } */ -/* { dg-bogus " alias" "" { target *-*-* } 0 } */ +/* { dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 } */ /* { dg-final { cleanup-tree-dump "vect" } } */ /* { dg-final { scan-tree-dump-times "ANNOTATE_EXPR " 1 "original" } } */ --- gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc.jj 2013-11-12 11:31:20.000000000 +0100 +++ gcc/testsuite/g++.dg/vect/pr33426-ivdep-4.cc 2014-01-17 08:40:56.073057959 +0100 @@ -20,8 +20,7 @@ void foo(std::vector<int> *ar, int *b) { } /* { dg-message "loop vectorized" "" { target *-*-* } 0 } */ -/* FIXME: dg-bogus " version" "" { target *-*-* } 0 */ -/* FIXME: dg-bogus " alias" "" { target *-*-* } 0 */ +/* FIXME: dg-bogus " version\[^\n\r]* alias" "" { target *-*-* } 0 */ /* { dg-final { cleanup-tree-dump "vect" } } */ /* { dg-final { scan-tree-dump-times "ANNOTATE_EXPR " 1 "original" } } */ Jakub