tree-vect-loop.c (vect_determine_vectorization_factor): Check mix of boolean and...
authorIlya Enkovich <enkovich.gnu@gmail.com>
Fri, 13 Nov 2015 11:45:25 +0000 (11:45 +0000)
committerIlya Enkovich <ienkovich@gcc.gnu.org>
Fri, 13 Nov 2015 11:45:25 +0000 (11:45 +0000)
commite4af0bc4650f371dc553bccd03d5dfe2704bc660
treead5f4cf9d3ab2efb6a3c4da48f6a2d31e1790633
parentf7259dd4be3a6edba6035e2d7c580ee11ed16800
tree-vect-loop.c (vect_determine_vectorization_factor): Check mix of boolean and integer vectors in a single statement.

gcc/

* tree-vect-loop.c (vect_determine_vectorization_factor): Check
mix of boolean and integer vectors in a single statement.
* tree-vect-slp.c (vect_mask_constant_operand_p): New.
(vect_get_constant_vectors): Use vect_mask_constant_operand_p to
determine constant type.
* tree-vect-stmts.c (vectorizable_comparison): Provide vectype
for loop invariants.

gcc/testsuite/

* g++.dg/vect/simd-bool-comparison-1.cc: New test.
* g++.dg/vect/simd-bool-comparison-2.cc: New test.

From-SVN: r230309
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/vect/simd-bool-comparison-1.cc [new file with mode: 0644]
gcc/testsuite/g++.dg/vect/simd-bool-comparison-2.cc [new file with mode: 0644]
gcc/tree-vect-loop.c
gcc/tree-vect-slp.c
gcc/tree-vect-stmts.c