diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2018-07-31 14:26:31 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2018-07-31 14:26:31 +0000 |
commit | 6ef709e50228eb23c25d3620ac6eadb6d765d40d (patch) | |
tree | 433895df78a59e03d310b0cee116230e528175d7 /gcc/tree-parloops.c | |
parent | 458135c0354f19eb2bd032d42c27076def8c31de (diff) | |
download | gcc-6ef709e50228eb23c25d3620ac6eadb6d765d40d.zip gcc-6ef709e50228eb23c25d3620ac6eadb6d765d40d.tar.gz gcc-6ef709e50228eb23c25d3620ac6eadb6d765d40d.tar.bz2 |
[44/46] Remove global vinfo_for_stmt-related routines
There are no more direct uses of:
- new_stmt_vec_info
- set_vinfo_for_stmt
- free_stmt_vec_infos
- free_stmt_vec_info
outside of vec_info, so they can now be private member functions.
It also seemed better to put them in tree-vectorizer.c, along with the
other vec_info routines.
We can also get rid of:
- vinfo_for_stmt
- stmt_vec_info_vec
- set_stmt_vec_info_vec
since nothing now uses them. This was the main goal of the series.
2018-07-31 Richard Sandiford <richard.sandiford@arm.com>
gcc/
* tree-vectorizer.h (vec_info::new_vinfo_for_stmt)
(vec_info::set_vinfo_for_stmt, vec_info::free_stmt_vec_infos)
(vec_info::free_stmt_vec_info): New private member functions.
(set_stmt_vec_info_vec, free_stmt_vec_infos, vinfo_for_stmt)
(set_vinfo_for_stmt, new_stmt_vec_info, free_stmt_vec_info): Delete.
* tree-parloops.c (gather_scalar_reductions): Remove calls to
set_stmt_vec_info_vec and free_stmt_vec_infos.
* tree-vect-loop.c (_loop_vec_info): Remove call to
set_stmt_vec_info_vec.
* tree-vect-stmts.c (new_stmt_vec_info, set_stmt_vec_info_vec)
(free_stmt_vec_infos, free_stmt_vec_info): Delete in favor of...
* tree-vectorizer.c (vec_info::new_stmt_vec_info)
(vec_info::set_vinfo_for_stmt, vec_info::free_stmt_vec_infos)
(vec_info::free_stmt_vec_info): ...these new functions. Remove
assignments in {vec_info::,}new_stmt_vec_info that are redundant
with the clearing in the xcalloc.
(stmt_vec_info_vec): Delete.
(vec_info::vec_info): Don't call set_stmt_vec_info_vec.
(vectorize_loops): Likewise.
(vec_info::~vec_info): Remove argument from call to
free_stmt_vec_infos.
(vec_info::add_stmt): Remove vinfo argument from call to
new_stmt_vec_info.
From-SVN: r263159
Diffstat (limited to 'gcc/tree-parloops.c')
-rw-r--r-- | gcc/tree-parloops.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/gcc/tree-parloops.c b/gcc/tree-parloops.c index 5133054..e89c887 100644 --- a/gcc/tree-parloops.c +++ b/gcc/tree-parloops.c @@ -2592,10 +2592,6 @@ gather_scalar_reductions (loop_p loop, reduction_info_table_type *reduction_list auto_vec<gphi *, 4> double_reduc_phis; auto_vec<gimple *, 4> double_reduc_stmts; - vec<stmt_vec_info> stmt_vec_infos; - stmt_vec_infos.create (50); - set_stmt_vec_info_vec (&stmt_vec_infos); - vec_info_shared shared; simple_loop_info = vect_analyze_loop_form (loop, &shared); if (simple_loop_info == NULL) @@ -2679,14 +2675,11 @@ gather_scalar_reductions (loop_p loop, reduction_info_table_type *reduction_list } gather_done: - /* Release the claim on gimple_uid. */ - free_stmt_vec_infos (&stmt_vec_infos); - if (reduction_list->elements () == 0) return; /* As gimple_uid is used by the vectorizer in between vect_analyze_loop_form - and free_stmt_vec_info_vec, we can set gimple_uid of reduc_phi stmts only + and delete simple_loop_info, we can set gimple_uid of reduc_phi stmts only now. */ basic_block bb; FOR_EACH_BB_FN (bb, cfun) |