]> git.ipfire.org Git - thirdparty/gcc.git/commit
2019-09-30 Richard Biener <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Sep 2019 11:59:16 +0000 (11:59 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Sep 2019 11:59:16 +0000 (11:59 +0000)
commit6eb0407cf23290c2e1797d2f18ca975e3db0ad93
tree7b3dbdbfe377d426f7d2bdb1eb1b6441279a7e6a
parent2d9c100659d8053c31b05d9ac1bcb5760aff3515
2019-09-30  Richard Biener  <rguenther@suse.de>

* gimple.c (gimple_get_lhs): For PHIs return the result.
* tree-vectorizer.h (vectorizable_live_operation): Also get the
SLP instance as argument.
* tree-vect-loop.c (vect_analyze_loop_operations): Also handle
double-reduction PHIs with vectorizable_lc_phi.
(vect_analyze_loop_operations): Adjust.
(vect_create_epilog_for_reduction): Remove all code not dealing
with reduction LC PHI or epilogue generation.
(vectorizable_live_operation): Call vect_create_epilog_for_reduction
for live stmts of reductions.
* tree-vect-stmts.c (vectorizable_condition): When !for_reduction
do not handle defs that are not vect_internal_def.
(can_vectorize_live_stmts): Adjust.
(vect_analyze_stmt): When the vectorized stmt defined a value
used on backedges adjust the backedge uses of vectorized PHIs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@276299 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/gimple.c
gcc/tree-vect-loop.c
gcc/tree-vect-stmts.c
gcc/tree-vectorizer.h