GDB (xrefs)
|
#include <queue>
#include <unordered_map>
#include "dwarf2/comp-unit-head.h"
#include "dwarf2/cooked-index.h"
#include "dwarf2/file-and-dir.h"
#include "dwarf2/index-cache.h"
#include "dwarf2/mapped-index.h"
#include "dwarf2/section.h"
#include "dwarf2/cu.h"
#include "filename-seen-cache.h"
#include "gdbsupport/gdb_obstack.h"
#include "gdbsupport/hash_enum.h"
#include "gdbsupport/function-view.h"
#include "gdbsupport/packed.h"
Go to the source code of this file.
Classes | |
struct | tu_stats |
struct | dwarf2_queue_item |
struct | dwarf2_per_cu_data_deleter |
struct | dwarf2_per_cu_data |
struct | signatured_type |
struct | dwarf2_per_bfd |
struct | dwarf2_per_bfd::tu_stats |
class | all_units_iterator |
class | all_units_range |
struct | type_unit_group_unshareable |
struct | dwarf2_per_objfile |
struct | dwarf2_base_index_functions |
Typedefs | |
typedef std::unique_ptr< dwarf2_per_cu_data, dwarf2_per_cu_data_deleter > | dwarf2_per_cu_data_up |
using | signatured_type_up = std::unique_ptr<signatured_type> |
Enumerations | |
enum | dwarf2_section_enum { DWARF2_DEBUG_FRAME , DWARF2_EH_FRAME } |
Variables | |
struct cmd_list_element * | set_dwarf_cmdlist |
struct cmd_list_element * | show_dwarf_cmdlist |
unsigned int | dwarf_line_debug |
typedef std::unique_ptr<dwarf2_per_cu_data, dwarf2_per_cu_data_deleter> dwarf2_per_cu_data_up |
using signatured_type_up = std::unique_ptr<signatured_type> |
enum dwarf2_section_enum |
|
extern |
Definition at line 3561 of file read.c.
References eq_signatured_type(), hash_signatured_type(), xcalloc(), and xfree().
Referenced by create_signatured_type_table_from_debug_names(), create_signatured_type_table_from_gdb_index(), lookup_dwo_signatured_type(), lookup_dwp_signatured_type(), process_skeletonless_type_unit(), and read_comp_units_from_section().
|
extern |
Definition at line 1826 of file read.c.
References dwarf2_per_bfd::allocate_per_cu().
Referenced by create_cus_from_debug_names_list(), and create_cus_from_gdb_index_list().
|
extern |
Definition at line 1710 of file read.c.
References eq_file_name_entry(), hash_file_name_entry(), xcalloc(), and xfree().
Referenced by dwarf2_build_psymtabs_hard(), dwarf2_initialize_objfile(), dwarf2_read_debug_names(), and dwarf2_read_gdb_index().
|
extern |
Definition at line 3031 of file read.c.
References dw2_instantiate_symtab(), dwarf2_per_cu_data::mark, and dwarf2_per_objfile::symtab_set_p().
Referenced by dw2_expand_marked_cus(), dwarf2_debug_names_index::expand_matching_symbols(), dwarf2_gdb_index::expand_matching_symbols(), dwarf2_debug_names_index::expand_symtabs_matching(), dwarf2_gdb_index::expand_symtabs_matching(), and cooked_index_functions::expand_symtabs_matching().
|
extern |
Definition at line 2476 of file read.c.
References mapped_index_base::build_name_components(), mapped_index_base::find_name_components_bounds(), language_defn::get_symbol_name_matcher(), language_def(), lookup_name_info::language_lookup_name(), lookup_name_info::make_ignore_params(), name, nr_languages, operator==(), and mapped_index_base::symbol_name_at().
Referenced by dwarf2_debug_names_index::expand_matching_symbols(), dwarf2_gdb_index::expand_matching_symbols(), dwarf2_debug_names_index::expand_symtabs_matching(), and dwarf2_gdb_index::expand_symtabs_matching().
|
extern |
Definition at line 3054 of file read.c.
References dwarf2_per_bfd::all_units, basenames_may_differ, dw2_get_file_names(), dw2_get_real_path(), quick_file_names::file_names, file_and_directory::get_fullname(), file_and_directory::get_name(), quick_file_names::num_file_names, dwarf2_per_objfile::per_bfd, QUIT, dwarf2_per_objfile::symtab_set_p(), xcalloc(), and xfree().
Referenced by dwarf2_debug_names_index::expand_symtabs_matching(), dwarf2_gdb_index::expand_symtabs_matching(), and cooked_index_functions::expand_symtabs_matching().
|
extern |
Definition at line 20699 of file read.c.
References comp_unit_head::addr_size, attribute::as_address(), attribute::as_block(), attribute::as_signed(), attribute::as_string(), attribute::as_unsigned(), complaint, die_type(), dwarf2_attr(), dwarf2_const_value_data(), dwarf_form_name(), follow_die_offset(), attribute::form, dwarf2_per_objfile::get_cu(), dwarf2_cu::header, dwarf2_per_cu_data::is_dwz, load_cu(), objfile::obfd, dwarf2_per_objfile::objfile, objfile_name(), sect_offset_str(), store_unsigned_integer(), type, value, and write_constant_as_bytes().
Referenced by fetch_const_value_from_synthetic_pointer().
struct dwarf2_locexpr_baton dwarf2_fetch_die_loc_cu_off | ( | cu_offset | offset_in_cu, |
dwarf2_per_cu_data * | per_cu, | ||
dwarf2_per_objfile * | per_objfile, | ||
gdb::function_view< CORE_ADDR()> | get_frame_pc ) |
Definition at line 20666 of file read.c.
References dwarf2_fetch_die_loc_sect_off(), get_frame_pc(), dwarf2_locexpr_baton::per_cu, dwarf2_locexpr_baton::per_objfile, and dwarf2_per_cu_data::sect_off.
Referenced by dwarf2_compile_expr_to_ax(), dwarf2_get_symbol_read_needs(), and dwarf_expr_context::dwarf_call().
struct dwarf2_locexpr_baton dwarf2_fetch_die_loc_sect_off | ( | sect_offset | sect_off, |
dwarf2_per_cu_data * | per_cu, | ||
dwarf2_per_objfile * | per_objfile, | ||
gdb::function_view< CORE_ADDR()> | get_frame_pc, | ||
bool | resolve_abstract_p = false ) |
Definition at line 20563 of file read.c.
References attribute::as_block(), die_info::attr(), dwarf2_locexpr_baton::data, dwarf2_attr(), dwarf2_find_location_expression(), fill_in_loclist_baton(), follow_die_offset(), attribute::form_is_block(), attribute::form_is_section_offset(), get_frame_pc(), get_scope_pc_bounds(), load_cu(), objfile_name(), die_info::parent, dwarf2_cu::per_cu, dwarf2_locexpr_baton::per_cu, dwarf2_locexpr_baton::per_objfile, die_info::sect_off, sect_offset_str(), dwarf2_locexpr_baton::size, size, and die_info::tag.
Referenced by dwarf2_fetch_die_loc_cu_off(), dwarf2_get_symbol_read_needs(), and indirect_synthetic_pointer().
struct type * dwarf2_fetch_die_type_sect_off | ( | sect_offset | sect_off, |
dwarf2_per_cu_data * | per_cu, | ||
dwarf2_per_objfile * | per_objfile, | ||
const char ** | var_name = nullptr ) |
Definition at line 20837 of file read.c.
References die_type(), follow_die_offset(), dwarf2_per_objfile::get_cu(), dwarf2_per_cu_data::is_dwz, load_cu(), die_info::sect_off, and var_decl_name().
Referenced by dwarf2_get_symbol_read_needs(), indirect_synthetic_pointer(), and sect_variable_value().
struct type * dwarf2_get_die_type | ( | cu_offset | die_offset, |
dwarf2_per_cu_data * | per_cu, | ||
dwarf2_per_objfile * | per_objfile ) |
Definition at line 20863 of file read.c.
References get_die_type_at_offset(), and dwarf2_per_cu_data::sect_off.
Referenced by disassemble_dwarf_expression(), and dwarf_expr_context::get_base_type().
|
extern |
Definition at line 1539 of file read.c.
References DWARF2_DEBUG_FRAME, DWARF2_EH_FRAME, dwarf2_per_bfd::eh_frame, dwarf2_per_bfd::frame, get_dwarf2_per_objfile(), and dwarf2_per_objfile::per_bfd.
Referenced by dwarf2_build_frame_info().
unrelocated_addr dwarf2_read_addr_index | ( | dwarf2_per_cu_data * | per_cu, |
dwarf2_per_objfile * | per_objfile, | ||
unsigned int | addr_index ) |
Definition at line 17615 of file read.c.
References dwarf2_cu::addr_base, comp_unit_head::addr_size, die_reader_specs::cu, dwarf2_per_objfile::get_cu(), dwarf2_cu::header, dwarf2_cu::per_cu, dwarf2_cu::per_objfile, and read_addr_index_1().
Referenced by decode_debug_loc_dwo_addresses(), decode_debug_loclists_addresses(), disassemble_dwarf_expression(), dwarf_expr_context::execute_stack_op(), and locexpr_describe_location_piece().
|
extern |
Definition at line 5271 of file read.c.
References objfile::per_bfd.
Referenced by create_all_units(), dwarf2_read_debug_names(), and dwarf2_read_gdb_index().
dwarf2_per_objfile * get_dwarf2_per_objfile | ( | struct objfile * | objfile | ) |
Definition at line 165 of file read.c.
References dwarf2_objfile_data_key, and registry< T >::get().
Referenced by dwarf2_gdb_index::dump(), cooked_index_functions::dump(), dwarf2_build_psymtabs(), dwarf2_frame_find_fde(), dwarf2_get_section_info(), dwarf2_has_info(), dwarf2_initialize_objfile(), dwarf2_base_index_functions::expand_all_symtabs(), dwarf2_debug_names_index::expand_matching_symbols(), dwarf2_gdb_index::expand_matching_symbols(), cooked_index_functions::expand_matching_symbols(), dwarf2_debug_names_index::expand_symtabs_matching(), dwarf2_gdb_index::expand_symtabs_matching(), cooked_index_functions::expand_symtabs_matching(), cooked_index_functions::find_compunit_symtab_by_address(), dwarf2_base_index_functions::find_last_source_symtab(), dwarf2_base_index_functions::find_pc_sect_compunit_symtab(), dwarf2_base_index_functions::forget_cached_source_info(), dwarf2_base_index_functions::has_unexpanded_symtabs(), cooked_index_functions::lookup_global_symbol_language(), dwarf2_base_index_functions::map_symbol_filenames(), dwarf2_base_index_functions::print_stats(), and save_gdb_index_command().
|
extern |
Definition at line 7510 of file read.c.
References check_producer(), dwarf2_cu::checked_producer, and dwarf2_cu::producer_is_clang.
Referenced by check_producer(), and dwarf_decode_macro_bytes().
|
extern |
Definition at line 1842 of file read.c.
References dwarf2_per_cu_data::addresses_seen, dwarf2_per_objfile::adjust(), dwarf2_per_bfd::all_units, objfile::arch(), dwarf2_section_info::buffer, extract_unsigned_integer(), gdbarch_byte_order(), dwarf2_per_bfd::has_section_at_zero, objfile::obfd, dwarf2_per_objfile::objfile, objfile_name(), dwarf2_per_objfile::per_bfd, dwarf2_section_info::read(), read_2_bytes(), read_initial_length(), sect_offset_str(), addrmap::set_empty(), dwarf2_section_info::size, and version.
Referenced by create_addrmap_from_aranges(), and dwarf2_build_psymtabs_hard().
|
extern |
Definition at line 17514 of file read.c.
References dwarf2_per_objfile::objfile, dwarf2_per_objfile::per_bfd, dwarf2_section_info::read_string(), and dwarf2_per_bfd::str.
Referenced by mapped_debug_names::namei_to_name(), and read_indirect_string().
|
extern |
Definition at line 120 of file read.c.
Referenced by line_header::add_file_name(), line_header::add_include_dir(), dwarf_finish_line(), dwarf_record_line_1(), and lnp_state_machine::record_line().
|
extern |
|
extern |