aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-data-refs.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2018-07-31 14:22:13 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2018-07-31 14:22:13 +0000
commit1eede195fc02f5198b48d75b3fb7705c4c1493dd (patch)
treed3d4cd7ab08f675d716be4fc022bc6683665a1e7 /gcc/tree-vect-data-refs.c
parent10681ce8cb6227ae5c11cc74ddf48f2fc5e6f87e (diff)
downloadgcc-1eede195fc02f5198b48d75b3fb7705c4c1493dd.zip
gcc-1eede195fc02f5198b48d75b3fb7705c4c1493dd.tar.gz
gcc-1eede195fc02f5198b48d75b3fb7705c4c1493dd.tar.bz2
[14/46] Make STMT_VINFO_VEC_STMT a stmt_vec_info
This patch changes STMT_VINFO_VEC_STMT from a gimple stmt to a stmt_vec_info and makes the vectorizable_* routines pass back a stmt_vec_info to vect_transform_stmt. 2018-07-31 Richard Sandiford <richard.sandiford@arm.com> gcc/ * tree-vectorizer.h (_stmt_vec_info::vectorized_stmt): Change from a gimple stmt to a stmt_vec_info. (vectorizable_condition, vectorizable_live_operation) (vectorizable_reduction, vectorizable_induction): Pass back the vectorized statement as a stmt_vec_info. * tree-vect-data-refs.c (vect_record_grouped_load_vectors): Update use of STMT_VINFO_VEC_STMT. * tree-vect-loop.c (vect_create_epilog_for_reduction): Likewise, accumulating the inner phis that feed the STMT_VINFO_VEC_STMT as stmt_vec_infos rather than gimple stmts. (vectorize_fold_left_reduction): Change vec_stmt from a gimple stmt to a stmt_vec_info. (vectorizable_live_operation): Likewise. (vectorizable_reduction, vectorizable_induction): Likewise, updating use of STMT_VINFO_VEC_STMT. * tree-vect-stmts.c (vect_get_vec_def_for_operand_1): Update use of STMT_VINFO_VEC_STMT. (vect_build_gather_load_calls, vectorizable_bswap, vectorizable_call) (vectorizable_simd_clone_call, vectorizable_conversion) (vectorizable_assignment, vectorizable_shift, vectorizable_operation) (vectorizable_store, vectorizable_load, vectorizable_condition) (vectorizable_comparison, can_vectorize_live_stmts): Change vec_stmt from a gimple stmt to a stmt_vec_info. (vect_transform_stmt): Update use of STMT_VINFO_VEC_STMT. Pass a pointer to a stmt_vec_info to the vectorizable_* routines. From-SVN: r263129
Diffstat (limited to 'gcc/tree-vect-data-refs.c')
-rw-r--r--gcc/tree-vect-data-refs.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c
index 70dd466..476ca5d 100644
--- a/gcc/tree-vect-data-refs.c
+++ b/gcc/tree-vect-data-refs.c
@@ -6401,18 +6401,17 @@ vect_record_grouped_load_vectors (gimple *stmt, vec<tree> result_chain)
{
if (!DR_GROUP_SAME_DR_STMT (vinfo_for_stmt (next_stmt)))
{
- gimple *prev_stmt =
- STMT_VINFO_VEC_STMT (vinfo_for_stmt (next_stmt));
+ stmt_vec_info prev_stmt_info
+ = STMT_VINFO_VEC_STMT (vinfo_for_stmt (next_stmt));
stmt_vec_info rel_stmt_info
- = STMT_VINFO_RELATED_STMT (vinfo_for_stmt (prev_stmt));
+ = STMT_VINFO_RELATED_STMT (prev_stmt_info);
while (rel_stmt_info)
{
- prev_stmt = rel_stmt_info;
+ prev_stmt_info = rel_stmt_info;
rel_stmt_info = STMT_VINFO_RELATED_STMT (rel_stmt_info);
}
- STMT_VINFO_RELATED_STMT (vinfo_for_stmt (prev_stmt))
- = new_stmt_info;
+ STMT_VINFO_RELATED_STMT (prev_stmt_info) = new_stmt_info;
}
}