diff options
author | Richard Biener <rguenther@suse.de> | 2020-11-16 14:26:20 +0100 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2020-11-16 15:21:25 +0100 |
commit | c84df34aec3bb845b22384c7e85f0449ca00dd99 (patch) | |
tree | d20af3436e7286e5f93606651a4007e2d17f06aa /gcc/tree-vect-loop.c | |
parent | d1746388db6481d87f5a801d79b17566fc6888da (diff) | |
download | gcc-c84df34aec3bb845b22384c7e85f0449ca00dd99.zip gcc-c84df34aec3bb845b22384c7e85f0449ca00dd99.tar.gz gcc-c84df34aec3bb845b22384c7e85f0449ca00dd99.tar.bz2 |
Delay SLP instance loads gathering
This delays filling SLP_INSTANCE_LOADS.
2020-11-16 Richard Biener <rguenther@suse.de>
* tree-vectorizer.h (vect_gather_slp_loads): Declare.
* tree-vect-loop.c (vect_analyze_loop_2): Call
vect_gather_slp_loads.
* tree-vect-slp.c (vect_build_slp_instance): Do not gather
SLP loads here.
(vect_gather_slp_loads): Remove wrapper, new function.
(vect_slp_analyze_bb_1): Call it.
Diffstat (limited to 'gcc/tree-vect-loop.c')
-rw-r--r-- | gcc/tree-vect-loop.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c index 4d5532f..ecaaf01 100644 --- a/gcc/tree-vect-loop.c +++ b/gcc/tree-vect-loop.c @@ -2298,6 +2298,9 @@ vect_analyze_loop_2 (loop_vec_info loop_vinfo, bool &fatal, unsigned *n_stmts) /* Optimize the SLP graph with the vectorization factor fixed. */ vect_optimize_slp (loop_vinfo); + + /* Gather the loads reachable from the SLP graph entries. */ + vect_gather_slp_loads (loop_vinfo); } bool saved_can_use_partial_vectors_p |