GDB (xrefs)
|
Go to the source code of this file.
Classes | |
struct | bound_minimal_symbol |
class | minimal_symbol_reader |
Macros | |
#define | SYMBOL_HASH_NEXT(hash, c) ((hash) * 67 + TOLOWER ((unsigned char) (c)) - 113) |
Enumerations | |
enum class | lookup_msym_prefer { TEXT , TRAMPOLINE , GNU_IFUNC } |
#define SYMBOL_HASH_NEXT | ( | hash, | |
c ) ((hash) * 67 + TOLOWER ((unsigned char) (c)) - 113) |
Definition at line 196 of file minsyms.h.
Referenced by cp_search_name_hash(), msymbol_hash(), msymbol_hash_iw(), and language_defn::search_name_hash().
|
strong |
type * find_minsym_type_and_address | ( | minimal_symbol * | msymbol, |
objfile * | objf, | ||
CORE_ADDR * | address_p ) |
Definition at line 1638 of file minsyms.c.
References obj_section::addr(), builtin_type(), bound_minimal_symbol::minsym, mst_bss, mst_data, mst_data_gnu_ifunc, mst_file_bss, mst_file_data, mst_file_text, mst_slot_got_plt, mst_solib_trampoline, mst_text, mst_text_gnu_ifunc, msymbol_is_function(), builtin_type::nodebug_data_symbol, builtin_type::nodebug_got_plt_symbol, builtin_type::nodebug_text_gnu_ifunc_symbol, builtin_type::nodebug_text_symbol, builtin_type::nodebug_tls_symbol, builtin_type::nodebug_unknown_symbol, general_symbol_info::obj_section(), overlay_debugging, symbol_overlayed_address(), target_translate_tls_address(), obj_section::the_bfd_section, minimal_symbol::type(), minimal_symbol::unrelocated_address(), and bound_minimal_symbol::value_address().
Referenced by evaluate_var_msym_value(), and gen_msym_var_ref().
void iterate_over_minimal_symbols | ( | struct objfile * | objf, |
const lookup_name_info & | name, | ||
gdb::function_view< bool(struct minimal_symbol *)> | callback ) |
Definition at line 523 of file minsyms.c.
References case_sensitive_on, objfile_per_bfd_storage::demangled_hash_languages, language_defn::get_symbol_name_matcher(), language_def(), linkage_name_str(), MINIMAL_SYMBOL_HASH_SIZE, objfile_per_bfd_storage::msymbol_demangled_hash, msymbol_hash(), objfile_per_bfd_storage::msymbol_hash, name, nr_languages, objfile::per_bfd, and lookup_name_info::search_name_hash().
Referenced by find_gnu_ifunc(), and search_minsyms_for_name().
struct bound_minimal_symbol lookup_bound_minimal_symbol | ( | const char * | name | ) |
Definition at line 481 of file minsyms.c.
References lookup_minimal_symbol(), and name.
Referenced by ada_get_tcb_types_info(), add_pe_forwarded_sym(), fbsd_skip_solib_resolver(), find_function_in_inferior(), find_objc_msgsend(), gcc_cplus_symbol_address(), gcc_symbol_address(), glibc_skip_solib_resolver(), info_address_command(), mips_fbsd_skip_solib_resolver(), parser_state::push_dollar(), parser_state::push_symbol(), simple_read_overlay_table(), value_fn_field(), yyparse(), and z80_read_overlay_region_table().
struct bound_minimal_symbol lookup_minimal_symbol | ( | const char * | name, |
const char * | sfile, | ||
struct objfile * | objf ) |
Definition at line 363 of file minsyms.c.
References case_sensitive_on, current_program_space, objfile_per_bfd_storage::demangled_hash_languages, found_minimal_symbols::external_symbol, found_minimal_symbols::file_symbol, FULL, language_defn::get_symbol_name_matcher(), language_def(), lookup_minimal_symbol_demangled(), lookup_minimal_symbol_mangled(), MINIMAL_SYMBOL_HASH_SIZE, bound_minimal_symbol::minsym, objfile_per_bfd_storage::msymbol_demangled_hash, msymbol_hash(), objfile_per_bfd_storage::msymbol_hash, name, nr_languages, objfile_debug_name(), program_space::objfiles(), objfile::per_bfd, lookup_name_info::search_name_hash(), objfile::separate_debug_objfile_backlink, symbol_lookup_debug, symbol_lookup_debug_printf, and found_minimal_symbols::trampoline_symbol.
Referenced by ada_has_this_exception_support(), ada_main_name(), ada_tasks_inferior_data_sniffer(), arc_linux_skip_solib_resolver(), arm_skip_cmse_entry(), arm_skip_stub(), avr_scan_prologue(), bsd_uthread_lookup_address(), call_target_sbrk(), checkpoint_command(), classify_name(), coff_read_minsyms(), compile_object_load(), convert_code_addr_to_desc_addr(), create_exception_master_breakpoint_hook(), create_std_terminate_master_breakpoint(), d_main_name(), dbx_end_psymtab(), elf_gnu_ifunc_resolve_by_got(), elf_locate_base(), enable_break(), eval_op_objc_msgcall(), fbsd_read_integer_by_name(), find_imps(), find_minimal_symbol_address(), find_stab_function(), frv_frame_this_id(), ft32_analyze_prologue(), gcc_convert_symbol(), gen_var_ref(), ravenscar_thread_target::get_fpu_state(), get_running_thread_msymbol(), glibc_skip_solib_resolver(), gnuv3_get_typeid(), gnuv3_skip_trampoline(), go_main_name(), has_ravenscar_runtime(), hppa_symbol_address(), inferior_call_waitpid(), inferior_has_bug(), info_scope_command(), inside_main_func(), call_site_target::iterate_over_addresses(), jit_breakpoint_re_set_internal(), ld_so_xfer_auxv(), libpthread_objfile_p(), lm_base(), lm_base(), lookup_bound_minimal_symbol(), lookup_child_selector(), lookup_objc_class(), m32c_m16c_address_to_pointer(), m32c_m16c_pointer_to_address(), m32c_return_value(), m32r_frame_this_id(), m68hc11_get_register_info(), macho_resolve_oso_sym_with_minsym(), main_got(), mips_linux_skip_resolver(), nbsd_skip_solib_resolver(), obsd_skip_solib_resolver(), pascal_main_name(), pd_enable(), pdc_symbol_addrs(), ps_pglobal_lookup(), ps_pglobal_lookup(), remote_target::remote_check_symbols(), simple_overlay_update(), simple_read_overlay_table(), sol2_skip_solib_resolver(), tui_get_begin_asm_address(), value_nsstring(), value_static_field(), z80_breakpoint_kind_from_pc(), z80_frame_unwind_cache(), z80_read_overlay_region_table(), and z80_scan_prologue().
struct bound_minimal_symbol lookup_minimal_symbol_by_pc | ( | CORE_ADDR | pc | ) |
Definition at line 996 of file minsyms.c.
References lookup_minimal_symbol_by_pc_section().
Referenced by amd64_skip_main_prologue(), amd64_windows_skip_trampoline_code(), arm_pc_is_thumb(), arm_pe_skip_trampoline_code(), arm_skip_stack_protector(), arm_wince_skip_main_prologue(), call_site_find_chain_1(), call_site_for_pc(), convert_code_addr_to_desc_addr(), csky_frame_unwind_cache(), dwarf_expr_reg_to_entry_parameter(), elf_gnu_ifunc_record_cache(), find_frame_funname(), find_pc_sect_line(), frv_skip_main_prologue(), ftrace_update_function(), func_verify_no_selftailcall(), get_function_name(), get_pc_function_start(), get_prev_frame_always_1(), gnuv2_value_rtti_type(), gnuv3_get_typename_from_type_info(), gnuv3_rtti_type(), gnuv3_skip_trampoline(), handle_jit_event(), i386_pe_skip_trampoline_code(), i386_skip_main_prologue(), ia64_convert_from_func_ptr_addr(), info_cb(), info_checkpoints_command(), info_frame_command_core(), call_site_target::iterate_over_addresses(), m32c_m16c_address_to_pointer(), m32c_m16c_pointer_to_address(), m68hc11_get_return_insn(), maintenance_translate_address(), mips_make_symbol_special(), mips_pc_is_micromips(), mips_pc_is_mips(), mips_pc_is_mips16(), mips_pc_isa(), mips_skip_pic_trampoline_code(), mips_stub_frame_sniffer(), msp430_skip_trampoline_code(), powerpc_linux_in_dynsym_resolve_code(), ppc_elfv2_skip_entrypoint(), print_unpacked_pointer(), py_print_frame(), read_atcb(), resolve_sal_pc(), rs6000_skip_main_prologue(), rs6000_skip_trampoline_code(), skip_prologue_function(), tailcall_dump(), until_next_command(), pascal_language::value_print_inner(), and x86_in_indirect_branch_thunk().
struct minimal_symbol * lookup_minimal_symbol_by_pc_name | ( | CORE_ADDR | pc, |
const char * | name, | ||
struct objfile * | objf ) |
Definition at line 669 of file minsyms.c.
References current_program_space, minimal_symbol::hash_next, general_symbol_info::linkage_name(), MINIMAL_SYMBOL_HASH_SIZE, msymbol_hash(), objfile_per_bfd_storage::msymbol_hash, name, program_space::objfiles(), objfile::per_bfd, objfile::separate_debug_objfile_backlink, and minimal_symbol::value_address().
Referenced by arm_exidx_new_objfile(), and fixup_symbol_section().
struct bound_minimal_symbol lookup_minimal_symbol_by_pc_section | ( | CORE_ADDR | pc_in, |
struct obj_section * | section, | ||
lookup_msym_prefer | prefer = lookup_msym_prefer::TEXT, | ||
bound_minimal_symbol * | previous = nullptr ) |
Definition at line 746 of file minsyms.c.
References best_symbol(), find_pc_section(), frob_address(), matching_obj_sections(), objfile_per_bfd_storage::minimal_symbol_count, bound_minimal_symbol::minsym, mst_abs, msym_prefer_to_msym_type(), objfile_per_bfd_storage::msymbols, general_symbol_info::obj_section(), bound_minimal_symbol::objfile, obj_section::objfile, objfile::per_bfd, objfile::separate_debug_objfiles(), size, minimal_symbol::size(), minimal_symbol::type(), minimal_symbol::unrelocated_address(), and minimal_symbol::unrelocated_end_address().
Referenced by build_address_symbolic(), find_pc_partial_function_sym(), find_pc_sect_compunit_symtab(), in_gnu_ifunc_stub(), info_symbol_command(), lookup_minimal_symbol_by_pc(), lookup_solib_trampoline_symbol_by_pc(), maintenance_translate_address(), skip_prologue_sal(), and tui_find_backward_disassembly_start_address().
|
extern |
Definition at line 596 of file minsyms.c.
References current_program_space, objfile::flags, lookup_minimal_symbol_linkage(), bound_minimal_symbol::minsym, name, OBJF_MAINLINE, program_space::objfiles(), and objfile::separate_debug_objfile_backlink.
|
extern |
Definition at line 573 of file minsyms.c.
References MINIMAL_SYMBOL_HASH_SIZE, mst_bss, mst_data, msymbol_hash(), objfile_per_bfd_storage::msymbol_hash, name, objfile::per_bfd, and objfile::separate_debug_objfiles().
Referenced by ada_imported_read_variable(), get_msymbol_address(), get_symbol_address(), lookup_minimal_symbol_linkage(), and new_symbol().
struct bound_minimal_symbol lookup_minimal_symbol_text | ( | const char * | name, |
struct objfile * | objf ) |
Definition at line 618 of file minsyms.c.
References current_program_space, minimal_symbol::hash_next, general_symbol_info::linkage_name(), MINIMAL_SYMBOL_HASH_SIZE, bound_minimal_symbol::minsym, mst_file_text, mst_text, mst_text_gnu_ifunc, msymbol_hash(), objfile_per_bfd_storage::msymbol_hash, name, bound_minimal_symbol::objfile, program_space::objfiles(), objfile::per_bfd, objfile::separate_debug_objfile_backlink, and minimal_symbol::type().
Referenced by create_longjmp_master_breakpoint_names(), create_overlay_event_breakpoint(), and find_pc_sect_line().
CORE_ADDR minimal_symbol_upper_bound | ( | struct bound_minimal_symbol | minsym | ) |
Definition at line 1589 of file minsyms.c.
References obj_section::endaddr(), objfile_per_bfd_storage::minimal_symbol_count, bound_minimal_symbol::minsym, objfile_per_bfd_storage::msymbols, bound_minimal_symbol::obj_section(), bound_minimal_symbol::objfile, objfile::per_bfd, general_symbol_info::section_index(), minimal_symbol::size(), minimal_symbol::unrelocated_address(), bound_minimal_symbol::value_address(), and minimal_symbol::value_address().
Referenced by find_objc_msgsend(), and find_pc_partial_function_sym().
unsigned int msymbol_hash | ( | const char * | string | ) |
Definition at line 184 of file minsyms.c.
References SYMBOL_HASH_NEXT.
Referenced by minimal_symbol_reader::install(), iterate_over_minimal_symbols(), lookup_minimal_symbol(), lookup_minimal_symbol_by_pc_name(), lookup_minimal_symbol_linkage(), and lookup_minimal_symbol_text().
unsigned int msymbol_hash_iw | ( | const char * | string | ) |
Definition at line 165 of file minsyms.c.
References SYMBOL_HASH_NEXT.
Referenced by language_defn::search_name_hash().
bool msymbol_is_function | ( | struct objfile * | objfile, |
minimal_symbol * | minsym, | ||
CORE_ADDR * | func_address_p = NULL ) |
Definition at line 113 of file minsyms.c.
References objfile::arch(), current_inferior(), gdbarch_convert_from_func_ptr_addr(), mst_abs, mst_bss, mst_data, mst_data_gnu_ifunc, mst_file_bss, mst_file_data, mst_file_text, mst_slot_got_plt, msymbol_is_cold_clone(), minimal_symbol::type(), and minimal_symbol::value_address().
Referenced by add_minsym(), find_function_alias_target(), find_minsym_type_and_address(), find_solib_trampoline_target(), and minsym_found().