diff options
author | Kewen Lin <linkw@linux.ibm.com> | 2021-07-21 00:22:05 -0500 |
---|---|---|
committer | Kewen Lin <linkw@linux.ibm.com> | 2021-07-21 00:22:56 -0500 |
commit | 2d9588bac5ac9e2ed778f3c7eae9ebf7bf258b44 (patch) | |
tree | 1bbb2c7f349c75faf5a72541a4dec8ecde804732 /gcc/tree-data-ref.c | |
parent | 92d4550991de7e0970a38939422b31e9dc07dd11 (diff) | |
download | gcc-2d9588bac5ac9e2ed778f3c7eae9ebf7bf258b44.zip gcc-2d9588bac5ac9e2ed778f3c7eae9ebf7bf258b44.tar.gz gcc-2d9588bac5ac9e2ed778f3c7eae9ebf7bf258b44.tar.bz2 |
predcom: Refactor more using auto_vec
This patch follows Martin's suggestion at the link[1] to do more
refactorings by:
- Adding m_ prefix for class pcom_worker member variables.
- Using auto_vec instead of vec among class pcom_worker,
chain, component and comp_ptrs.
The changes in tree-data-ref.[ch] is required, without it the
destruction of auto_vec instance could try to double free the
memory pointed by m_vec.
Bootstrapped and regtested on powerpc64le-linux-gnu P9,
x86_64-redhat-linux and aarch64-linux-gnu, also
bootstrapped on ppc64le P9 with bootstrap-O3 config.
[1] https://gcc.gnu.org/pipermail/gcc-patches/2021-June/573424.html
gcc/ChangeLog:
* tree-data-ref.c (free_dependence_relations): Adjust to pass vec
by reference.
(free_data_refs): Likewise.
* tree-data-ref.h (free_dependence_relations): Likewise.
(free_data_refs): Likewise.
* tree-predcom.c (struct chain): Use auto_vec instead of vec for
members.
(struct component): Likewise.
(pcom_worker::pcom_worker): Adjust for auto_vec and renaming changes.
(pcom_worker::~pcom_worker): Likewise.
(pcom_worker::release_chain): Adjust as auto_vec changes.
(pcom_worker::loop): Rename to ...
(pcom_worker::m_loop): ... this.
(pcom_worker::datarefs): Rename to ...
(pcom_worker::m_datarefs): ... this. Use auto_vec instead of vec.
(pcom_worker::dependences): Rename to ...
(pcom_worker::m_dependences): ... this. Use auto_vec instead of vec.
(pcom_worker::chains): Rename to ...
(pcom_worker::m_chains): ... this. Use auto_vec instead of vec.
(pcom_worker::looparound_phis): Rename to ...
(pcom_worker::m_looparound_phis): ... this. Use auto_vec instead of
vec.
(pcom_worker::cache): Rename to ...
(pcom_worker::m_cache): ... this. Use auto_vec instead of vec.
(pcom_worker::release_chain): Adjust for auto_vec changes.
(pcom_worker::release_chains): Adjust for auto_vec and renaming
changes.
(release_component): Remove.
(release_components): Adjust for release_component removal.
(component_of): Adjust to use vec.
(merge_comps): Likewise.
(pcom_worker::aff_combination_dr_offset): Adjust for renaming changes.
(pcom_worker::determine_offset): Likewise.
(class comp_ptrs): Remove.
(pcom_worker::split_data_refs_to_components): Adjust for renaming
changes, for comp_ptrs removal with auto_vec.
(pcom_worker::suitable_component_p): Adjust for renaming changes.
(pcom_worker::filter_suitable_components): Adjust for release_component
removal.
(pcom_worker::valid_initializer_p): Adjust for renaming changes.
(pcom_worker::find_looparound_phi): Likewise.
(pcom_worker::add_looparound_copies): Likewise.
(pcom_worker::determine_roots_comp): Likewise.
(pcom_worker::single_nonlooparound_use): Likewise.
(pcom_worker::execute_pred_commoning_chain): Likewise.
(pcom_worker::execute_pred_commoning): Likewise.
(pcom_worker::try_combine_chains): Likewise.
(pcom_worker::prepare_initializers_chain): Likewise.
(pcom_worker::prepare_initializers): Likewise.
(pcom_worker::prepare_finalizers_chain): Likewise.
(pcom_worker::prepare_finalizers): Likewise.
(pcom_worker::tree_predictive_commoning_loop): Likewise.
Diffstat (limited to 'gcc/tree-data-ref.c')
-rw-r--r-- | gcc/tree-data-ref.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c index 210ac28..b6f7828 100644 --- a/gcc/tree-data-ref.c +++ b/gcc/tree-data-ref.c @@ -6208,7 +6208,7 @@ free_dependence_relation (struct data_dependence_relation *ddr) DEPENDENCE_RELATIONS. */ void -free_dependence_relations (vec<ddr_p> dependence_relations) +free_dependence_relations (vec<ddr_p>& dependence_relations) { for (data_dependence_relation *ddr : dependence_relations) if (ddr) @@ -6220,7 +6220,7 @@ free_dependence_relations (vec<ddr_p> dependence_relations) /* Free the memory used by the data references from DATAREFS. */ void -free_data_refs (vec<data_reference_p> datarefs) +free_data_refs (vec<data_reference_p>& datarefs) { for (data_reference *dr : datarefs) free_data_ref (dr); |