diff options
author | Richard Biener <rguenther@suse.de> | 2016-11-07 08:06:08 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2016-11-07 08:06:08 +0000 |
commit | 29afecdf1b14136640f1d88da0e10751dbc6283c (patch) | |
tree | e8cf074ca42c483bdddbc561af7283cbc762e5fd /gcc/tree-vectorizer.h | |
parent | a0d3edf8a54e30d48f61eb59a0be33c7ed2b971f (diff) | |
download | gcc-29afecdf1b14136640f1d88da0e10751dbc6283c.zip gcc-29afecdf1b14136640f1d88da0e10751dbc6283c.tar.gz gcc-29afecdf1b14136640f1d88da0e10751dbc6283c.tar.bz2 |
re PR middle-end/37150 (basic-block vectorization misses some unrolled loops)
2016-11-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/37150
* tree-vectorizer.h (vect_transform_slp_perm_load): Add n_perms
parameter.
* tree-vect-slp.c (vect_supported_load_permutation_p): Adjust.
(vect_analyze_slp_cost_1): Account for the real number of
permutations emitted and for dead loads.
(vect_transform_slp_perm_load): Add n_perms parameter counting
the number of emitted permutations.
* tree-vect-stmts.c (vectorizable_load): Adjust.
From-SVN: r241893
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index 3866548..2a7cdfe 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -1166,7 +1166,7 @@ extern int vect_get_known_peeling_cost (loop_vec_info, int, int *, extern void vect_free_slp_instance (slp_instance); extern bool vect_transform_slp_perm_load (slp_tree, vec<tree> , gimple_stmt_iterator *, int, - slp_instance, bool); + slp_instance, bool, unsigned *); extern bool vect_slp_analyze_operations (vec<slp_instance> slp_instances, void *); extern bool vect_schedule_slp (vec_info *); |