diff options
author | Martin Jambor <mjambor@suse.cz> | 2018-04-11 15:30:53 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2018-04-11 15:30:53 +0200 |
commit | 7b668576fc09c86a301087f464e195678cb0aea0 (patch) | |
tree | eeba5abe393b99f0ba5516eb12172c1f4fbe8de3 /gcc/omp-expand.c | |
parent | fe0604d349c4d9eb18b17dd018383d591eed67c7 (diff) | |
download | gcc-7b668576fc09c86a301087f464e195678cb0aea0.zip gcc-7b668576fc09c86a301087f464e195678cb0aea0.tar.gz gcc-7b668576fc09c86a301087f464e195678cb0aea0.tar.bz2 |
Improve IPA-CP handling of self-recursive calls
2018-04-11 Martin Jambor <mjambor@suse.cz>
PR ipa/84149
* ipa-cp.c (propagate_vals_across_pass_through): Expand comment.
(cgraph_edge_brings_value_p): New parameter dest_val, check if it is
not the same as the source val.
(cgraph_edge_brings_value_p): New parameter.
(gather_edges_for_value): Pass destination value to
cgraph_edge_brings_value_p.
(perhaps_add_new_callers): Likewise.
(get_info_about_necessary_edges): Likewise and exclude values brought
only by self-recursive edges.
(create_specialized_node): Redirect only clones of self-calling edges.
(+self_recursive_pass_through_p): New function.
(find_more_scalar_values_for_callers_subset): Use it.
(find_aggregate_values_for_callers_subset): Likewise.
(known_aggs_to_agg_replacement_list): Removed.
(decide_whether_version_node): Re-calculate known constants for all
remaining context clones.
From-SVN: r259319
Diffstat (limited to 'gcc/omp-expand.c')
0 files changed, 0 insertions, 0 deletions