summaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2015-04-23 08:43:10 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2015-04-23 08:43:10 +0000
commitb4026f25da576dcd7dd863e04ab91ebad6216ade (patch)
tree187d843f1d350584c321a0b83e66ab240069b775 /gcc/tree-vectorizer.h
parent1ebce84937e54f18d49fe2722848be2de021957e (diff)
downloadgcc-b4026f25da576dcd7dd863e04ab91ebad6216ade.tar.gz
2015-04-23 Richard Biener <rguenther@suse.de>
* tree-vect-slp.c (vect_find_first_load_in_slp_instance): Remove. (vect_find_last_store_in_slp_instance): Rename to ... (vect_find_last_scalar_stmt_in_slp): ... this and generalize. (vect_analyze_slp_cost_1): Use vector_load for constant defs and vec_construct for external defs when estimating prologue cost. (vect_analyze_slp_instance): Do not init SLP_INSTANCE_FIRST_LOAD_STMT. Compute costs here only when vectorizing loops. (vect_slp_analyze_bb_1): Compute SLP cost here, after vector types have been determined. (vect_schedule_slp_instance): Simplify vectorized code placement and prepare for in-BB external defs. * tree-vectorizer.h (struct _slp_instance): Remove first_load member. (SLP_INSTANCE_FIRST_LOAD_STMT): Remove. * tree-vect-stmts.c (vect_model_store_cost): Remove PURE_SLP_STMT guard. (vect_model_load_cost): Likewise. (vectorizable_store): Instead add it here. (vectorizable_load): Likewise. (vect_is_simple_use): Dump def type textually. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222354 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r--gcc/tree-vectorizer.h5
1 files changed, 0 insertions, 5 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index f22d6cff5cb..0796cc19fcd 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -131,10 +131,6 @@ typedef struct _slp_instance {
/* The group of nodes that contain loads of this SLP instance. */
vec<slp_tree> loads;
-
- /* The first scalar load of the instance. The created vector loads will be
- inserted before this statement. */
- gimple first_load;
} *slp_instance;
@@ -144,7 +140,6 @@ typedef struct _slp_instance {
#define SLP_INSTANCE_UNROLLING_FACTOR(S) (S)->unrolling_factor
#define SLP_INSTANCE_BODY_COST_VEC(S) (S)->body_cost_vec
#define SLP_INSTANCE_LOADS(S) (S)->loads
-#define SLP_INSTANCE_FIRST_LOAD_STMT(S) (S)->first_load
#define SLP_TREE_CHILDREN(S) (S)->children
#define SLP_TREE_SCALAR_STMTS(S) (S)->stmts