GCC Middle and Back End API Reference
|
#include <ipa-prop.h>
Public Member Functions | |
ipa_edge_args_sum_t (symbol_table *table, bool ggc) | |
void | remove (cgraph_edge *edge) |
void | remove (cgraph_edge *cs, ipa_edge_args *args) final override |
void | duplicate (cgraph_edge *src, cgraph_edge *dst, ipa_edge_args *old_args, ipa_edge_args *new_args) final override |
Summary to manange ipa_edge_args structures.
|
inline |
|
finaloverride |
Method invoked when an edge is duplicated. Copy ipa_edge_args and adjust reference count data strucutres accordingly.
References i, ipa_duplicate_jump_function(), ipa_get_ith_jump_func(), ipa_edge_args::jump_functions, NULL, ipa_edge_args::polymorphic_call_contexts, vec_safe_copy(), vec_safe_grow_cleared(), and vec_safe_length().
|
finaloverride |
Hook that is called by cgraph.cc when an edge is removed. Adjust reference count data structures accordingly.
References ipa_cst_ref_desc::cs, FOR_EACH_VEC_ELT, i, ipa_get_jf_constant_rdesc(), IPA_JF_CONST, NULL, try_decrement_rdesc_refcount(), and ipa_jump_func::type.
|
inline |
Referenced by ipa_propagate_indirect_call_infos().