GCC Middle and Back End API Reference
|
#include <cgraph.h>
Static Public Member Functions | |
static void | add (tree decl) |
static varpool_node * | get (const_tree decl) |
static void | finalize_decl (tree decl) |
static varpool_node * | create_extra_name_alias (tree alias, tree decl) |
static varpool_node * | create_alias (tree, tree) |
static void | dump_varpool (FILE *f) |
static void DEBUG_FUNCTION | debug_varpool (void) |
static varpool_node * | create_empty (void) |
static varpool_node * | get_create (tree decl) |
static varpool_node * | get_for_asmname (tree asmname) |
static symtab_node * | get_for_asmname (const_tree asmname) |
static void | check_ifunc_callee_symtab_nodes (void) |
static DEBUG_FUNCTION void | verify_symtab_nodes (void) |
static void | checking_verify_symtab_nodes (void) |
Protected Member Functions | |
void | dump_base (FILE *) |
bool DEBUG_FUNCTION | verify_base (void) |
void | unregister (struct clone_info *) |
struct symbol_priority_map * | priority_info (void) |
bool | call_for_symbol_and_aliases_1 (bool(*callback)(symtab_node *, void *), void *data, bool include_overwrite) |
Private Member Functions | |
void | assemble_aliases (void) |
bool | call_for_symbol_and_aliases_1 (bool(*callback)(varpool_node *, void *), void *data, bool include_overwritable) |
symtab_node * | ultimate_alias_target_1 (enum availability *avail=NULL, symtab_node *ref=NULL) |
const char * | get_dump_name (bool asm_name_p) const |
Static Private Member Functions | |
static bool | noninterposable_alias (symtab_node *node, void *data) |
static bool | set_section_from_string (symtab_node *n, void *s) |
static bool | set_section_from_node (symtab_node *n, void *o) |
static bool | set_implicit_section (symtab_node *n, void *) |
The varpool data structure. Each static variable decl has assigned varpool_node.
|
inlineexplicit |
|
static |
Add the variable DECL to the varpool. Unlike finalize_decl function is intended to be used by middle end and allows insertion of new variable at arbitrary point of compilation.
References symbol_table::call_varpool_insertion_hooks(), DECL_ATTRIBUTES, symtab_node::externally_visible, externally_visible_p(), finalize_decl(), get_create(), lookup_attribute(), symtab_node::no_reorder, and symtab.
Referenced by get_emutls_init_templ_addr(), gimplify_function_tree(), and new_emutls_decl().
|
inherited |
Add NEW_ to the same comdat group that OLD is in.
References cgraph_node::callers, symtab_node::comdat_local_p(), dyn_cast(), gcc_assert, symtab_node::get_comdat_group(), cgraph_edge::next_caller, NULL, symtab_node::same_comdat_group, and symtab_node::set_comdat_group().
Referenced by create_dispatcher_calls(), symtab_node::fixup_same_cpp_alias_visibility(), symtab_node::resolve_alias(), set_comdat_group(), and split_function().
|
inherited |
Return true if NODE's address can be compared.
References DECL_CXX_CONSTRUCTOR_P, DECL_CXX_DESTRUCTOR_P, DECL_IN_CONSTANT_POOL, DECL_MERGEABLE, DECL_VIRTUAL_P, is_a(), TREE_READONLY, and TREE_THIS_VOLATILE.
Referenced by address_matters_1(), ipa_ref::address_matters_p(), and comdat_can_be_unshared_p_1().
|
inherited |
Return true if symbol's address may possibly be compared to other symbol's address.
References address_matters_1(), symtab_node::alias, symtab_node::call_for_symbol_and_aliases(), gcc_assert, and NULL.
Referenced by ipa_icf::sem_function::merge(), and ipa_icf::sem_variable::merge().
|
inline |
Return true when all references to variable must be visible in ipa_ref_list. i.e. if the variable is not externally visible or not used in some magic way (asm statement or such). The magic uses are all summarized in force_output flag.
References symtab_node::definition, symtab_node::externally_visible, symtab_node::force_output, and symtab_node::used_from_other_partition.
Referenced by create_variable_info_for(), ipa_single_use(), and process_references().
void varpool_node::analyze | ( | void | ) |
References symtab_node::alias, symtab_node::alias_target, align_variable(), symtab_node::analyzed, DECL_INITIAL, symbol_table::function_flags_ready, gcc_assert, get(), record_references_in_initializer(), symtab_node::resolve_alias(), and symtab.
Referenced by analyze_functions(), and finalize_decl().
|
inherited |
Return printable assembler name of NODE. This function is used only for debugging. When assembler name is unknown go with identifier name.
References DECL_ASSEMBLER_NAME, DECL_ASSEMBLER_NAME_SET_P, IDENTIFIER_POINTER, and symtab_node::name().
Referenced by dump_callgraph_transformation(), symtab_node::get_dump_name(), symtab_node::name(), and cgraph_node::remove().
|
private |
Assemble thunks and aliases associated to varpool node.
References symtab_node::alias, DECL_ASSEMBLER_NAME, do_assemble_alias(), do_assemble_symver(), dyn_cast(), FOR_EACH_ALIAS, and ipa_ref::referring.
Referenced by assemble_decl().
bool varpool_node::assemble_decl | ( | void | ) |
Output one variable, if necessary. Return whether we output it.
References symtab_node::alias, assemble_aliases(), assemble_variable(), debug_hooks, DECL_EXTERNAL, DECL_HARD_REGISTER, DECL_HAS_VALUE_EXPR_P, DECL_IN_CONSTANT_POOL, symtab_node::definition, gcc_assert, gcc_checking_assert, get_constructor(), symtab_node::in_other_partition, gcc_debug_hooks::late_global_decl, targetm, TREE_ASM_WRITTEN, and VAR_P.
Referenced by finalize_decl(), and symbol_table::output_variables().
|
inherited |
Return true when references to this symbol from REF must bind to current definition in final executable.
References AVAIL_INTERPOSABLE, symtab_node::binds_to_current_def_p(), decl_binds_to_current_def_p(), DECL_EXTERNAL, symtab_node::definition, dyn_cast(), symtab_node::externally_visible, gcc_assert, symtab_node::get_alias_target(), symtab_node::get_availability(), symtab_node::get_comdat_group(), symtab_node::has_aliases_p(), symtab_node::ifunc_resolver, symtab_node::in_other_partition, cgraph_node::inlined_to, IPA_SSA_AFTER_INLINING, symbol_table::state, symtab, and symtab_node::transparent_alias.
Referenced by cgraph_edge::binds_to_current_def_p(), symtab_node::binds_to_current_def_p(), compute_strub_mode(), determine_global_memory_access(), get_modref_function_summary(), gimple_call_arg_flags(), gimple_call_retslot_flags(), gimple_call_static_chain_flags(), ignore_edge_for_nothrow(), propagate_nothrow(), ref_maybe_used_by_call_p_1(), set_const_flag_1(), set_nothrow_flag_1(), stmt_kills_ref_p(), and worse_state().
|
inlineinherited |
Call callback on symtab node and aliases associated to this node. When INCLUDE_OVERWRITABLE is false, overwritable symbols are skipped.
References AVAIL_INTERPOSABLE, symtab_node::call_for_symbol_and_aliases_1(), symtab_node::get_availability(), and symtab_node::has_aliases_p().
Referenced by symtab_node::address_matters_p(), symtab_node::definition_alignment(), symtab_node::increase_alignment(), ipa_comdats(), symtab_node::noninterposable_alias(), symtab_node::resolve_alias(), resolve_unique_section(), symtab_node::set_section(), and symtab_node::set_section().
|
inline |
Call callback on varpool symbol and aliases associated to varpool symbol. When INCLUDE_OVERWRITABLE is false, overwritable symbols are skipped.
References AVAIL_INTERPOSABLE, call_for_symbol_and_aliases_1(), get_availability(), and symtab_node::has_aliases_p().
Referenced by ipa_discover_variable_flags(), ipa_lower_emutls(), ipa_pta_execute(), and ipa_icf::sem_variable::merge().
|
protectedinherited |
Worker for call_for_symbol_and_aliases.
References symtab_node::alias, AVAIL_INTERPOSABLE, FOR_EACH_ALIAS, and ipa_ref::referring.
Referenced by symtab_node::call_for_symbol_and_aliases().
|
private |
Worker for call_for_symbol_and_aliases.
References symtab_node::alias, AVAIL_INTERPOSABLE, dyn_cast(), FOR_EACH_ALIAS, and ipa_ref::referring.
Referenced by call_for_symbol_and_aliases().
|
inlineinherited |
References DECL_COMMON, DECL_EXTERNAL, DECL_SECTION_NAME, DECL_WEAK, symtab_node::get_comdat_group(), symtab_node::in_other_partition, and symtab_node::resolution.
Referenced by can_replace_by_local_alias(), ipa_devirt(), ipa_make_edge_direct_to_target(), ipa_profile(), ipa_icf::sem_function::merge(), ipa_icf::sem_variable::merge(), symtab_node::nonzero_address(), optimize_weakref(), and try_speculative_devirtualization().
|
inherited |
Return true if symbol's alignment may be increased.
References symtab_node::decl, decl_binds_to_current_def_p(), DECL_IN_CONSTANT_POOL, DECL_PRESERVE_P, DECL_RTL, DECL_RTL_SET_P, DECL_SECTION_NAME, symtab_node::get_partitioning_class(), symtab_node::implicit_section, symtab_node::in_other_partition, MEM_P, NULL, SYMBOL_DUPLICATE, SYMBOL_REF_HAS_BLOCK_INFO_P, TREE_ASM_WRITTEN, symtab_node::ultimate_alias_target(), VAR_P, and XEXP.
Referenced by symtab_node::increase_alignment(), and increase_alignment_1().
|
inline |
Return true when variable can be removed from variable pool if all direct calls are eliminated.
References DECL_COMDAT, DECL_EXTERNAL, DECL_HAS_VALUE_EXPR_P, symtab_node::externally_visible, symtab_node::force_output, symtab_node::forced_by_abi, symtab_node::used_from_object_file_p(), and symtab_node::used_from_other_partition.
Referenced by symbol_table::remove_unreachable_nodes(), and symbol_table::remove_unreferenced_decls().
|
staticinherited |
Check symbol table for callees of IFUNC resolvers.
References BITMAP_ALLOC, bitmap_bit_p, BITMAP_FREE, bitmap_obstack_initialize(), bitmap_obstack_release(), bitmap_set_bit, cgraph_node::call_for_symbol_and_aliases(), cgraph_node::called_by_ifunc_resolver, check_ifunc_resolver(), dyn_cast(), FOR_EACH_SYMBOL, cgraph_node::get_uid(), ifunc_ref_map, is_caller_ifunc_resolver(), and NULL.
Referenced by symbol_table::compile().
|
inlinestaticinherited |
References symtab_node::verify_symtab_nodes().
Referenced by symbol_table::compile(), and symbol_table::remove_unreachable_nodes().
|
inherited |
Remove all stmt references in non-speculative references in THIS and all clones. Those are not maintained during inlining & cloning. The exception are speculative references that are updated along with callgraph edges associated with them.
References symtab_node::clear_stmts_in_references(), cgraph_node::clones, dyn_cast(), i, symtab_node::iterate_reference(), cgraph_node::next_sibling_clone, NULL, and r.
Referenced by symtab_node::clear_stmts_in_references(), inline_transform(), and cgraph_node::materialize_clone().
Clone reference REF to this symtab_node and set its stmt to STMT.
References symtab_node::create_reference(), ipa_ref::lto_stmt_uid, ipa_ref::referred, ipa_ref::speculative, ipa_ref::speculative_id, and ipa_ref::use.
Referenced by ipa_edge_args_sum_t::duplicate().
|
inherited |
Clone all references from symtab NODE to this symtab_node.
References symtab_node::create_reference(), i, symtab_node::iterate_reference(), ipa_ref::lto_stmt_uid, NULL, ipa_ref::referred, ipa_ref::speculative, ipa_ref::speculative_id, ipa_ref::stmt, and ipa_ref::use.
Referenced by cgraph_node::create_clone().
|
inherited |
Clone all referring from symtab NODE to this symtab_node.
References symtab_node::create_reference(), i, symtab_node::iterate_referring(), ipa_ref::lto_stmt_uid, NULL, ipa_ref::referring, ipa_ref::speculative, ipa_ref::speculative_id, ipa_ref::stmt, and ipa_ref::use.
|
inlineinherited |
References symtab_node::same_comdat_group, and TREE_PUBLIC.
Referenced by symtab_node::add_to_same_comdat_group(), analyze_functions(), determine_versionability(), inline_call(), localize_node(), mark_functions_to_output(), ipa_icf::sem_function::merge(), cgraph_edge::redirect_callee(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), symtab_node::verify_base(), and cgraph_node::verify_node().
|
inherited |
Copy visibility from N. This is useful when THIS becomes a transparent alias of N.
References symtab_node::alias, symtab_node::copy_visibility_from(), symtab_node::decl, DECL_COMDAT, DECL_COMMON, DECL_DLLIMPORT_P, DECL_EXTERNAL, DECL_RTL, DECL_RTL_SET_P, DECL_VISIBILITY, DECL_VISIBILITY_SPECIFIED, DECL_WEAK, symtab_node::externally_visible, gcc_assert, gcc_checking_assert, GET_CODE, symtab_node::get_comdat_group(), i, symtab_node::iterate_direct_aliases(), make_decl_rtl(), MEM_P, ipa_ref::referring, symtab_node::resolution, symtab_node::set_comdat_group(), symtab_node::set_section(), SYMBOL_REF_WEAK, TREE_ADDRESSABLE, TREE_CODE, TREE_PUBLIC, TREE_STATIC, VAR_P, symtab_node::weakref, and XEXP.
Referenced by symtab_node::copy_visibility_from(), and optimize_weakref().
|
static |
Attempt to mark ALIAS as an alias to DECL. Return TRUE if successful. Extra name aliases are output whenever DECL is output.
References symtab_node::alias, symtab_node::alias_target, symtab_node::decl, DECL_ATTRIBUTES, symtab_node::definition, gcc_assert, get_create(), lookup_attribute(), NULL, symtab_node::semantic_interposition, symtab_node::transparent_alias, VAR_P, and symtab_node::weakref.
Referenced by create_extra_name_alias(), handle_alias_pairs(), ipa_icf::sem_variable::merge(), new_emutls_decl(), and symtab_node::noninterposable_alias().
|
static |
Allocate new callgraph node and insert it into basic data structures.
References ggc_alloc().
Referenced by get_create(), and input_varpool_node().
|
static |
Attempt to mark ALIAS as an alias to DECL. Return TRUE if successful. Extra name aliases are output whenever DECL is output.
References symtab_node::alias, symtab_node::cpp_implicit_alias, symbol_table::cpp_implicit_aliases_done, create_alias(), get_create(), NULL, symtab_node::resolve_alias(), symtab, and TARGET_SUPPORTS_ALIASES.
|
inherited |
Return ipa reference from this symtab_node to REFERRED_NODE or REFERRED_VARPOOL_NODE. USE_TYPE specify type of the use.
References symtab_node::create_reference(), and NULL.
Referenced by adjust_references_in_caller(), symtab_node::clone_reference(), symtab_node::clone_references(), symtab_node::clone_referring(), create_dispatcher_calls(), symtab_node::create_reference(), gen_emutls_addr(), input_ref(), cgraph_edge::make_speculative(), symtab_node::maybe_create_reference(), process_symver_attribute(), propagate_controlled_uses(), record_eh_tables(), record_reference(), record_type_list(), and symtab_node::resolve_alias().
|
inherited |
Return ipa reference from this symtab_node to REFERRED_NODE or REFERRED_VARPOOL_NODE. USE_TYPE specify type of the use and STMT the statement (if it exists).
References gcc_checking_assert, i, IPA_REF_ALIAS, is_a(), symtab_node::iterate_reference(), ipa_ref::lto_stmt_uid, NULL, symtab_node::ref_list, ipa_ref_list::references, ipa_ref::referred, ipa_ref::referred_index, ipa_ref::referring, ipa_ref_list::referring, ipa_ref::speculative, ipa_ref::speculative_id, ipa_ref::stmt, and ipa_ref::use.
bool varpool_node::ctor_useable_for_folding_p | ( | void | ) |
Return true if variable has constructor that can be used for folding.
References symtab_node::alias, symtab_node::body_removed, symtab_node::decl, DECL_COMDAT, DECL_EXTERNAL, DECL_IN_CONSTANT_POOL, DECL_INITIAL, decl_replaceable_p(), DECL_VIRTUAL_P, DECL_WEAK, symtab_node::definition, error_mark_node, symtab_node::in_other_partition, symtab_node::lto_file_data, NULL, symtab_node::semantic_interposition, TREE_CODE, TREE_READONLY, TREE_THIS_VOLATILE, and ultimate_alias_target().
Referenced by ctor_for_folding(), dump(), and remove().
void varpool_node::debug | ( | void | ) |
Dump given varpool node to stderr.
References dump().
|
static |
Dump the variable pool to stderr.
References dump_varpool().
|
inherited |
Return desired alignment of the definition. This is NOT alignment useful to access THIS, because THIS may be interposable and DECL_ALIGN should be used instead. It however must be guaranteed when output definition of THIS.
References symtab_node::alias, symtab_node::call_for_symbol_and_aliases(), gcc_assert, and get_alignment_1().
Referenced by assemble_start_function(), build_constant_desc(), emit_local(), function_section_1(), and output_constant_def_contents().
|
inherited |
Dissolve the same_comdat_group list in which NODE resides.
References symtab_node::decl, dyn_cast(), symtab_node::next, NULL, symtab_node::same_comdat_group, symtab_node::set_comdat_group(), and TREE_PUBLIC.
Referenced by function_and_variable_visibility(), localize_node(), and update_visibility_by_resolution_info().
void varpool_node::dump | ( | FILE * | f | ) |
Dump given varpool node to F.
References cgraph_availability_names, ctor_useable_for_folding_p(), DECL_INITIAL, symtab_node::dump_base(), symbol_table::function_flags_ready, get_availability(), output, symtab, tls_model_names, TREE_READONLY, used_by_single_function, and symtab_node::writeonly.
Referenced by debug(), and dump_varpool().
|
inherited |
References symtab_node::get_dump_name().
Referenced by analyze_functions(), cgraph_edge::debug(), cgraph_node::dump(), symtab_node::dump_base(), symtab_node::dump_references(), symtab_node::dump_referring(), expand_all_functions(), ipa_reference_read_optimization_summary(), ipa_icf::sem_item_optimizer::merge_classes(), propagate(), symbol_table::remove_unreferenced_decls(), and ipa_icf::set_alias_uids().
|
protectedinherited |
Dump base fields of symtab nodes to F. Not to be used directly.
References symtab_node::address_taken, symtab_node::alias, symtab_node::alias_target, symtab_node::analyzed, symtab_node::aux, symtab_node::body_removed, symtab_node::cpp_implicit_alias, DECL_ARTIFICIAL, DECL_ASSEMBLER_NAME, DECL_COMDAT, DECL_COMMON, DECL_DLLIMPORT_P, DECL_EXTERNAL, DECL_ONE_ONLY, DECL_P, DECL_STATIC_CONSTRUCTOR, DECL_STATIC_DESTRUCTOR, DECL_VIRTUAL_P, DECL_VISIBILITY, DECL_VISIBILITY_SPECIFIED, DECL_WEAK, symtab_node::definition, dump_addr(), symtab_node::dump_asm_name(), dump_flags, symtab_node::dump_references(), symtab_node::dump_referring(), symtab_node::externally_visible, lto_file_decl_data::file_name, symtab_node::force_output, symtab_node::forced_by_abi, symtab_node::get_comdat_group(), symtab_node::get_comdat_group_id(), symtab_node::get_section(), IDENTIFIER_POINTER, symtab_node::ifunc_resolver, symtab_node::implicit_section, symtab_node::in_other_partition, ld_plugin_symbol_resolution_names, symtab_node::lto_file_data, symtab_node::name(), symtab_node::next_sharing_asm_name, symtab_node::no_reorder, symtab_node::order, symtab_node::previous_sharing_asm_name, symtab_node::resolution, symtab_node::same_comdat_group, symtab_node::semantic_interposition, symtab_type_names, symtab_node::symver, TDF_ADDRESS, symtab_node::transparent_alias, TREE_ASM_WRITTEN, TREE_CODE, TREE_PUBLIC, symtab_node::used_from_other_partition, and symtab_node::weakref.
Referenced by cgraph_node::dump(), and dump().
|
inherited |
References dyn_cast().
Referenced by symbol_table::dump_graphviz().
|
inherited |
References symtab_node::get_dump_name().
Referenced by adjust_references_in_caller(), analyze_function(), analyze_function_body(), analyze_functions(), call_may_clobber_ref_p_1(), copy_bb(), create_specialized_node(), decide_about_value(), decide_whether_version_node(), determine_versionability(), drop_profile(), cgraph_node::dump(), ipa_icf::sem_item::dump(), speculative_call_summary::dump(), cgraph_node::dump_graphviz(), dump_ipa_call_summary(), dump_malloc_lattice(), dump_modref_edge_summaries(), dump_profile_updates(), ipa_icf::sem_function::equals(), ipa_icf::sem_variable::equals(), estimate_local_effects(), ipa_call_context::estimate_size_and_time(), function_and_variable_visibility(), generate_summary(), cgraph_node::get_create(), identify_dead_nodes(), init_node_map(), initialize_node_lattices(), inline_analyze_function(), inline_call(), inline_small_functions(), inline_to_all_callers_1(), ipa_devirt(), ipa_discover_variable_flags(), ipa_dump_fn_summary(), ipa_impossible_devirt_target(), ipa_inline(), ipa_make_edge_direct_to_target(), ipa_make_function_const(), ipa_make_function_pure(), ipa_merge_modref_summary_after_inlining(), ipa_merge_profiles(), ipa_print_node_jump_functions(), ipa_print_node_params(), ipa_profile(), ipa_profile_dump_all_summaries(), ipa_propagate_frequency(), ipa_pta_execute(), ipa_single_use(), ipcp_cloning_candidate_p(), ipcp_store_vr_results(), ipcp_transform_function(), make_item_for_dump_symtab_node(), cgraph_edge::make_speculative(), cgraph_node::materialize_clone(), ipa_icf::sem_item_optimizer::merge_classes(), optimize_weakref(), output_constructor(), output_function(), perhaps_add_new_callers(), print_all_lattices(), propagate(), propagate_bits_across_jump_function(), propagate_controlled_uses(), propagate_malloc(), propagate_nothrow(), propagate_pure_const(), pure_const_read_summary(), read_write_all_from_decl(), recursive_inlining(), cgraph_edge::redirect_call_stmt_to_callee(), ref_maybe_used_by_call_p_1(), remove_described_reference(), symbol_table::remove_unreachable_nodes(), cgraph_edge::resolve_speculation(), save_inline_function_body(), stmt_kills_ref_p(), verify_speculative_call(), walk_polymorphic_call_targets(), walk_polymorphic_call_targets(), and worse_state().
|
inherited |
Dump references in ref list to FILE.
References symtab_node::dump_asm_name(), i, ipa_ref_use_name, symtab_node::iterate_reference(), NULL, ipa_ref::referred, ipa_ref::speculative, and ipa_ref::use.
Referenced by symtab_node::dump_base().
|
inherited |
Dump referring in list to FILE.
References symtab_node::dump_asm_name(), i, ipa_ref_use_name, symtab_node::iterate_referring(), NULL, ipa_ref::referring, ipa_ref::speculative, and ipa_ref::use.
Referenced by symtab_node::dump_base().
|
static |
Dump the variable pool to F.
References dump(), and FOR_EACH_VARIABLE.
Referenced by debug_varpool().
|
inherited |
Return 0 if symbol is known to have different address than S2, Return 1 if symbol is known to have same address as S2, return -1 otherwise. If MEMORY_ACCESSED is true, assume that both memory pointer to THIS and S2 is going to be accessed. This eliminates the situations when either THIS or S2 is NULL and is useful for comparing bases when deciding about memory aliasing.
References symtab_node::alias, symtab_node::analyzed, AVAIL_AVAILABLE, symtab_node::decl, DECL_ATTRIBUTES, decl_binds_to_current_def_p(), DECL_VIRTUAL_P, symtab_node::equal_address_to(), folding_initializer, symtab_node::get_alias_target(), lookup_attribute(), symtab_node::nonzero_address(), symtab_node::refuse_visibility_changes, symtab_node::transparent_alias, TREE_CODE, symtab_node::ultimate_alias_target(), and VAR_P.
Referenced by address_compare(), compare_base_decls(), ipa_icf::sem_item::compare_symbol_references(), and symtab_node::equal_address_to().
bool varpool_node::externally_visible_p | ( | void | ) |
Return true when variable should be considered externally visible.
References comdat_can_be_unshared_p(), DECL_ATTRIBUTES, DECL_COMDAT, DECL_EXTERNAL, DECL_HARD_REGISTER, DECL_PRESERVE_P, DECL_THREAD_LOCAL_P, DECL_TLS_MODEL, DECL_VISIBILITY, DECL_WEAK, symtab_node::definition, externally_visible_p(), FOR_EACH_ALIAS, get_alias_target(), lookup_attribute(), ipa_ref::referring, symtab_node::resolution, symtab_node::symver, TARGET_DLLIMPORT_DECL_ATTRIBUTES, TLS_MODEL_EMULATED, TLS_MODEL_INITIAL_EXEC, symtab_node::transparent_alias, TREE_PUBLIC, symtab_node::used_from_object_file_p(), VISIBILITY_HIDDEN, and VISIBILITY_INTERNAL.
Referenced by add(), externally_visible_p(), and function_and_variable_visibility().
|
static |
Mark DECL as finalized. By finalizing the declaration, frontend instruct the middle end to output the variable to asm file, if needed or externally visible.
References analyze(), assemble_decl(), CONSTRUCTION, symtab_node::decl, DECL_ARTIFICIAL, DECL_COMDAT, DECL_EXTERNAL, DECL_PRESERVE_P, symtab_node::definition, enqueue_node(), EXPANSION, FINISHED, symtab_node::force_output, gcc_assert, get_create(), IPA_SSA, symtab_node::needed_p(), symtab_node::no_reorder, notice_global_symbol(), symtab_node::referred_to_p(), symtab_node::semantic_interposition, symbol_table::state, symtab, TREE_STATIC, and TREE_THIS_VOLATILE.
Referenced by add(), add_decls_addresses_to_decl_constructor(), asan_add_global(), asan_finish_file(), build_gcov_info_var_registration(), tree_switch_conversion::switch_conversion::build_one_array(), rt_bb_visited::check(), coverage_end_function(), coverage_obj_finish(), coverage_obj_fn(), create_odr_indicator(), expand_omp_target(), expand_omp_taskreg(), lower_omp_critical(), omp_finish_file(), process_function_and_variable_attributes(), rest_of_decl_compilation(), tree_output_constant_def(), ubsan_create_data(), ubsan_expand_vptr_ifn(), and ubsan_type_descriptor().
void varpool_node::finalize_named_section_flags | ( | void | ) |
For variables in named sections make sure get_variable_section is called before we switch to those sections. Then section conflicts between read-only and read-only requiring relocations sections can be resolved.
References symtab_node::alias, DECL_EXTERNAL, DECL_HAS_VALUE_EXPR_P, symtab_node::get_section(), get_variable_section(), symtab_node::in_other_partition, TREE_ASM_WRITTEN, and VAR_P.
Referenced by output_in_order(), and symbol_table::output_variables().
|
inherited |
Find the structure describing a reference to REFERRED_NODE of USE_TYPE and associated with statement STMT or LTO_STMT_UID.
References i, symtab_node::iterate_reference(), NULL, and r.
Referenced by adjust_references_in_caller(), ipa_edge_args_sum_t::duplicate(), ipcp_discover_new_direct_edges(), propagate_controlled_uses(), and remove_described_reference().
|
inherited |
C++ FE sometimes change linkage flags after producing same body aliases. FIXME: C++ produce implicit aliases for virtual functions and vtables that are obviously equivalent. The way it is doing so is however somewhat kludgy and interferes with the visibility code. As a result we need to copy the visibility from the target to get things right.
References symtab_node::add_to_same_comdat_group(), symtab_node::decl, DECL_COMDAT, DECL_DECLARED_INLINE_P, DECL_DISREGARD_INLINE_LIMITS, DECL_EXTERNAL, DECL_VISIBILITY, DECL_WEAK, symtab_node::externally_visible, symtab_node::get_comdat_group(), is_a(), symtab_node::same_comdat_group, symtab_node::set_comdat_group(), and TREE_PUBLIC.
Referenced by analyze_functions(), and symtab_node::resolve_alias().
|
inlinestatic |
Return varpool node for given symbol and check it is a function.
References dyn_cast(), gcc_checking_assert, symtab_node::get(), and TREE_CODE.
Referenced by analyze(), asan_add_global(), can_refer_decl_in_current_unit_p(), create_emultls_var(), create_variable_info_for(), ctor_for_folding(), decl_tls_model(), execute_fixup_cfg(), expand_call_inline(), gen_emutls_addr(), get_constraint_for_ssa_var(), get_create(), get_symbol_initial_value(), get_variable_section(), gimplify_adjust_omp_clauses_1(), gimplify_bind_expr(), input_offload_tables(), instrument_derefs(), ipa_lower_emutls(), ipa_tm_create_version(), ipa_tm_create_version_alias(), lower_omp_target(), maybe_remove_writeonly_store(), ptrs_compare_unequal(), record_target_from_binfo(), reference_to_unused(), set_decl_tls_model(), tree_could_trap_p(), type_possibly_instantiated_p(), ubsan_type_descriptor(), wrapup_global_declaration_2(), and write_symbol().
|
inline |
Return node that alias is aliasing.
References dyn_cast(), and symtab_node::get_alias_target().
Referenced by create_emultls_var(), ctor_for_folding(), externally_visible_p(), propagate_single_user(), and symbol_table::remove_unreferenced_decls().
|
inlineinherited |
Return the DECL (or identifier) that alias is aliasing. Unlike the above, this works whether or not the alias has been analyzed already.
References symtab_node::alias_target, symtab_node::decl, and symtab_node::get_alias_target().
Referenced by process_function_and_variable_attributes().
enum availability varpool_node::get_availability | ( | symtab_node * | ref = NULL | ) |
Return variable availability. See cgraph.h for description of individual return values.
References AVAIL_AVAILABLE, AVAIL_INTERPOSABLE, AVAIL_NOT_AVAILABLE, DECL_EXTERNAL, DECL_IN_CONSTANT_POOL, decl_replaceable_p(), DECL_VIRTUAL_P, symtab_node::definition, symtab_node::get_comdat_group(), symtab_node::has_aliases_p(), symtab_node::in_other_partition, symtab_node::semantic_interposition, symtab_node::transparent_alias, TREE_PUBLIC, and ultimate_alias_target().
Referenced by call_for_symbol_and_aliases(), and dump().
|
inlineinherited |
References symtab_node::x_comdat_group.
Referenced by symtab_node::add_to_same_comdat_group(), symtab_node::binds_to_current_def_p(), symtab_node::can_be_discarded_p(), cgraph_node::can_remove_if_no_direct_calls_p(), symtab_node::copy_visibility_from(), create_dispatcher_calls(), decl_comdat_group(), symtab_node::dump_base(), symtab_node::fixup_same_cpp_alias_visibility(), cgraph_node::get_availability(), get_availability(), symtab_node::in_same_comdat_group_p(), ipa_comdats(), lto_output_node(), lto_output_varpool_node(), ipa_icf::sem_function::merge(), symtab_node::resolve_alias(), set_comdat_group(), symtab_node::verify_base(), symtab_node::verify_symtab_nodes(), and cgraph_node::will_be_removed_from_program_if_no_direct_calls_p().
|
inlineinherited |
References DECL_ASSEMBLER_NAME, TREE_CODE, and symtab_node::x_comdat_group.
Referenced by analyze_functions(), decl_comdat_group_id(), and symtab_node::dump_base().
tree varpool_node::get_constructor | ( | void | ) |
When doing LTO, read variable's constructor from disk if it is not already present.
References lto_in_decl_state::compressed, DECL_ASSEMBLER_NAME, DECL_INITIAL, error_mark_node, fatal_error(), lto_file_decl_data::file_name, gcc_assert, IDENTIFIER_POINTER, input_location, symtab_node::lto_file_data, lto_free_function_in_decl_state_for_node(), lto_free_section_data(), lto_get_decl_name_mapping(), lto_get_function_in_decl_state(), lto_get_section_data(), lto_input_variable_constructor(), LTO_section_function_body, lto_stats, symtab_node::name(), lto_stats_d::num_function_bodies, symtab_node::order, lto_file_decl_data::order_base, timevar_pop(), and timevar_push().
Referenced by assemble_decl(), ctor_for_folding(), function_and_variable_visibility(), and get_variable_section().
|
static |
Return varpool node assigned to DECL. Create new one when needed.
References create_empty(), symtab_node::decl, DECL_ATTRIBUTES, DECL_EXTERNAL, g, gcc_checking_assert, get(), gcc::context::have_offload, lookup_attribute(), offload_vars, symtab_node::offloadable, symtab_node::register_symbol(), VAR_P, and vec_safe_push().
Referenced by add(), assemble_alias(), create_alias(), create_extra_name_alias(), decl_init_priority_insert(), finalize_decl(), symtab_node::get_create(), get_emutls_init_templ_addr(), lower_omp_critical(), lower_omp_target(), make_decl_one_only(), mark_address(), mark_decl_referenced(), mark_load(), mark_store(), new_emutls_decl(), omp_notice_variable(), symbol_table::process_same_body_aliases(), record_reference(), record_references_in_initializer(), record_type_list(), rest_of_decl_compilation(), scan_sharing_clauses(), set_decl_section_name(), set_decl_section_name(), and set_decl_tls_model().
|
privateinherited |
References symtab_node::asm_name(), EXTRA, ggc_internal_cleared_alloc(), symtab_node::name(), and symtab_node::order.
Referenced by symtab_node::dump_asm_name(), and symtab_node::dump_name().
|
staticinherited |
Return the cgraph node that has ASMNAME for its DECL_ASSEMBLER_NAME. Return NULL if there's no such node.
References symbol_table::assembler_name_hash, symbol_table::decl_assembler_name_hash(), hash_table< Descriptor, Lazy, Allocator >::find_slot_with_hash(), NULL, symtab, and symbol_table::symtab_initialize_asm_name_hash().
Referenced by find_decl(), cgraph_node::get_for_asmname(), get_for_asmname(), handle_alias_pairs(), symtab_node::noninterposable_alias(), cgraph_edge::possibly_call_in_translation_unit_p(), process_symver_attribute(), and symtab_node::verify_base().
|
static |
Given an assembler name, lookup node.
References dyn_cast(), symtab_node::get_for_asmname(), and NULL.
Referenced by new_emutls_decl().
|
inherited |
Return the initialization priority.
References DEFAULT_INIT_PRIORITY, hash_map< KeyId, Value, Traits >::get(), symtab_node::in_init_priority_hash, symbol_priority_map::init, symbol_table::init_priority_hash, and symtab.
Referenced by decl_init_priority_lookup(), cgraph_node::dump(), lto_output_node(), and symtab_node::set_init_priority().
|
inherited |
Classify symbol symtab node for partitioning.
References symtab_node::alias, DECL_ABSTRACT_P, DECL_EXTERNAL, DECL_HARD_REGISTER, DECL_IN_CONSTANT_POOL, DECL_ONE_ONLY, cgraph_node::declare_variant_alt, symtab_node::definition, dyn_cast(), symtab_node::force_output, symtab_node::forced_by_abi, gcc_checking_assert, cgraph_node::inlined_to, SYMBOL_DUPLICATE, SYMBOL_EXTERNAL, SYMBOL_PARTITION, symtab_node::transparent_alias, symtab_node::ultimate_alias_target(), and symtab_node::used_from_object_file_p().
Referenced by symtab_node::can_increase_alignment_p(), lto_output_node(), and lto_output_varpool_node().
|
inlineinherited |
References section_hash_entry::name, NULL, and symtab_node::x_section.
Referenced by btf_add_vars(), btf_datasec_add_var(), decl_section_name(), symtab_node::dump_base(), finalize_named_section_flags(), get_section_name(), ipa_comdats(), ipa_discover_variable_flags(), lto_output_node(), lto_output_varpool_node(), symtab_node::resolve_alias(), symtab_node::set_section_for_node(), symtab_node::set_section_for_node(), and symtab_node::verify_base().
|
inherited |
Dump the type_name of the symbol.
References symtab_type_names, and symtab_node::type.
|
inherited |
Dump the visibility of the symbol.
References DECL_VISIBILITY.
|
inlineinherited |
Return true if list contains an alias.
References symtab_node::iterate_direct_aliases(), and NULL.
Referenced by symtab_node::binds_to_current_def_p(), cgraph_node::call_for_symbol_and_aliases(), symtab_node::call_for_symbol_and_aliases(), call_for_symbol_and_aliases(), execute_split_functions(), function_and_variable_visibility(), cgraph_node::get_availability(), get_availability(), ipa_icf::sem_function::merge(), ipa_icf::redirect_all_callers(), and skip_function_for_local_pure_const().
|
inlineinherited |
References dyn_cast(), and symtab_node::get_comdat_group().
Referenced by function_and_variable_visibility(), ipa_icf::sem_function::merge(), symtab_node::verify_base(), and cgraph_node::verify_node().
|
inherited |
Increase alignment of THIS to ALIGN.
References symtab_node::call_for_symbol_and_aliases(), symtab_node::can_increase_alignment_p(), DECL_ALIGN, gcc_assert, increase_alignment_1(), MAX_OFILE_ALIGNMENT, and symtab_node::ultimate_alias_target().
Referenced by ensure_base_align(), and increase_alignment().
Iterates I-th referring alias item in the list, REF is also set.
References i, IPA_REF_ALIAS, NULL, symtab_node::ref_list, ipa_ref_list::referring, and ipa_ref::use.
Referenced by symbol_table::change_decl_assembler_name(), symtab_node::copy_visibility_from(), symtab_node::has_aliases_p(), ipa_single_use(), symtab_node::make_decl_local(), ipa_icf::redirect_all_callers(), symbol_table::remove_unreachable_nodes(), and symtab_node::resolve_alias().
Iterates I-th reference in the list, REF is also set.
References i, symtab_node::ref_list, and ipa_ref_list::references.
Referenced by analyze_function(), analyze_functions(), ipa_icf::sem_item_optimizer::build_graph(), symtab_node::clear_stmts_in_references(), symtab_node::clone_references(), compare_virtual_tables(), symtab_node::create_reference(), create_references(), create_variable_info_for(), symtab_node::dump_references(), enqueue_references(), ipa_icf::sem_function::equals_wpa(), ipa_icf::sem_variable::equals_wpa(), symtab_node::find_reference(), fixup_call_stmt_edges_1(), function_and_variable_visibility(), generate_summary(), symtab_node::get_alias_target(), ipa_single_use(), output_refs(), process_references(), propagate_pure_const(), cgraph_edge::rebuild_references(), symtab_node::remove_stmt_references(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), cgraph_edge::set_call_stmt(), cgraph_edge::speculative_call_target_ref(), ipa_icf::symbol_compare_collection::symbol_compare_collection(), ipa_icf::sem_item::update_hash_by_addr_refs(), ipa_icf::sem_item::update_hash_by_local_refs(), cgraph_node::verify_node(), and verify_speculative_call().
Iterates I-th referring item in the list, REF is also set.
References i, symtab_node::ref_list, and ipa_ref_list::referring.
Referenced by address_matters_1(), cgraph_node::can_remove_if_no_direct_calls_p(), symtab_node::clone_referring(), comdat_can_be_unshared_p_1(), create_dispatcher_calls(), symtab_node::dump_referring(), has_addr_references_p(), have_optimized_refs(), ipa_reverse_postorder(), symtab_node::output_to_lto_symbol_table_p(), process_references(), propagate_comdat_group(), propagate_single_user(), referenced_from_other_partition_p(), referenced_from_this_partition_p(), referenced_from_vtable_p(), symtab_node::referred_to_p(), and symtab_node::verify_base().
|
inherited |
Make DECL local. FIXME: We shouldn't need to mess with rtl this early, but other code such as notice_global_symbol generates rtl.
References symtab_node::alias, symbol_table::change_decl_assembler_name(), DECL_ASSEMBLER_NAME, DECL_ATTRIBUTES, DECL_COMDAT, DECL_COMMON, DECL_DLLIMPORT_P, DECL_EXTERNAL, DECL_RTL, DECL_RTL_SET_P, DECL_VISIBILITY, DECL_VISIBILITY_SPECIFIED, DECL_WEAK, gcc_assert, symtab_node::get_alias_target(), GET_CODE, i, IDENTIFIER_TRANSPARENT_ALIAS, symtab_node::iterate_direct_aliases(), symtab_node::make_decl_local(), make_decl_rtl(), MEM_P, NULL_TREE, ipa_ref::referring, remove_attribute(), SYMBOL_REF_WEAK, symtab, TREE_ADDRESSABLE, TREE_CHAIN, TREE_CODE, TREE_PUBLIC, TREE_STATIC, VAR_P, VISIBILITY_DEFAULT, symtab_node::weakref, and XEXP.
Referenced by create_dispatcher_calls(), cgraph_node::create_version_clone_with_body(), localize_node(), symtab_node::make_decl_local(), cgraph_node::make_local(), and optimize_weakref().
References symtab_node::create_reference(), gcc_assert, gcc_checking_assert, symtab_node::get(), get_base_var(), handled_component_p(), IPA_REF_ADDR, IPA_REF_LOAD, NULL, STRIP_NOPS, TREE_CODE, and VAR_OR_FUNCTION_DECL_P.
Referenced by create_specialized_node(), and cgraph_node::create_virtual_clone().
|
inherited |
Return printable identifier name.
References symtab_node::asm_name(), DECL_ASSEMBLER_NAME_SET_P, DECL_NAME, and lang_hooks::decl_printable_name.
Referenced by symtab_node::asm_name(), assemble_external_libcall(), assemble_function_label_raw(), assemble_label(), assemble_name(), assemble_name_raw(), assemble_name_resolve(), assemble_noswitch_variable(), assemble_static_space(), assemble_trampoline_template(), assemble_undefined_decl(), assemble_variable(), assemble_variable_contents(), cgraph_node::create_virtual_clone(), decode_reg_name_and_count(), default_assemble_visibility(), default_function_rodata_section(), do_assemble_alias(), symtab_node::dump_base(), emit_common(), emit_local(), emit_tls_common(), expand_call_inline(), get_constructor(), symtab_node::get_dump_name(), cgraph_node::get_untransformed_body(), globalize_decl(), ipa_sra_summarize_function(), make_decl_rtl(), mergeable_constant_section(), mergeable_string_section(), symtab_node::noninterposable_alias(), process_pending_assemble_externals(), set_user_assembler_name(), strip_reg_name(), symtab_node::verify_base(), cgraph_node::verify_node(), verify_node_partition(), and weak_finish_1().
|
inherited |
Return true if this symbol is a function from the C frontend specified directly in RTL form (with "__RTL").
References DECL_STRUCT_FUNCTION, PROP_rtl, and TREE_CODE.
Referenced by cgraph_node::analyze(), cgraph_node::expand(), cgraph_node::finalize_function(), and symtab_node::needed_p().
|
inherited |
Determine if symbol declaration is needed. That is, visible to something either outside this translation unit, something magic in the system configury
References DECL_ASSEMBLER_NAME, DECL_ASSEMBLER_NAME_SET_P, DECL_COMDAT, DECL_EXTERNAL, DECL_STATIC_CONSTRUCTOR, DECL_STATIC_DESTRUCTOR, symtab_node::definition, symtab_node::force_output, symtab_node::forced_by_abi, gcc_checking_assert, symtab_node::native_rtl_p(), TREE_CODE, TREE_PUBLIC, and TREE_SYMBOL_REFERENCED.
Referenced by analyze_functions(), finalize_decl(), and cgraph_node::finalize_function().
|
inlineinherited |
Return next reachable static symbol with initializer after the node.
References symtab_node::definition, symtab_node::next, and NULL.
|
staticprivateinherited |
Worker searching noninterposable alias.
References symtab_node::decl, DECL_ATTRIBUTES, decl_binds_to_current_def_p(), DECL_CONTEXT, flags_from_decl_or_type(), symtab_node::transparent_alias, TREE_CODE, TREE_TYPE, and symtab_node::ultimate_alias_target().
|
inherited |
If node cannot be overwriten by static or dynamic linker to point to different definition, return NODE. Otherwise look for alias with such property and if none exists, introduce new one.
References symtab_node::alias, symtab_node::call_for_symbol_and_aliases(), clone_function_name(), copy_node(), cgraph_node::create_alias(), create_alias(), symtab_node::decl, DECL_ATTRIBUTES, decl_binds_to_current_def_p(), DECL_COMDAT, DECL_DLLIMPORT_P, DECL_EXTERNAL, DECL_INITIAL, DECL_NAME, DECL_STATIC_CONSTRUCTOR, DECL_STATIC_DESTRUCTOR, DECL_STRUCT_FUNCTION, DECL_VIRTUAL_P, DECL_WEAK, dyn_cast(), error_mark_node, gcc_assert, symtab_node::get_for_asmname(), lookup_attribute(), cgraph_node::merged_comdat, cgraph_node::merged_extern_inline, symtab_node::name(), symtab_node::noninterposable_alias(), NULL, symtab_node::resolve_alias(), SET_DECL_ASSEMBLER_NAME, SET_DECL_RTL, TARGET_SUPPORTS_ALIASES, targetm, TREE_CODE, TREE_PUBLIC, TREE_READONLY, symtab_node::ultimate_alias_target(), cgraph_node::unit_id, and symtab_node::weakref.
Referenced by function_and_variable_visibility(), ipa_devirt(), ipa_make_edge_direct_to_target(), ipa_profile(), ipa_icf::sem_function::merge(), symtab_node::noninterposable_alias(), and update_vtable_references().
|
inherited |
Return true when symbol is known to be non-zero.
References symtab_node::alias, symtab_node::analyzed, symtab_node::can_be_discarded_p(), symtab_node::decl, DECL_COMDAT, DECL_EXTERNAL, DECL_WEAK, symtab_node::definition, symtab_node::refuse_visibility_changes, symtab_node::resolution, symtab_node::ultimate_alias_target(), and symtab_node::weakref.
Referenced by symtab_node::equal_address_to(), get_constraint_for_ssa_var(), and ptrs_compare_unequal().
|
inlineinherited |
References symtab_node::ref_list, and ipa_ref_list::references.
Referenced by ipa_icf::sem_function::equals_wpa(), ipa_icf::sem_variable::equals_wpa(), and set_writeonly_bit().
|
inherited |
Return true if symbol should be output to the symbol table.
References builtin_with_linkage_p(), cgraph_node::callers, symtab_node::decl, DECL_EXTERNAL, DECL_HARD_REGISTER, symtab_node::definition, dyn_cast(), fndecl_built_in_p(), i, IPA_REF_ALIAS, is_a(), symtab_node::iterate_referring(), symtab_node::real_symbol_p(), ipa_ref::referring, TREE_CODE, TREE_PUBLIC, ipa_ref::use, and VAR_P.
Referenced by produce_symtab(), and produce_symtab_extension().
|
inlineinherited |
During LTO stream-in this predicate can be used to check whether node in question prevails in the linking to save some memory usage.
References DECL_EXTERNAL, symtab_node::definition, NULL, symtab_node::previous_sharing_asm_name, and TREE_PUBLIC.
Referenced by inline_read_section(), ipa_read_node_info(), and cgraph_edge::possibly_call_in_translation_unit_p().
|
protectedinherited |
Return the initialization and finalization priority information for DECL. If there is no previous priority information, a freshly allocated structure is returned.
References hash_map< KeyId, Value, Traits >::create_ggc(), DEFAULT_INIT_PRIORITY, symbol_priority_map::fini, hash_map< KeyId, Value, Traits >::get_or_insert(), symtab_node::in_init_priority_hash, symbol_priority_map::init, symbol_table::init_priority_hash, and symtab.
Referenced by cgraph_node::set_fini_priority(), and symtab_node::set_init_priority().
|
inlineinherited |
Return true when the symbol is real symbol, i.e. it is not inline clone or abstract function kept for debug info purposes only.
References DECL_ABSTRACT_P, symtab_node::definition, dyn_cast(), cgraph_node::inlined_to, is_a(), and symtab_node::transparent_alias.
Referenced by build_type_inheritance_graph(), ipa_comdats(), maybe_record_node(), symtab_node::output_to_lto_symbol_table_p(), set_comdat_group(), and update_type_inheritance_graph().
Return true when there are references to the node. INCLUDE_SELF is true if a self reference counts as a reference.
References cgraph_node::callers, dyn_cast(), symtab_node::iterate_referring(), cgraph_edge::next_caller, and NULL.
Referenced by analyze_functions(), check_global_declaration(), finalize_decl(), and cgraph_node::finalize_function().
|
inherited |
Add node into symbol table. This function is not used directly, but via cgraph/varpool node creation routines.
References ipa_ref_list::clear(), symbol_table::insert_to_assembler_name_hash(), symtab_node::ref_list, symbol_table::register_symbol(), and symtab.
Referenced by cgraph_node::create(), cgraph_node::create_clone(), get_create(), input_node(), and input_varpool_node().
void varpool_node::remove | ( | void | ) |
Remove variable from symbol table.
References symbol_table::call_varpool_removal_hooks(), ctor_useable_for_folding_p(), DECL_INITIAL, error_mark_node, ggc_free(), symtab_node::lto_file_data, lto_free_function_in_decl_state_for_node(), LTO_STREAMING, NULL, remove_initializer(), symbol_table::state, symtab, and symtab_node::unregister().
Referenced by symbol_table::remove_unreachable_nodes(), and symbol_table::remove_unreferenced_decls().
|
inherited |
Remove all references in ref list.
References symtab_node::ref_list, and ipa_ref_list::references.
Referenced by early_inliner(), function_and_variable_visibility(), inline_transform(), ipa_icf::sem_variable::merge(), cgraph_edge::rebuild_edges(), cgraph_node::release_body(), symbol_table::remove_unreachable_nodes(), symtab_node::reset(), symtab_node::resolve_alias(), set_writeonly_bit(), split_function(), and symtab_node::unregister().
|
inherited |
Remove all referring items in ref list.
References symtab_node::ref_list, and ipa_ref_list::referring.
Referenced by symtab_node::unregister().
|
inherited |
Remove NODE from same comdat group.
References NULL, symtab_node::same_comdat_group, and symtab_node::set_comdat_group().
Referenced by clone_inlined_nodes(), symbol_table::remove_unreachable_nodes(), symtab_node::reset(), symtab_node::resolve_alias(), and symtab_node::unregister().
void varpool_node::remove_initializer | ( | void | ) |
Remove node initializer when it is no longer needed.
References DECL_IN_CONSTANT_POOL, DECL_INITIAL, DECL_VIRTUAL_P, DINFO_LEVEL_NONE, error_mark_node, LTO_STREAMING, symbol_table::state, and symtab.
Referenced by remove(), symbol_table::remove_unreachable_nodes(), and symbol_table::remove_unreferenced_decls().
|
inherited |
Remove all references that are associated with statement STMT.
References i, symtab_node::iterate_reference(), NULL, r, and ipa_ref::remove_reference().
Referenced by delete_unreachable_blocks_update_callgraph(), and ipa_param_adjustments::modify_call().
As an GCC extension we allow redefinition of the function. The semantics when both copies of bodies differ is not well defined. We replace the old body with new body so in unit at a time mode we always use new body, while in normal mode we may end up with old body inlined into some functions and new body expanded and inlined in others. ??? It may make more sense to use one body for inlining and other body for expanding the function but this is difficult to do. This is also used to cancel C++ mangling aliases, which can be for functions or variables.
References symtab_node::alias, symtab_node::analyzed, symtab_node::cpp_implicit_alias, symtab_node::definition, dyn_cast(), gcc_assert, NULL, symtab_node::remove_all_references(), symtab_node::remove_from_same_comdat_group(), symtab_node::transparent_alias, and symtab_node::weakref.
Referenced by analyze_functions(), cgraph_node::create_thunk(), cgraph_node::create_wrapper(), cgraph_node::finalize_function(), handle_alias_pairs(), and ipa_icf::sem_function::merge().
|
inherited |
Add reference recording that symtab node is alias of TARGET. The function can fail in the case of aliasing cycles; in this case it returns false.
References symtab_node::add_to_same_comdat_group(), symtab_node::address_taken, symtab_node::alias, symtab_node::alias_target, symtab_node::analyzed, symtab_node::call_for_symbol_and_aliases(), CONSTRUCTION, symtab_node::cpp_implicit_alias, symtab_node::create_reference(), symtab_node::definition, error(), symtab_node::fixup_same_cpp_alias_visibility(), gcc_assert, gcc_unreachable, symtab_node::get_alias_target(), symtab_node::get_comdat_group(), symtab_node::get_section(), i, symtab_node::implicit_section, IPA_REF_ALIAS, is_a(), symtab_node::iterate_direct_aliases(), NULL, symtab_node::ref_list, ipa_ref_list::references, ipa_ref::referring, symtab_node::remove_all_references(), symtab_node::remove_from_same_comdat_group(), symtab_node::same_comdat_group, symtab_node::set_comdat_group(), symtab_node::set_implicit_section(), symtab_node::set_section(), symbol_table::state, symtab, symtab_node::symver, symtab_node::transparent_alias, and symtab_node::ultimate_alias_target().
Referenced by cgraph_node::analyze(), analyze(), create_dispatcher_calls(), create_extra_name_alias(), cgraph_node::create_same_body_alias(), ipa_icf::sem_function::merge(), ipa_icf::sem_variable::merge(), new_emutls_decl(), symtab_node::noninterposable_alias(), and symbol_table::process_same_body_aliases().
|
inherited |
Return true if symtab node and TARGET represents semantically equivalent symbols.
References AVAIL_AVAILABLE, symtab_node::decl, and symtab_node::ultimate_alias_target().
Referenced by ipa_icf::sem_item::compare_symbol_references(), cgraph_edge::make_direct(), possible_polymorphic_call_target_p(), recursive_call_p(), and cgraph_edge::resolve_speculation().
|
inlineinherited |
References DECL_P, gcc_checking_assert, TREE_CODE, and symtab_node::x_comdat_group.
Referenced by symtab_node::add_to_same_comdat_group(), symtab_node::copy_visibility_from(), create_dispatcher_calls(), symtab_node::dissolve_same_comdat_group_list(), symtab_node::fixup_same_cpp_alias_visibility(), input_node(), input_varpool_node(), ipa_tm_create_version(), ipa_tm_create_version_alias(), localize_node(), make_decl_one_only(), cgraph_node::make_local(), symtab_node::remove_from_same_comdat_group(), symtab_node::resolve_alias(), set_comdat_group(), and update_visibility_by_resolution_info().
|
staticprivateinherited |
Worker for symtab_resolve_alias.
References symtab_node::implicit_section.
Referenced by symtab_node::resolve_alias().
|
inherited |
Set initialization priority to PRIORITY.
References DECL_STATIC_CONSTRUCTOR, DEFAULT_INIT_PRIORITY, gcc_assert, symtab_node::get_init_priority(), symbol_priority_map::init, is_a(), and symtab_node::priority_info().
Referenced by decl_init_priority_insert(), and input_node().
|
inherited |
Set section of symbol and its aliases.
References symtab_node::alias, symtab_node::analyzed, symtab_node::call_for_symbol_and_aliases(), gcc_assert, and symtab_node::set_section_from_string().
Referenced by symtab_node::copy_visibility_from(), create_dispatcher_calls(), cgraph_node::create_version_clone_with_body(), cgraph_node::create_virtual_clone(), ipa_tm_create_version(), localize_node(), cgraph_node::make_local(), symtab_node::resolve_alias(), set_decl_section_name(), and set_decl_section_name().
|
inherited |
|
inherited |
Set section, do not recurse into aliases. When one wants to change section of a symbol and its aliases, use set_section.
References hash_table< Descriptor, Lazy, Allocator >::create_ggc(), hash_table< Descriptor, Lazy, Allocator >::find_slot_with_hash(), symtab_node::get_section(), ggc_cleared_alloc(), ggc_vec_alloc(), symtab_node::implicit_section, section_hash_entry::name, NULL, section_hash_entry::ref_count, release_section_hash_entry(), retain_section_hash_entry(), symbol_table::section_hash, symtab, and symtab_node::x_section.
Referenced by input_node(), input_varpool_node(), symtab_node::set_section_from_node(), symtab_node::set_section_from_string(), and symtab_node::unregister().
|
inherited |
Set the section of node THIS to be the same as the section of node OTHER. Keep reference counts of the sections up-to-date as needed.
References gcc_checking_assert, symtab_node::get_section(), symtab_node::implicit_section, NULL, release_section_hash_entry(), retain_section_hash_entry(), and symtab_node::x_section.
|
staticprivateinherited |
Set the section of node N to be the same as the section of node O.
References symtab_node::set_section_for_node().
Referenced by symtab_node::set_section().
|
staticprivateinherited |
Workers for set_section.
References symtab_node::set_section_for_node().
Referenced by symtab_node::set_section().
|
inline |
For given variable pool node, walk the alias chain to return the function the variable is alias of. Do not walk through thunks. When AVAILABILITY is non-NULL, get minimal availability in the chain. When REF is non-NULL, assume that reference happens in symbol REF when determining the availability.
References AVAIL_NOT_AVAILABLE, dyn_cast(), and symtab_node::ultimate_alias_target().
Referenced by ctor_for_folding(), ctor_useable_for_folding_p(), get_availability(), get_constraint_for_ssa_var(), get_variable_section(), ipa_lower_emutls(), and tree_could_trap_p().
|
privateinherited |
Walk the alias chain to return the symbol NODE is alias of. If NODE is not an alias, return NODE. Assumes NODE is known to be alias.
References symtab_node::alias, symtab_node::analyzed, AVAIL_NOT_AVAILABLE, symtab_node::get_alias_target(), symtab_node::get_availability(), NULL, and symtab_node::transparent_alias.
Referenced by symtab_node::ultimate_alias_target().
|
protectedinherited |
Remove node from symbol table. This function is not used directly, but via cgraph/varpool node removal routines. INFO is a clone info to attach to new root of clone tree (if any).
References DECL_HARD_REGISTER, dyn_cast(), gcc_assert, symtab_node::in_init_priority_hash, symbol_table::init_priority_hash, is_a(), NULL, hash_map< KeyId, Value, Traits >::remove(), symtab_node::remove_all_references(), symtab_node::remove_all_referring(), symtab_node::remove_from_same_comdat_group(), symtab_node::set_section_for_node(), symtab, symbol_table::unlink_from_assembler_name_hash(), and symbol_table::unregister().
Referenced by cgraph_node::remove(), and remove().
|
inlineinherited |
Return true when symtab_node is known to be used from other (non-LTO) object file. Known only when doing LTO via linker plugin.
References DECL_EXTERNAL, symtab_node::resolution, resolution_used_from_other_file_p(), and TREE_PUBLIC.
Referenced by cgraph_node::can_remove_if_no_direct_calls_and_refs_p(), can_remove_if_no_refs_p(), cgraph_externally_visible_p(), cgraph_node_cannot_be_local_p_1(), externally_visible_p(), symtab_node::get_partitioning_class(), and cgraph_node::only_called_directly_or_aliased_p().
|
inherited |
Verify consistency of NODE.
References symtab_node::debug(), dyn_cast(), internal_error(), seen_error(), timevar_pop(), timevar_push(), and symtab_node::verify_base().
Referenced by early_inliner(), expand_call_inline(), save_inline_function_body(), cgraph_node::verify_cgraph_nodes(), and symtab_node::verify_symtab_nodes().
|
protectedinherited |
Verify common part of symtab nodes.
References symtab_node::alias, symtab_node::analyzed, symbol_table::assembler_name_hash, symbol_table::assembler_names_equal_p(), symtab_node::body_removed, symtab_node::comdat_local_p(), symtab_node::cpp_implicit_alias, symtab_node::decl, DECL_ASSEMBLER_NAME, DECL_ATTRIBUTES, DECL_HARD_REGISTER, DECL_VISIBILITY, symtab_node::definition, symtab_node::dump(), dyn_cast(), asmname_hasher::equal(), error(), error_found, symtab_node::get(), symtab_node::get_alias_target(), symtab_node::get_comdat_group(), symtab_node::get_for_asmname(), symtab_node::get_section(), i, IDENTIFIER_POINTER, identifier_to_locale(), symtab_node::ifunc_resolver, symtab_node::implicit_section, symtab_node::in_same_comdat_group_p(), is_a(), symtab_node::iterate_referring(), lookup_attribute(), LTO_STREAMING, symtab_node::name(), symtab_node::next_sharing_asm_name, NULL, symbol_table::order, symtab_node::order, symtab_node::previous_sharing_asm_name, ipa_ref::referring, symtab_node::same_comdat_group, symbol_table::state, symtab, symtab_node::symver, symtab_node::transparent_alias, TREE_CODE, TREE_PUBLIC, symtab_node::type, ultimate_transparent_alias_target(), VAR_P, VISIBILITY_DEFAULT, and symtab_node::weakref.
Referenced by symtab_node::verify(), and cgraph_node::verify_node().
|
staticinherited |
Verify symbol table for internal consistency.
References symtab_node::debug(), symtab_node::decl, DECL_EXTERNAL, error(), symbol_table::first_asm_symbol(), FOR_EACH_SYMBOL, symtab_node::get_comdat_group(), hash_map< KeyId, Value, Traits >::get_or_insert(), internal_error(), asm_node::next, NULL, asm_node::order, symbol_table::order, symtab_node::same_comdat_group, symtab, and symtab_node::verify().
Referenced by symtab_node::checking_verify_symtab_nodes(), and symbol_table::compile().
|
inherited |
Referenced by cgraph_node::can_be_local_p(), cgraph_node::can_remove_if_no_direct_calls_p(), can_remove_node_now_p_1(), clear_addressable_bit(), copy_bb(), symtab_node::dump_base(), execute_omp_device_lower(), execute_split_functions(), input_overwrite_node(), ipa_reverse_postorder(), lto_output_node(), cgraph_node::mark_address_taken(), ipa_icf::sem_function::merge(), cgraph_node::only_called_directly_or_aliased_p(), symbol_table::remove_unreachable_nodes(), symtab_node::resolve_alias(), cgraph_node::verify_node(), and cgraph_node::will_be_removed_from_program_if_no_direct_calls_p().
|
inherited |
Referenced by cgraph_node::add_detected_attribute(), symtab_node::address_matters_p(), cgraph_node::analyze(), analyze(), analyze_function(), analyze_functions(), assemble_alias(), assemble_aliases(), assemble_decl(), cgraph_node::assemble_thunks_and_aliases(), associate_varinfo_to_alias(), cgraph_node::call_for_symbol_and_aliases_1(), symtab_node::call_for_symbol_and_aliases_1(), call_for_symbol_and_aliases_1(), cgraph_node::call_for_symbol_thunks_and_aliases(), call_passes_through_thunk(), cgraph_node::can_remove_if_no_direct_calls_p(), can_remove_node_now_p(), clone_inlined_nodes(), symbol_table::compile(), compute_ltrans_boundary(), symtab_node::copy_visibility_from(), cgraph_node::create_alias(), create_alias(), create_dispatcher_calls(), create_emultls_var(), create_extra_name_alias(), cgraph_node::create_same_body_alias(), cgraph_node::create_thunk(), ctor_for_folding(), ctor_useable_for_folding_p(), symtab_node::definition_alignment(), determine_versionability(), symtab_node::dump_base(), dump_overall_stats(), symtab_node::equal_address_to(), expand_target_clones(), ipa_icf::sem_item_optimizer::filter_removed_items(), finalize_named_section_flags(), function_and_variable_visibility(), generate_summary(), get_constraint_for_ssa_var(), symtab_node::get_partitioning_class(), handle_alias_pairs(), cgraph_node::has_gimple_body_p(), initialize_node_lattices(), inline_call(), inline_small_functions(), input_node(), input_overwrite_node(), input_varpool_node(), ipa_comdats(), ipa_devirt(), ipa_discover_variable_flags(), ipa_fn_summary_generate(), ipa_fn_summary_write(), ipa_inline(), ipa_lower_emutls(), ipa_merge_profiles(), ipa_profile(), ipa_propagate_frequency(), ipa_pta_execute(), ipa_reverse_postorder(), ipa_strub_set_mode_for_new_functions(), ipa_tm_execute(), ipa_tm_mayenterirr_function(), ipa_write_summaries(), ipcp_propagate_stage(), localize_node(), lto_output(), lto_output_node(), lto_output_varpool_node(), symtab_node::make_decl_local(), mark_functions_to_output(), ipa_icf::sem_variable::merge(), symtab_node::noninterposable_alias(), symtab_node::nonzero_address(), omp_discover_declare_target_tgt_fn_r(), optimize_weakref(), output_in_order(), output_refs(), symbol_table::output_weakrefs(), ipa_icf::sem_variable::parse(), place_block_symbol(), preserve_function_body_p(), process_function_and_variable_attributes(), process_references(), process_symver_attribute(), propagate(), propagate_malloc(), propagate_nothrow(), propagate_pure_const(), propagate_single_user(), recursive_call_p(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), symtab_node::reset(), symtab_node::resolve_alias(), cgraph_node::set_const_flag(), cgraph_node::set_malloc_flag(), cgraph_node::set_noreturn_flag(), cgraph_node::set_nothrow_flag(), symtab_node::set_section(), set_strub_mode(), set_strub_mode_to(), set_writeonly_bit(), symtab_node::ultimate_alias_target(), symtab_node::ultimate_alias_target_1(), ultimate_transparent_alias_target(), update_caller_keys(), use_blocks_for_decl_p(), symtab_node::verify_base(), cgraph_node::verify_node(), walk_polymorphic_call_targets(), want_inline_function_to_all_callers_p(), cgraph_node::will_be_removed_from_program_if_no_direct_calls_p(), and wrapup_global_declaration_2().
|
inherited |
Referenced by cgraph_node::analyze(), analyze(), symbol_table::compile(), cgraph_node::create_alias(), create_alias(), create_dispatcher_calls(), symtab_node::dump_base(), symtab_node::get_alias_target_tree(), handle_alias_pairs(), input_node(), input_varpool_node(), maybe_record_node(), omp_discover_declare_target_tgt_fn_r(), symbol_table::output_weakrefs(), symbol_table::process_same_body_aliases(), and symtab_node::resolve_alias().
|
inherited |
Referenced by cgraph_node::analyze(), analyze(), analyze_functions(), associate_varinfo_to_alias(), compute_ltrans_boundary(), cgraph_node::create_clone(), create_dispatcher_calls(), create_emultls_var(), cgraph_node::create_version_clone(), ctor_for_folding(), do_per_function(), symtab_node::dump_base(), symtab_node::equal_address_to(), expand_thunk(), function_and_variable_visibility(), cgraph_node::get_availability(), get_constraint_for_ssa_var(), get_read_write_all_from_node(), inline_small_functions(), input_node(), input_overwrite_node(), input_varpool_node(), ipa_lower_emutls(), ipa_propagate_frequency(), ipa_pta_execute(), ipa_tm_execute(), ipa_tm_mark_force_output_node(), ipa_tm_mark_forced_by_abi_node(), lto_output_node(), lto_output_varpool_node(), mark_functions_to_output(), cgraph_node::materialize_clone(), ipa_icf::sem_variable::merge(), symtab_node::nonzero_address(), omp_discover_declare_target_tgt_fn_r(), optimize_weakref(), symbol_table::output_weakrefs(), symbol_table::process_new_functions(), symbol_table::process_same_body_aliases(), process_symver_attribute(), cgraph_node::remove(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), symtab_node::reset(), symtab_node::resolve_alias(), symtab_node::set_section(), symtab_node::ultimate_alias_target_1(), unlikely_executed_stmt_p(), symtab_node::verify_base(), cgraph_node::verify_node(), and wrapup_global_declaration_2().
|
inherited |
Referenced by analyze_functions(), symtab_node::dump_base(), enqueue_node(), enqueue_node(), enqueue_node(), enqueue_references(), flatten_function(), identify_dead_nodes(), inline_always_inline_functions(), inline_small_functions(), input_cgraph_1(), input_node(), input_overwrite_node(), input_symtab(), ipa_comdats(), ipa_edge_within_scc(), ipa_free_postorder_info(), ipa_get_nodes_in_cycle(), ipa_inline(), ipa_profile(), ipa_reduced_postorder(), ipa_reverse_postorder(), ipa_single_use(), ipa_tm_execute(), ipcp_decision_stage(), meet(), propagate_nothrow(), propagate_pure_const(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), and searchc().
|
inherited |
Referenced by ctor_useable_for_folding_p(), cgraph_node::dump(), symtab_node::dump_base(), ipa_icf::sem_item_optimizer::filter_removed_items(), input_overwrite_node(), input_varpool_node(), lto_output_node(), lto_output_varpool_node(), ipa_icf::sem_function::merge(), symbol_table::remove_unreachable_nodes(), symtab_node::verify_base(), and cgraph_edge::verify_corresponds_to_fndecl().
|
inherited |
Referenced by analyze_functions(), create_extra_name_alias(), cgraph_node::create_same_body_alias(), symtab_node::dump_base(), cgraph_node::finalize_function(), ipa_tm_create_version_alias(), ipa_tm_execute(), symbol_table::process_same_body_aliases(), symbol_table::remove_unreachable_nodes(), symtab_node::reset(), symtab_node::resolve_alias(), and symtab_node::verify_base().
|
inherited |
Referenced by add_detected_attribute_1(), ipcp_lattice< valtype >::add_value(), ipa_ref::address_matters_p(), autofdo::afdo_indirect_call(), cgraph_node::analyze(), analyze_function(), analyze_function(), analyze_function_body(), analyze_functions(), asan_finish_file(), assemble_alias(), assemble_variable_contents(), associate_varinfo_to_alias(), autofdo::auto_profile(), big_speedup_p(), btf_add_const_void(), btf_add_func_datasec_entries(), btf_add_func_records(), btf_add_vars(), btf_datasec_add_var(), btf_emit_variable_p(), build_type_inheritance_graph(), caller_growth_limits(), calls_builtin_apply_args_p(), can_early_inline_edge_p(), symtab_node::can_increase_alignment_p(), can_inline_edge_by_limits_p(), can_inline_edge_p(), can_remove_node_now_p_1(), can_replace_by_local_alias(), can_replace_by_local_alias_in_vtable(), can_strub_internally_p(), can_strub_p(), cgraph_edge::cannot_lead_to_return_p(), cdtor_p(), cgraph_externally_visible_p(), cgraph_node_cannot_be_local_p_1(), cgraph_update_edges_for_call_stmt_node(), symbol_table::change_decl_assembler_name(), check_argument_count(), check_callers(), check_for_nested_with_variably_modified(), check_global_declaration(), clear_addressable_bit(), ipa_icf::clear_decl_rtl(), clone_inlined_nodes(), clone_of_p(), comdat_can_be_unshared_p_1(), compare_base_symbol_refs(), ipa_icf::sem_function::compare_polymorphic_p(), ipa_icf::sem_item::compare_referenced_symbol_properties(), compare_virtual_tables(), symbol_table::compile(), compute_bb_predicates(), compute_fn_summary(), compute_max_insns(), compute_strub_mode(), copy_function_or_variable(), symtab_node::copy_visibility_from(), coverage_compute_profile_id(), cgraph_node::create(), create_alias(), cgraph_node::create_clone(), create_dispatcher_calls(), symbol_table::create_edge(), create_emultls_var(), create_nesting_tree(), create_specialized_node(), create_target_clone(), create_variable_info_for(), cgraph_node::create_version_clone_with_body(), cgraph_node::create_virtual_clone(), cgraph_node::create_wrapper(), ctor_for_folding(), ctor_useable_for_folding_p(), decompose_param_expr(), determine_known_aggregate_parts(), determine_versionability(), devirt_variable_node_removal_hook(), devirtualization_time_bonus(), symtab_node::dissolve_same_comdat_group_list(), distinctify_node_type(), do_assemble_alias(), do_estimate_edge_time(), do_estimate_growth_1(), do_per_function(), do_per_function_toporder(), drop_profile(), ipa_icf::sem_item::dump(), dump_callgraph_transformation(), dump_final_alias_vcg(), dump_ic_profile(), dump_inline_stats(), funct_state_summary_t::duplicate(), duplicate_thunk_for_node(), early_inline_small_functions(), early_inliner(), edge_badness(), asmname_hasher::equal(), symtab_node::equal_address_to(), ipa_icf::sem_variable::equals(), estimate_edge_devirt_benefit(), ipa_call_context::estimate_size_and_time(), estimated_stack_frame_size(), execute_all_ipa_transforms(), execute_split_functions(), expand_all_functions(), expand_call_inline(), expand_simd_clones(), expand_target_clones(), expand_thunk(), finalize_decl(), find_decl(), cgraph_node::find_replacement(), symbol_table::first_static_initializer(), fixup_call_stmt_edges(), ipa_icf::sem_item_optimizer::fixup_points_to_sets(), symtab_node::fixup_same_cpp_alias_visibility(), flatten_function(), flatten_remove_node_hook(), fre_will_run_p(), function_and_variable_visibility(), function_called_by_processed_nodes_p(), gen_emutls_addr(), generate_summary(), symtab_node::get_alias_target_tree(), get_alignment_1(), get_constraint_for_ssa_var(), cgraph_node::get_create(), get_create(), cgraph_node::get_fun(), get_max_overall_size(), get_read_write_all_from_node(), get_section_name(), get_strub_mode(), cgraph_node::get_untransformed_body(), get_variable_section(), gimple_ic(), gimplify_all_functions(), good_cloning_opportunity_p(), handle_alias_pairs(), handle_missing_profiles(), asmname_hasher::hash(), omp_declare_variant_alt_hasher::hash(), omp_declare_variant_hasher::hash(), ipa_icf::sem_item::hash_referenced_symbol_properties(), have_optimized_refs(), hint_time_bonus(), ignore_edge_for_nothrow(), ignore_edge_for_pure_const(), ignore_edge_p(), ignore_edge_p(), incorporate_penalties(), increase_alignment(), increase_alignment_1(), ipa_icf::sem_function::init(), ipa_icf::sem_variable::init(), init_node_map(), inline_account_function_p(), inline_always_inline_functions(), inline_analyze_function(), inline_call(), inline_insns_auto(), inline_insns_single(), inline_small_functions(), inline_transform(), input_cgraph_1(), input_edge(), input_node(), input_overwrite_node(), input_varpool_node(), funct_state_summary_t::insert(), modref_summaries::insert(), modref_summaries_lto::insert(), symbol_table::insert_to_assembler_name_hash(), ipa_analyze_controlled_uses(), ipa_analyze_node(), ipa_cdtor_merge(), ipa_comdats(), ipa_compute_jump_functions_for_edge(), ipa_devirt(), ipa_discover_variable_flags(), ipa_dump_fn_summary(), ipa_fn_summary_generate(), ipa_get_callee_param_type(), ipa_get_indirect_edge_target_1(), ipa_initialize_node_params(), ipa_inline(), ipa_lower_emutls(), ipa_make_function_const(), ipa_make_function_pure(), ipa_merge_modref_summary_after_inlining(), ipa_merge_profiles(), ipa_populate_param_decls(), ipa_profile(), ipa_profile_generate_summary(), ipa_propagate_frequency(), ipa_pta_execute(), ipa_read_edge_info(), ipa_reference_get_read_global(), ipa_reference_get_written_global(), ipa_reference_write_optimization_summary(), ipa_return_value_range(), ipa_simd_modify_function_body(), ipa_sra_summarize_function(), ipa_tm_create_version(), ipa_tm_create_version_alias(), ipa_tm_diagnose_tm_safe(), ipa_tm_execute(), ipa_tm_mayenterirr_function(), ipa_tm_note_irrevocable(), ipa_tm_scan_calls_clone(), ipa_tm_scan_irr_function(), ipa_tm_transform_calls_redirect(), ipa_tm_transform_clone(), ipa_tm_transform_transaction(), ipa_write_summaries(), ipcp_cloning_candidate_p(), ipcp_propagate_stage(), ipcp_store_vr_results(), ipcp_transform_function(), ipcp_update_vr(), ipcp_verify_propagated_values(), is_improper(), lenient_count_portion_handling(), lhd_finalize_early_debug(), likely_target_p(), localize_node(), lower_emutls_function_body(), lto_free_function_in_decl_state_for_node(), lto_output(), lto_output_node(), lto_output_varpool_node(), lto_prepare_function_for_streaming(), lto_read_body_or_constructor(), cgraph_edge::make_direct(), make_item_for_dump_symtab_node(), cgraph_node::make_local(), cgraph_edge::make_speculative(), mark_functions_to_output(), master_clone_with_noninline_clones_p(), cgraph_node::materialize_clone(), cgraph_edge::maybe_hot_p(), maybe_record_nested_function(), ipa_icf::sem_function::merge(), ipa_icf::sem_variable::merge(), merge_aggregate_lattices(), ipa_param_adjustments::modify_call(), new_emutls_decl(), symbol_table::next_static_initializer(), non_local_p(), symtab_node::noninterposable_alias(), symtab_node::noninterposable_alias(), symtab_node::nonzero_address(), num_calls(), offline_size(), ok_for_auto_simd_clone(), omp_declare_variant_remove_hook(), omp_discover_declare_target_tgt_fn_r(), omp_discover_declare_target_var_r(), omp_discover_implicit_declare_target(), omp_lto_input_declare_variant_alt(), omp_lto_output_declare_variant_alt(), omp_resolve_late_declare_variant(), optimize_weakref(), output_constructor(), output_function(), output_in_order(), symtab_node::output_to_lto_symbol_table_p(), symbol_table::output_variables(), symbol_table::output_weakrefs(), ipa_icf::sem_function::parse(), ipa_icf::sem_variable::parse(), perform_estimation_of_a_value(), place_block_symbol(), possible_inline_candidate_p(), possible_polymorphic_call_target_p(), cgraph_edge::possibly_call_in_translation_unit_p(), process_function_and_variable_attributes(), symbol_table::process_new_functions(), process_references(), process_references(), process_symver_attribute(), produce_symtab(), produce_symtab_extension(), propagate(), propagate_aggs_across_jump_function(), propagate_constants_across_call(), propagate_constants_topo(), value_topo_info< valtype >::propagate_effects(), propagate_malloc(), propagate_nothrow(), propagate_pure_const(), propagate_vals_across_arith_jfunc(), pure_const_generate_summary(), pure_const_read_summary(), read_ipa_call_summary(), read_thunk_profile(), read_write_all_from_decl(), record_cdtor_fn(), record_eh_tables(), record_reference(), recursive_inlining(), cgraph_edge::recursive_p(), ipa_icf::redirect_all_callers(), cgraph_edge::redirect_call_stmt_to_callee(), redirect_to_specific_clone(), redirect_to_unreachable(), refered_from_nonlocal_fn(), refered_from_nonlocal_var(), referenced_from_vtable_p(), cgraph_node::remove(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), report_inline_failed_reason(), cgraph_node::rtl_info(), save_inline_function_body(), ipa_icf::sem_item::sem_item(), symtab_node::semantically_equivalent_p(), ipa_icf::set_addressable(), ipa_icf::set_alias_uids(), cgraph_edge::set_call_stmt(), set_const_flag_1(), set_malloc_flag_1(), set_new_clone_decl_and_node_flags(), set_noreturn_flag_1(), set_nothrow_flag_1(), set_pure_flag_1(), set_readonly_bit(), set_strub_mode(), set_strub_mode_to(), set_switch_stmt_execution_predicate(), set_writeonly_bit(), simd_clone_adjust(), simd_clone_adjust_argument_types(), simd_clone_adjust_return_type(), simd_clone_clauses_extract(), simd_clone_compute_base_data_type(), simd_clone_create(), simd_clone_init_simd_arrays(), simd_clone_mangle(), speculation_useful_p(), split_function(), strub_always_inline_p(), strub_callable_builtin_p(), strub_from_body_p(), ipa_icf::symbol_compare_collection::symbol_compare_collection(), tree_profiling(), try_make_edge_direct_virtual_call(), try_speculative_devirtualization(), unlikely_executed_stmt_p(), symbol_table::unlink_from_assembler_name_hash(), unshare_body(), unvisit_body(), update_call_expr(), update_indirect_edges_after_inlining(), update_profiling_info(), update_type_inheritance_graph(), update_visibility_by_resolution_info(), update_vtable_references(), varpool_removal_hook(), vectorizable_simd_clone_call(), symtab_node::verify_base(), cgraph_edge::verify_corresponds_to_fndecl(), cgraph_node::verify_node(), verify_node_partition(), verify_strub(), symtab_node::verify_symtab_nodes(), vrp_will_run_p(), walk_polymorphic_call_targets(), want_early_inline_function_p(), want_inline_self_recursive_call_p(), want_inline_small_function_p(), worse_state(), and wrapper_heuristics_may_apply().
|
inherited |
Referenced by cgraph_node::add_new_function(), all_refs_explicit_p(), cgraph_node::analyze(), analyze_functions(), assemble_decl(), symtab_node::binds_to_current_def_p(), can_inline_edge_p(), can_refer_decl_in_current_unit_p(), can_replace_by_local_alias(), cgraph_externally_visible_p(), symbol_table::change_decl_assembler_name(), clone_inlined_nodes(), compare_base_symbol_refs(), ipa_icf::sem_function::compare_polymorphic_p(), compare_virtual_tables(), compute_ltrans_boundary(), copy_bb(), cgraph_node::create_alias(), create_alias(), cgraph_node::create_clone(), create_dispatcher_calls(), cgraph_node::create_thunk(), cgraph_node::create_version_clone(), cgraph_node::create_wrapper(), ctor_useable_for_folding_p(), devirtualization_time_bonus(), symtab_node::dump_base(), dump_tm_clone_pairs(), duplicate_thunk_for_node(), enqueue_references(), estimate_edge_devirt_benefit(), estimate_num_insns(), expand_simd_clones(), expand_target_clones(), externally_visible_p(), finalize_decl(), cgraph_node::finalize_function(), symbol_table::first_defined_function(), symbol_table::first_defined_symbol(), symbol_table::first_defined_variable(), function_and_variable_visibility(), get_availability(), symtab_node::get_partitioning_class(), handle_alias_pairs(), cgraph_node::has_gimple_body_p(), initialize_inline_failed(), inline_always_inline_functions(), input_overwrite_node(), input_varpool_node(), ipa_compute_jump_functions_for_bb(), ipa_devirt(), ipa_dump_fn_summary(), ipa_fn_summary_write(), ipa_inline(), ipa_lower_emutls(), ipa_merge_profiles(), ipa_print_node_params(), ipa_profile_write_summary(), ipa_prop_read_section(), ipa_single_use(), ipa_target_clone(), ipa_write_summaries(), ipcp_propagate_stage(), lto_output_node(), lto_output_varpool_node(), mark_decl_referenced(), maybe_record_node(), symtab_node::needed_p(), symbol_table::next_defined_function(), symtab_node::next_defined_symbol(), symbol_table::next_defined_variable(), non_local_p(), symtab_node::nonzero_address(), ok_for_auto_simd_clone(), optimize_weakref(), symtab_node::output_to_lto_symbol_table_p(), symbol_table::output_variables(), possible_polymorphic_call_target_p(), symtab_node::prevailing_p(), process_function_and_variable_attributes(), process_references(), process_symver_attribute(), propagate_constants_across_call(), propagate_malloc(), pure_const_write_summary(), reachable_from_other_partition_p(), ipa_icf::sem_item_optimizer::read_section(), symtab_node::real_symbol_p(), record_target_from_binfo(), reference_to_unused(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), symtab_node::reset(), symtab_node::resolve_alias(), simd_clone_adjust_argument_types(), simd_clone_create(), try_speculative_devirtualization(), type_possibly_instantiated_p(), update_type_inheritance_graph(), vect_recog_pow_pattern(), symtab_node::verify_base(), cgraph_node::verify_node(), walk_polymorphic_call_targets(), wrapup_global_declaration_2(), and write_node_summary_p().
unsigned varpool_node::dynamically_initialized |
Referenced by asan_add_global(), input_varpool_node(), instrument_derefs(), and lto_output_varpool_node().
|
inherited |
Referenced by add(), cgraph_node::add_new_function(), address_matters_1(), all_refs_explicit_p(), symtab_node::binds_to_current_def_p(), can_early_inline_edge_p(), can_inline_edge_by_limits_p(), cgraph_node::can_remove_if_no_direct_calls_and_refs_p(), cgraph_node::can_remove_if_no_direct_calls_p(), can_remove_if_no_refs_p(), can_remove_node_now_p(), cgraph_node_cannot_be_local_p_1(), clone_inlined_nodes(), comdat_can_be_unshared_p_1(), compute_strub_mode(), symtab_node::copy_visibility_from(), cgraph_node::create_clone(), create_dispatcher_calls(), cgraph_node::create_version_clone(), cgraph_node::create_version_clone_with_body(), symtab_node::dump_base(), execute_split_functions(), symtab_node::fixup_same_cpp_alias_visibility(), function_and_variable_visibility(), cgraph_node::get_availability(), input_overwrite_node(), input_varpool_node(), ipa_comdats(), ipa_tm_create_version(), ipa_tm_create_version_alias(), lto_output_node(), lto_output_varpool_node(), cgraph_node::make_local(), non_local_p(), cgraph_node::only_called_directly_or_aliased_p(), optimize_weakref(), propagate_single_user(), referenced_from_vtable_p(), symbol_table::remove_unreachable_nodes(), set_new_clone_decl_and_node_flags(), simd_clone_create(), update_visibility_by_resolution_info(), cgraph_node::verify_node(), and cgraph_node::will_be_removed_from_program_if_no_direct_calls_p().
|
inherited |
Referenced by cgraph_node::add_new_function(), address_matters_1(), all_refs_explicit_p(), can_refer_decl_in_current_unit_p(), cgraph_node::can_remove_if_no_direct_calls_and_refs_p(), can_remove_if_no_refs_p(), cgraph_node_cannot_be_local_p_1(), comdat_can_be_unshared_p_1(), create_dispatcher_calls(), create_target_clone(), symtab_node::dump_base(), expand_omp_target(), finalize_decl(), cgraph_node::finalize_function(), function_and_variable_visibility(), symtab_node::get_partitioning_class(), input_offload_tables(), input_overwrite_node(), input_varpool_node(), ipa_comdats(), ipa_pta_execute(), ipa_tm_create_version(), ipa_tm_create_version_alias(), lto_output_node(), lto_output_varpool_node(), mark_decl_referenced(), cgraph_node::mark_force_output(), symtab_node::needed_p(), cgraph_node::only_called_directly_or_aliased_p(), output_offload_tables(), process_function_and_variable_attributes(), refered_from_nonlocal_fn(), refered_from_nonlocal_var(), cgraph_node::remove(), and cgraph_node::verify_node().
|
inherited |
Referenced by can_refer_decl_in_current_unit_p(), cgraph_node::can_remove_if_no_direct_calls_and_refs_p(), can_remove_if_no_refs_p(), cgraph_node_cannot_be_local_p_1(), comdat_can_be_unshared_p_1(), create_dispatcher_calls(), symtab_node::dump_base(), function_and_variable_visibility(), symtab_node::get_partitioning_class(), input_overwrite_node(), input_varpool_node(), ipa_tm_create_version(), ipa_tm_create_version_alias(), ipa_tm_mark_forced_by_abi_node(), lto_output_node(), lto_output_varpool_node(), cgraph_node::make_local(), symtab_node::needed_p(), optimize_weakref(), and cgraph_node::remove().
|
inherited |
Referenced by associate_varinfo_to_alias(), symtab_node::binds_to_current_def_p(), cgraph_node::can_remove_if_no_direct_calls_and_refs_p(), cgraph_node_cannot_be_local_p_1(), check_ifunc_resolver(), cgraph_node::create(), cgraph_node::create_alias(), create_variable_info_for(), do_assemble_alias(), symtab_node::dump_base(), cgraph_node::get_availability(), input_node(), maybe_diag_incompatible_alias(), cgraph_node::only_called_directly_or_aliased_p(), and symtab_node::verify_base().
|
inherited |
Referenced by symtab_node::can_increase_alignment_p(), cgraph_node::create_version_clone_with_body(), cgraph_node::create_virtual_clone(), symtab_node::dump_base(), ipa_icf::sem_variable::equals_wpa(), input_overwrite_node(), input_varpool_node(), ipa_tm_create_version(), lto_output_node(), lto_output_varpool_node(), ipa_icf::sem_function::merge(), ipa_icf::sem_variable::merge(), symtab_node::resolve_alias(), set_implicit_section(), symtab_node::set_implicit_section(), symtab_node::set_section_for_node(), symtab_node::set_section_for_node(), and symtab_node::verify_base().
|
inherited |
|
inherited |
Referenced by assemble_decl(), symtab_node::binds_to_current_def_p(), symtab_node::can_be_discarded_p(), symtab_node::can_increase_alignment_p(), can_refer_decl_in_current_unit_p(), ctor_useable_for_folding_p(), symtab_node::dump_base(), finalize_named_section_flags(), fndecl_maybe_in_other_partition(), cgraph_node::get_availability(), get_availability(), input_overwrite_node(), input_varpool_node(), ipa_pta_execute(), lto_output_node(), mark_functions_to_output(), non_local_p(), process_references(), reachable_from_other_partition_p(), referenced_from_other_partition_p(), cgraph_node::remove(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), simd_clone_create(), tree_could_trap_p(), cgraph_edge::verify_corresponds_to_fndecl(), cgraph_node::verify_node(), and verify_node_partition().
|
inherited |
Referenced by cmp_symbol_files(), copy_function_or_variable(), cgraph_node::create_clone(), ctor_useable_for_folding_p(), symtab_node::dump_base(), get_constructor(), cgraph_node::get_untransformed_body(), ipa_icf::sem_variable::init(), input_overwrite_node(), input_symtab(), input_varpool_node(), ipa_merge_profiles(), lto_free_function_in_decl_state_for_node(), lto_output(), merge_profile_summaries(), cgraph_node::release_body(), cgraph_node::remove(), remove(), and report_inline_failed_reason().
|
inherited |
|
inherited |
Referenced by analyze_functions(), cgraph_node::can_remove_if_no_direct_calls_p(), can_remove_node_now_p(), check_speculations_1(), clone_inlined_nodes(), symtab_node::dissolve_same_comdat_group_list(), symbol_table::first_defined_function(), symbol_table::first_defined_symbol(), symbol_table::first_defined_variable(), symbol_table::first_function(), symbol_table::first_function_with_gimple_body(), symbol_table::first_static_initializer(), symbol_table::first_variable(), symbol_table::next_defined_function(), symtab_node::next_defined_symbol(), symbol_table::next_defined_variable(), symbol_table::next_function(), symbol_table::next_function_with_gimple_body(), symbol_table::next_static_initializer(), symbol_table::next_variable(), recursive_inlining(), symbol_table::register_symbol(), cgraph_node::remove(), cgraph_node::remove_symbol_and_inline_clones(), cgraph_node::set_call_stmt_including_clones(), symbol_table::unregister(), and cgraph_node::will_be_removed_from_program_if_no_direct_calls_p().
|
inherited |
|
inherited |
Referenced by add(), cgraph_node::create_clone(), cgraph_node::create_version_clone(), symtab_node::dump_base(), finalize_decl(), cgraph_node::finalize_function(), function_and_variable_visibility(), input_overwrite_node(), input_varpool_node(), ipa_tm_create_version_alias(), lto_output_node(), lto_output_varpool_node(), output_in_order(), symbol_table::output_variables(), process_common_attributes(), and symbol_table::remove_unreferenced_decls().
|
inherited |
Referenced by cgraph_node::create(), create_omp_child_function(), execute_omp_device_lower(), expand_omp_target(), get_create(), gimplify_adjust_omp_clauses_1(), gimplify_bind_expr(), lower_omp_critical(), lower_omp_target(), omp_discover_declare_target_tgt_fn_r(), omp_discover_declare_target_var_r(), and select_what_to_stream().
|
inherited |
Referenced by cmp_symbol_files(), copy_function_or_variable(), symtab_node::dump_base(), dump_callgraph_transformation(), dump_function_header(), cgraph_node::find_replacement(), get_constructor(), cgraph_node::get_create(), symtab_node::get_dump_name(), cgraph_node::get_untransformed_body(), inline_small_functions(), input_node(), input_varpool_node(), ipa_inline(), ipa_profile(), ipa_sra_summarize_function(), ipa_strub_set_mode_for_new_functions(), lto_output_node(), lto_output_varpool_node(), ipcp_lattice< valtype >::print(), propagate(), symbol_table::register_symbol(), cgraph_node::remove(), ipa_icf::sem_item::update_hash_by_addr_refs(), and symtab_node::verify_base().
unsigned varpool_node::output |
Referenced by dump().
|
inherited |
Referenced by symbol_table::register_symbol(), and symbol_table::unregister().
|
inherited |
|
inherited |
Referenced by symtab_node::create_reference(), function_and_variable_visibility(), ipa_tm_create_version(), ipa_tm_create_version_alias(), symtab_node::iterate_direct_aliases(), symtab_node::iterate_reference(), symtab_node::iterate_referring(), symtab_node::num_references(), output_refs(), referenced_from_vtable_p(), ipa_ref::referred_ref_list(), ipa_ref::referring_ref_list(), symtab_node::register_symbol(), symtab_node::remove_all_references(), symtab_node::remove_all_referring(), and symtab_node::resolve_alias().
|
inherited |
Referenced by symtab_node::equal_address_to(), mark_weak(), and symtab_node::nonzero_address().
|
inherited |
Referenced by symtab_node::can_be_discarded_p(), cgraph_externally_visible_p(), comdat_can_be_unshared_p_1(), symtab_node::copy_visibility_from(), symtab_node::dump_base(), externally_visible_p(), input_overwrite_node(), input_varpool_node(), localize_node(), lto_output_node(), lto_output_varpool_node(), cgraph_node::make_local(), ipa_icf::sem_function::merge(), ipa_icf::sem_variable::merge(), symtab_node::nonzero_address(), optimize_weakref(), update_visibility_by_resolution_info(), and symtab_node::used_from_object_file_p().
|
inherited |
Referenced by symtab_node::add_to_same_comdat_group(), analyze_functions(), cgraph_node::can_remove_if_no_direct_calls_p(), can_remove_node_now_p(), cgraph_node_cannot_be_local_p_1(), comdat_can_be_unshared_p(), symtab_node::comdat_local_p(), symtab_node::dissolve_same_comdat_group_list(), symtab_node::dump_base(), symtab_node::fixup_same_cpp_alias_visibility(), function_and_variable_visibility(), input_cgraph_1(), input_node(), input_varpool_node(), localize_node(), lto_output_node(), lto_output_varpool_node(), mark_functions_to_output(), symtab_node::remove_from_same_comdat_group(), symbol_table::remove_unreachable_nodes(), symbol_table::remove_unreferenced_decls(), symtab_node::resolve_alias(), split_function(), update_visibility_by_resolution_info(), symtab_node::verify_base(), cgraph_node::verify_node(), symtab_node::verify_symtab_nodes(), and cgraph_node::will_be_removed_from_program_if_no_direct_calls_p().
|
inherited |
Referenced by cgraph_node::add_new_function(), cgraph_node::analyze(), cgraph_node::create(), create_alias(), cgraph_node::create_clone(), cgraph_node::create_wrapper(), ctor_useable_for_folding_p(), symtab_node::dump_base(), finalize_decl(), cgraph_node::finalize_function(), cgraph_node::get_availability(), get_availability(), input_overwrite_node(), input_varpool_node(), lto_output_node(), lto_output_varpool_node(), set_new_clone_decl_and_node_flags(), and cgraph_node::verify_node().
|
inherited |
Referenced by cgraph_externally_visible_p(), cgraph_node_cannot_be_local_p_1(), symtab_node::dump_base(), externally_visible_p(), input_overwrite_node(), input_varpool_node(), lto_output_node(), lto_output_varpool_node(), process_symver_attribute(), symtab_node::resolve_alias(), and symtab_node::verify_base().
enum tls_model varpool_node::tls_model |
Referenced by decl_tls_model(), input_varpool_node(), lto_output_varpool_node(), and set_decl_tls_model().
|
inherited |
Referenced by cgraph_node::analyze(), symtab_node::binds_to_current_def_p(), can_replace_by_local_alias(), cgraph_externally_visible_p(), symbol_table::change_decl_assembler_name(), compute_ltrans_boundary(), cgraph_node::create_alias(), create_alias(), ctor_for_folding(), symtab_node::dump_base(), symtab_node::equal_address_to(), externally_visible_p(), function_and_variable_visibility(), cgraph_node::get_availability(), get_availability(), symtab_node::get_partitioning_class(), handle_alias_pairs(), input_overwrite_node(), input_varpool_node(), localize_node(), lto_output_node(), lto_output_varpool_node(), symtab_node::noninterposable_alias(), optimize_weakref(), process_function_and_variable_attributes(), symtab_node::real_symbol_p(), symbol_table::remove_unreachable_nodes(), symtab_node::reset(), symtab_node::resolve_alias(), symtab_node::ultimate_alias_target_1(), and symtab_node::verify_base().
|
inherited |
Referenced by symtab_node::get_symtab_type_string(), propagate_comdat_group(), and symtab_node::verify_base().
|
inherited |
unsigned varpool_node::used_by_single_function |
Referenced by dump(), input_varpool_node(), ipa_single_use(), and lto_output_varpool_node().
|
inherited |
Referenced by all_refs_explicit_p(), cgraph_node::can_remove_if_no_direct_calls_and_refs_p(), can_remove_if_no_refs_p(), symtab_node::dump_base(), input_overwrite_node(), input_varpool_node(), ipa_comdats(), ipa_pta_execute(), non_local_p(), cgraph_node::only_called_directly_or_aliased_p(), refered_from_nonlocal_fn(), refered_from_nonlocal_var(), referenced_from_vtable_p(), symbol_table::remove_unreachable_nodes(), and verify_node_partition().
|
inherited |
Referenced by can_replace_by_local_alias(), symbol_table::change_decl_assembler_name(), symtab_node::copy_visibility_from(), cgraph_node::create_alias(), create_alias(), symtab_node::dump_base(), function_and_variable_visibility(), handle_alias_pairs(), input_node(), input_overwrite_node(), input_varpool_node(), lto_output_node(), lto_output_varpool_node(), symtab_node::make_decl_local(), symtab_node::noninterposable_alias(), symtab_node::nonzero_address(), optimize_weakref(), symbol_table::output_weakrefs(), process_function_and_variable_attributes(), process_symver_attribute(), symbol_table::remove_unreachable_nodes(), symtab_node::reset(), and symtab_node::verify_base().
|
inherited |
|
inherited |
|
inherited |