diff options
author | Richard Biener <rguenther@suse.de> | 2018-11-15 13:42:13 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2018-11-15 13:42:13 +0000 |
commit | 22692f3ce9d00eac18d5582de90dda5ae5c07c77 (patch) | |
tree | 5b45430049bf1f43c56112e905e467089f9e5027 /gcc/tree-vectorizer.h | |
parent | 3f5a0fdefbb4bd69547b7275da08f712b18a972e (diff) | |
download | gcc-22692f3ce9d00eac18d5582de90dda5ae5c07c77.zip gcc-22692f3ce9d00eac18d5582de90dda5ae5c07c77.tar.gz gcc-22692f3ce9d00eac18d5582de90dda5ae5c07c77.tar.bz2 |
re PR tree-optimization/88031 (ICE in vectorizable_reduction, at tree-vect-loop.c:6953)
2018-11-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/88031
* tree-vect-loop.c (vectorizable_reduction): Move check
for multiple types earlier so we get the expected dump.
Simplify calls to vectorizable_condition.
* tree-vect-stmts.h (vectorizable_condition): Update prototype.
* tree-vect-stmts.c (vectorizable_condition): Instead of
reduc_def and reduc_index take just a flag. Simplify
code-generation now that we can rely on the defs being set up.
(vectorizable_comparison): Remove unused argument.
* gcc.dg/pr88031.c: New testcase.
From-SVN: r266182
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index 7f21622..f1c186b 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -1481,7 +1481,7 @@ extern void vect_remove_stores (stmt_vec_info); extern opt_result vect_analyze_stmt (stmt_vec_info, bool *, slp_tree, slp_instance, stmt_vector_for_cost *); extern bool vectorizable_condition (stmt_vec_info, gimple_stmt_iterator *, - stmt_vec_info *, tree, int, slp_tree, + stmt_vec_info *, bool, slp_tree, stmt_vector_for_cost *); extern bool vectorizable_shift (stmt_vec_info, gimple_stmt_iterator *, stmt_vec_info *, slp_tree, |