aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-loop.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2015-05-28 07:15:57 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2015-05-28 07:15:57 +0000
commit1a4b99c172b8a5485d84e24db16ccbd847a4b1b7 (patch)
treeb9a3b761a0bd416561dd650f412b812fb82bf201 /gcc/tree-vect-loop.c
parent428b381275bc95032274440f02d7719225de2c17 (diff)
downloadgcc-1a4b99c172b8a5485d84e24db16ccbd847a4b1b7.zip
gcc-1a4b99c172b8a5485d84e24db16ccbd847a4b1b7.tar.gz
gcc-1a4b99c172b8a5485d84e24db16ccbd847a4b1b7.tar.bz2
tree-vectorizer.h (struct _slp_instance): Remove body_cost_vec member.
2015-05-28 Richard Biener <rguenther@suse.de> * tree-vectorizer.h (struct _slp_instance): Remove body_cost_vec member. (SLP_INSTANCE_BODY_COST_VEC): Remove. (vect_update_slp_costs_according_to_vf): Likewise. (vect_slp_analyze_operations): Update prototype. * tree-vect-loop.c (vect_analyze_loop_2): Remove call to vect_update_slp_costs_according_to_vf, adjust. * tree-vect-slp.c (vect_free_slp_instance): Adjust. (vect_analyze_slp_cost_1): Likewise. (vect_analyze_slp_cost): Likewise. Properly deal with widening reduction ops. Commit body costs. (vect_analyze_slp_instance): Adjust. Do not analyze SLP cost for loops from here. (vect_slp_analyze_operations): But do it from here when the vectorization factor is known and stmts are analyzed. (vect_bb_vectorization_profitable_p): Simplify. (vect_slp_analyze_bb_1): Do not compute SLP cost here. (vect_update_slp_costs_according_to_vf): Remove. From-SVN: r223798
Diffstat (limited to 'gcc/tree-vect-loop.c')
-rw-r--r--gcc/tree-vect-loop.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index b93685e..8fe4dc6 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -1814,15 +1814,12 @@ vect_analyze_loop_2 (loop_vec_info loop_vinfo)
/* Update the vectorization factor based on the SLP decision. */
vect_update_vf_for_slp (loop_vinfo);
- /* Once VF is set, SLP costs should be updated since the number of
- created vector stmts depends on VF. */
- vect_update_slp_costs_according_to_vf (loop_vinfo);
-
/* Analyze operations in the SLP instances. Note this may
remove unsupported SLP instances which makes the above
SLP kind detection invalid. */
unsigned old_size = LOOP_VINFO_SLP_INSTANCES (loop_vinfo).length ();
- vect_slp_analyze_operations (LOOP_VINFO_SLP_INSTANCES (loop_vinfo));
+ vect_slp_analyze_operations (LOOP_VINFO_SLP_INSTANCES (loop_vinfo),
+ LOOP_VINFO_TARGET_COST_DATA (loop_vinfo));
if (LOOP_VINFO_SLP_INSTANCES (loop_vinfo).length () != old_size)
return false;
}