diff options
author | Richard Biener <rguenther@suse.de> | 2020-05-18 16:05:00 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2020-05-19 07:59:51 +0200 |
commit | a4b48fc47c3406b6f41be093c4615879b7006710 (patch) | |
tree | 09caa8ff7272487ac96d1da0ef0b63c150f2efab /gcc/tree-vectorizer.h | |
parent | 573e5f0500968dcf4025b8fc0ae5fb367f9c70d9 (diff) | |
download | gcc-a4b48fc47c3406b6f41be093c4615879b7006710.zip gcc-a4b48fc47c3406b6f41be093c4615879b7006710.tar.gz gcc-a4b48fc47c3406b6f41be093c4615879b7006710.tar.bz2 |
cost invariant nodes from vect_slp_analyze_node_operations SLP walk
2020-05-19 Richard Biener <rguenther@suse.de>
* tree-vectorizer.h (_slp_tree::vectype): Add field.
(SLP_TREE_VECTYPE): New.
* tree-vect-slp.c (vect_create_new_slp_node): Initialize
SLP_TREE_VECTYPE.
(vect_create_new_slp_node): Likewise.
(vect_prologue_cost_for_slp): Move here from tree-vect-stmts.c
and simplify.
(vect_slp_analyze_node_operations): Walk nodes children for
invariant costing.
(vect_get_constant_vectors): Use local scope op variable.
* tree-vect-stmts.c (vect_prologue_cost_for_slp_op): Remove here.
(vect_model_simple_cost): Adjust.
(vect_model_store_cost): Likewise.
(vectorizable_store): Likewise.
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index 9b2cbe6..38a0a1d 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -130,6 +130,7 @@ struct _slp_tree { permutation. */ vec<unsigned> load_permutation; + tree vectype; /* Vectorized stmt/s. */ vec<stmt_vec_info> vec_stmts; /* Number of vector stmts that are created to replace the group of scalar @@ -186,6 +187,7 @@ public: #define SLP_TREE_LOAD_PERMUTATION(S) (S)->load_permutation #define SLP_TREE_TWO_OPERATORS(S) (S)->two_operators #define SLP_TREE_DEF_TYPE(S) (S)->def_type +#define SLP_TREE_VECTYPE(S) (S)->vectype /* Key for map that records association between scalar conditions and corresponding loop mask, and |