Hi,
GCC should be able to vectorize gcc.dg/vect/pr56541.c on targets do not support
vect_cond_mixed. Problem is jump threading factors comparison out of cond_expr
and creates mixed-type cond_expr. As a result, it can only be vectorized with
vect_cond_mixed. We don't have a good solution at the moment, this patch xfail
it on such targets.
Thanks,
bin
gcc/testsuite/ChangeLog
2016-11-04 Bin Cheng <bin.ch...@arm.com>
* gcc.dg/vect/pr56541.c: Xfail on !vect_cond_mixed targets.
diff --git a/gcc/testsuite/gcc.dg/vect/pr56541.c
b/gcc/testsuite/gcc.dg/vect/pr56541.c
index 16b8d7c..d5def68 100644
--- a/gcc/testsuite/gcc.dg/vect/pr56541.c
+++ b/gcc/testsuite/gcc.dg/vect/pr56541.c
@@ -24,4 +24,4 @@ void foo()
}
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { !
vect_cond_mixed } } } } */