diff options
author | Richard Biener <rguenther@suse.de> | 2017-11-29 14:38:06 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-11-29 14:38:06 +0000 |
commit | f7300fff74becf365cdadd23c9447521da852e84 (patch) | |
tree | db9b2a10fc6481be1fda9bfc85276cb2c9e9f376 /gcc/combine.c | |
parent | d5ed6a87ed359a8706bdfcc6853dacc881249fec (diff) | |
download | gcc-f7300fff74becf365cdadd23c9447521da852e84.zip gcc-f7300fff74becf365cdadd23c9447521da852e84.tar.gz gcc-f7300fff74becf365cdadd23c9447521da852e84.tar.bz2 |
re PR tree-optimization/83202 (Try joining operations on consecutive array elements during tree vectorization)
2017-11-29 Richard Biener <rguenther@suse.de>
PR tree-optimization/83202
* tree-vect-slp.c (scalar_stmts_set_t): New typedef.
(bst_fail): Use it.
(vect_analyze_slp_cost_1): Add visited set, do not account SLP
nodes vectorized to the same stmts multiple times.
(vect_analyze_slp_cost): Allocate a visited set and pass it down.
(vect_analyze_slp_instance): Adjust.
(scalar_stmts_to_slp_tree_map_t): New typedef.
(vect_schedule_slp_instance): Add a map recording the SLP node
representing the vectorized stmts for a set of scalar stmts.
Avoid code-generating redundancies.
(vect_schedule_slp): Allocate map and pass it down.
* gcc.dg/vect/costmodel/x86_64/costmodel-pr83202.c: New testcase.
From-SVN: r255233
Diffstat (limited to 'gcc/combine.c')
0 files changed, 0 insertions, 0 deletions