diff options
author | Martin Jambor <mjambor@suse.cz> | 2017-05-03 18:48:20 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2017-05-03 18:48:20 +0200 |
commit | 6fe906a33de7ad0679cbc4e070feed5809471462 (patch) | |
tree | 19839085eb16d54e65060d080eded79c6f3293ad /gcc/ipa-inline.c | |
parent | 57e563ac847e869fbe565e48c16183511a6c5863 (diff) | |
download | gcc-6fe906a33de7ad0679cbc4e070feed5809471462.zip gcc-6fe906a33de7ad0679cbc4e070feed5809471462.tar.gz gcc-6fe906a33de7ad0679cbc4e070feed5809471462.tar.bz2 |
Use call_summary in ipa-prop and ipa-cp
2017-05-03 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (ipa_edge_args): Make a class. Mark with for_user GTY
tag. Added a default constructor and a destructor.
(ipa_edge_args_sum_t): New class;
(ipa_edge_args_sum): Declare.
(ipa_edge_args_vector): Remove declaration.
(IPA_EDGE_REF): Use ipa_edge_args_sum.
(ipa_free_edge_args_substructures): Remove declaration.
(ipa_check_create_edge_args): Use ipa_edge_args_sum.
(ipa_edge_args_info_available_for_edge_p): Likewise.
* ipa-prop.c (ipa_edge_args_vector): Removed.
(edge_removal_hook_holder): Likewise.
(edge_duplication_hook_holder): Likewise.
(ipa_edge_args_sum): New variable.
(ipa_propagate_indirect_call_infos): Test ipa_edge_args_sum instead of
ipa_edge_args_vector.
(ipa_free_edge_args_substructures): Likewise.
(ipa_free_all_edge_args): Free ipa_edge_args_sum instead of
ipa_edge_args_vector.
(ipa_edge_removal_hook): Turned into method
ipa_edge_args_sum_t::remove.
(ipa_edge_duplication_hook): Turned into method
ipa_edge_args_sum_t::duplicate.
(ipa_register_cgraph_hooks): Create ipa_edge_args_sum instead of
registering edge hooks.
(ipa_unregister_cgraph_hooks): Do not unregister edge hooks.
* ipa-inline-analysis.c (estimate_function_body_sizes): Test
ipa_edge_args_sum instead of ipa_edge_args_vector.
* ipa-profile.c (ipa_profile): Likewise.
From-SVN: r247558
Diffstat (limited to 'gcc/ipa-inline.c')
0 files changed, 0 insertions, 0 deletions