diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2019-11-03 17:37:45 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2019-11-03 16:37:45 +0000 |
commit | ac6f2e594886e2209446114023ecdff96b0bd7c4 (patch) | |
tree | 08ad05645f41cd3331fef1728530f56b00673203 /gcc/ipa-prop.c | |
parent | 360386c7ef1c3fa30de216b1d68ed6a27296fd80 (diff) | |
download | gcc-ac6f2e594886e2209446114023ecdff96b0bd7c4.zip gcc-ac6f2e594886e2209446114023ecdff96b0bd7c4.tar.gz gcc-ac6f2e594886e2209446114023ecdff96b0bd7c4.tar.bz2 |
ipa-fnsummary.c (ipa_call_context::duplicate_from): New member function.
* ipa-fnsummary.c (ipa_call_context::duplicate_from): New
member function.
(ipa_call_context::release): Add ALL parameter.
(ipa_call_context::equal_to): New member function.
* ipa-fnsummary.h (ipa_call_context): Add empty constructor;
duplicate_form, release, equal_to and exists_p member functoins.
* ipa-inline-analysis.c (node_context_cache_entry): New
class.
(node_context_summary): Likewise.
(node_context_cache, node_context_cache_hit, node_context_cache_miss,
node_context_clear): New static vars.
(initialize_growth_caches): New function.
(free_growth_caches): Also delete node_context_cache; output stats.
(do_estimate_edge_time): Cache contexts.
(reset_node_cache): New function.
* ipa-inline.c (reset_edge_caches): Reset also node cache.
(inline_small_functions): Initialize growth caches.
* ipa-inline.h (reset_node_cache, initialize_growth_caches):
Declare.
* ipa-predicate.h (inline_param_summary::equal_to): New.
* ipa-prop.c (ipa_agg_jf_item::equal_to): New.
* ipa-prop.h (ipa_agg_jf_item): Declare equal_to member function.
(ipa_agg_jump_function): Implement equal_to member function.
From-SVN: r277757
Diffstat (limited to 'gcc/ipa-prop.c')
-rw-r--r-- | gcc/ipa-prop.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index e20467a..5491aee 100644 --- a/gcc/ipa-prop.c +++ b/gcc/ipa-prop.c @@ -5293,4 +5293,12 @@ ipcp_transform_function (struct cgraph_node *node) return TODO_update_ssa_only_virtuals; } + +/* Return true if OTHER describes same agg item. */ +bool +ipa_agg_jf_item::equal_to (const ipa_agg_jf_item &other) +{ + return offset == other.offset + && operand_equal_p (value, other.value, 0); +} #include "gt-ipa-prop.h" |