Abe wrote:
diff --git a/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
b/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
index 71f2db3..2b159d7 100644
--- a/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
+++ b/gcc/testsuite/gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c
@@ -65,4 +65,12 @@ main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { {
vect_no_align && { ! vect_hw_misalign } } || { ! vect_strided2 } } } } } */
+/* "foo()" is not vectorized FOR NOW because gather-load
+ cannot handle conditional gather loads as of June 2015.
+
+ The old way of if-converting loads was unsafe because
+ it resulted in thread-unsafe code where the as-written code was OK.
+ The old if conversion did not contain indirection in the loads,
+ so it was simpler, therefor the vectorizer was able to pick it up. */
+
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 0 "vect" { xfail { {
vect_no_align && { ! vect_hw_misalign } } || { ! vect_strided2 } } } } } */
Would having a testsuite predicate for the target supporting gathered loads, let
you run this test on those architectures? I'd expect one to be useful in a few
other places too, in time if it doesn't exist already...
--Alan