aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-loop.c
diff options
context:
space:
mode:
authorAlan Hayward <alan.hayward@arm.com>2015-10-26 11:55:45 +0000
committerAlan Hayward <alahay01@gcc.gnu.org>2015-10-26 11:55:45 +0000
commit512854fe89a2b18e6c9a474a7dc69679a70b93da (patch)
tree79f4e929f2838be46c9966ae414a51cca9470f41 /gcc/tree-vect-loop.c
parentaafc151a206edfc9352ea637ec2f2bdb39003135 (diff)
downloadgcc-512854fe89a2b18e6c9a474a7dc69679a70b93da.zip
gcc-512854fe89a2b18e6c9a474a7dc69679a70b93da.tar.gz
gcc-512854fe89a2b18e6c9a474a7dc69679a70b93da.tar.bz2
tree-vect-loop.c (vect_create_epilog_for_reduction): Fix VEC_COND_EXPR types.
2015-10-26 Alan Hayward <alan.hayward@arm.com> * tree-vect-loop.c (vect_create_epilog_for_reduction): Fix VEC_COND_EXPR types. From-SVN: r229346
Diffstat (limited to 'gcc/tree-vect-loop.c')
-rw-r--r--gcc/tree-vect-loop.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index 0ce774d..cc51597 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -4290,8 +4290,9 @@ vect_create_epilog_for_reduction (vec<tree> vect_defs, gimple *stmt,
/* Get various versions of the type of the vector of indexes. */
tree index_vec_type = TREE_TYPE (induction_index);
gcc_checking_assert (TYPE_UNSIGNED (index_vec_type));
- tree index_vec_type_signed = signed_type_for (index_vec_type);
tree index_scalar_type = TREE_TYPE (index_vec_type);
+ tree index_vec_cmp_type = build_same_sized_truth_vector_type
+ (index_vec_type);
/* Get an unsigned integer version of the type of the data vector. */
int scalar_precision = GET_MODE_PRECISION (TYPE_MODE (scalar_type));
@@ -4336,7 +4337,7 @@ vect_create_epilog_for_reduction (vec<tree> vect_defs, gimple *stmt,
/* Compare the max index vector to the vector of found indexes to find
the position of the max value. */
- tree vec_compare = make_ssa_name (index_vec_type_signed);
+ tree vec_compare = make_ssa_name (index_vec_cmp_type);
gimple *vec_compare_stmt = gimple_build_assign (vec_compare, EQ_EXPR,
induction_index,
max_index_vec);