diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-04-09 12:39:22 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-04-09 12:39:22 +0000 |
commit | 40bcc7c25b8a19c6670b240efc114b4dae072c82 (patch) | |
tree | 2c8bd0affb55d76dfbc3479c59b2a8b47dc84ce1 /gcc/tree-vectorizer.h | |
parent | c8498e042d089e7dd4b2d2409c996f02a46ae9cb (diff) | |
download | gcc-40bcc7c25b8a19c6670b240efc114b4dae072c82.tar.gz |
2013-04-09 Richard Biener <rguenther@suse.de>
* tree-vectorizer.h (slp_void_p): Remove.
(slp_tree): Typedef before _slp_tree declaration.
(struct _slp_tree): Use a vector of slp_tree as children.
(vect_get_place_in_interleaving_chain): Remove.
* tree-vect-data-refs.c (vect_get_place_in_interleaving_chain):
Move ...
* tree-vect-slp.c (vect_get_place_in_interleaving_chain): ... here
and make static.
(vect_free_slp_tree, vect_print_slp_tree, vect_mark_slp_stmts,
vect_mark_slp_stmts_relevant, vect_slp_rearrange_stmts,
vect_detect_hybrid_slp_stmts, vect_slp_analyze_node_operations,
vect_schedule_slp_instance, vect_remove_slp_scalar_calls):
Use slp_node instead of slp_void_p and adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197629 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index 6c08979e8a6..1a233a01fa2 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -97,13 +97,13 @@ add_stmt_info_to_vec (stmt_vector_for_cost *stmt_cost_vec, int count, /************************************************************************ SLP ************************************************************************/ -typedef void *slp_void_p; +typedef struct _slp_tree *slp_tree; /* A computation tree of an SLP instance. Each node corresponds to a group of stmts to be packed in a SIMD stmt. */ -typedef struct _slp_tree { +struct _slp_tree { /* Nodes that contain def-stmts of this node statements operands. */ - vec<slp_void_p> children; + vec<slp_tree> children; /* A group of scalar stmts to be vectorized together. */ vec<gimple> stmts; /* Vectorized stmt/s. */ @@ -113,7 +113,7 @@ typedef struct _slp_tree { scalar elements in one scalar iteration (GROUP_SIZE) multiplied by VF divided by vector size. */ unsigned int vec_stmts_size; -} *slp_tree; +}; /* SLP instance is a sequence of stmts in a loop that can be packed into @@ -941,7 +941,6 @@ extern tree vect_setup_realignment (gimple, gimple_stmt_iterator *, tree *, extern void vect_transform_grouped_load (gimple, vec<tree> , int, gimple_stmt_iterator *); extern void vect_record_grouped_load_vectors (gimple, vec<tree> ); -extern int vect_get_place_in_interleaving_chain (gimple, gimple); extern tree vect_get_new_vect_var (tree, enum vect_var_kind, const char *); extern tree vect_create_addr_base_for_vector_ref (gimple, gimple_seq *, tree, struct loop *); |