diff options
author | Richard Biener <rguenther@suse.de> | 2019-09-26 16:52:50 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2019-09-26 16:52:50 +0000 |
commit | 1b4dbccc1f828fa00e6acc8b88d24301c65552df (patch) | |
tree | 7ca3a6bc14aab35bbbe7b501af5cd37bee20bcdd /gcc/tree-vectorizer.h | |
parent | 26cdf7bd5e9cb47f2a8761d8d5d2babf0bf5bb15 (diff) | |
download | gcc-1b4dbccc1f828fa00e6acc8b88d24301c65552df.zip gcc-1b4dbccc1f828fa00e6acc8b88d24301c65552df.tar.gz gcc-1b4dbccc1f828fa00e6acc8b88d24301c65552df.tar.bz2 |
tree-vect-loop.c (vect_analyze_loop_operations): Analyze loop-closed PHIs that are vect_internal_def.
2019-09-26 Richard Biener <rguenther@suse.de>
* tree-vect-loop.c (vect_analyze_loop_operations): Analyze
loop-closed PHIs that are vect_internal_def.
(vect_create_epilog_for_reduction): Exit early for nested cycles.
Simplify.
(vectorizable_lc_phi): New.
* tree-vect-stmts.c (vect_analyze_stmt): Call vectorize_lc_phi.
(vect_transform_stmt): Likewise.
* tree-vectorizer.h (stmt_vec_info_type): Add lc_phi_info_type.
(vectorizable_lc_phi): Declare.
From-SVN: r276157
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index f140405..1ab4af7 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -694,6 +694,7 @@ enum stmt_vec_info_type { type_promotion_vec_info_type, type_demotion_vec_info_type, type_conversion_vec_info_type, + lc_phi_info_type, loop_exit_ctrl_vec_info_type }; @@ -1653,6 +1654,7 @@ extern bool vectorizable_reduction (stmt_vec_info, gimple_stmt_iterator *, extern bool vectorizable_induction (stmt_vec_info, gimple_stmt_iterator *, stmt_vec_info *, slp_tree, stmt_vector_for_cost *); +extern bool vectorizable_lc_phi (stmt_vec_info, stmt_vec_info *, slp_tree); extern bool vect_worthwhile_without_simd_p (vec_info *, tree_code); extern int vect_get_known_peeling_cost (loop_vec_info, int, int *, stmt_vector_for_cost *, |