GDB (xrefs)

Classes | Public Member Functions | Public Attributes | Private Member Functions | List of all members
dwarf2_per_objfile Struct Reference

## Classes
struct | tu_stats

## Public Member Functions
| dwarf2_per_objfile (struct objfile *objfile, const dwarf2_debug_sections *names)
| ~dwarf2_per_objfile ()
| DISABLE_COPY_AND_ASSIGN (dwarf2_per_objfile)
void | free_cached_comp_units ()
| VEC (dwarf2_section_info_def)
| VEC (dwarf2_per_cu_ptr)

## Public Attributes
dwarf2_section_info | info {}
dwarf2_section_info | abbrev {}
dwarf2_section_info | line {}
dwarf2_section_info | loc {}
dwarf2_section_info | loclists {}
dwarf2_section_info | macinfo {}
dwarf2_section_info | macro {}
dwarf2_section_info | str {}
dwarf2_section_info | line_str {}
dwarf2_section_info | ranges {}
dwarf2_section_info | rnglists {}
dwarf2_section_info | addr {}
dwarf2_section_info | frame {}
dwarf2_section_info | eh_frame {}
dwarf2_section_info | gdb_index {}
dwarf2_section_info | debug_names {}
dwarf2_section_info | debug_aranges {}
htab_t | signatured_types {}
dwarf2_per_cu_data * | read_in_chain = NULL
htab_t | dwo_files {}
bool | dwp_checked = false
struct dwp_file * | dwp_file = NULL
struct dwz_file * | dwz_file = NULL
bool | has_section_at_zero = false
bool | using_index = false
mapped_index * | index_table = NULL
std::unique_ptr< mapped_debug_names > | debug_names_table
htab_t | quick_file_names_table {}
bool | reading_partial_symbols = false
htab_t | die_type_hash {}
gdb::optional< filename_seen_cache > | filenames_cache

## Private Member Functions
void | locate_sections (bfd *abfd, asection *sectp, const dwarf2_debug_sections &names)

## Detailed Description

Definition at line 381 of file dwarf2read.c.

## Constructor & Destructor Documentation

## ◆ dwarf2_per_objfile()

dwarf2_per_objfile::dwarf2_per_objfile | ( | struct objfile * | objfile,
|  | const dwarf2_debug_sections * | names
| ) |  |

Definition at line 2374 of file dwarf2read.c.

References dwarf2_elf_names, locate_sections(), and objfile::obfd.

## ◆ ~dwarf2_per_objfile()

dwarf2_per_objfile::~dwarf2_per_objfile | ( |  | ) |

Definition at line 2387 of file dwarf2read.c.

References free_cached_comp_units(), line_header_hash(), and quick_file_names_table.

Referenced by dwarf2_free_objfile().

## Member Function Documentation

## ◆ DISABLE_COPY_AND_ASSIGN()

dwarf2_per_objfile::DISABLE_COPY_AND_ASSIGN | ( | dwarf2_per_objfile |  | ) |

## ◆ free_cached_comp_units()

void dwarf2_per_objfile::free_cached_comp_units | ( |  | ) |

Definition at line 2404 of file dwarf2read.c.

References dwarf2_per_cu_data::cu, free_heap_comp_unit(), read_in_chain, and dwarf2_cu::read_in_chain.

Referenced by free_cached_comp_units(), and ~dwarf2_per_objfile().

## ◆ locate_sections()

void dwarf2_per_objfile::locate_sections | ( | bfd * | abfd,
|  | asection * | sectp,
|  | const dwarf2_debug_sections & | names
| ) |  |
| private

Definition at line 2548 of file dwarf2read.c.

References abbrev, dwarf2_debug_sections::abbrev, addr, dwarf2_debug_sections::addr, debug_aranges, dwarf2_debug_sections::debug_aranges, dwarf2_debug_sections::debug_names, eh_frame, dwarf2_debug_sections::eh_frame, frame, dwarf2_debug_sections::frame, gdb_index, dwarf2_debug_sections::gdb_index, has_section_at_zero, info, dwarf2_debug_sections::info, line, dwarf2_debug_sections::line, line_str, dwarf2_debug_sections::line_str, loc, dwarf2_debug_sections::loc, loclists, dwarf2_debug_sections::loclists, macinfo, dwarf2_debug_sections::macinfo, macro, dwarf2_debug_sections::macro, memset(), ranges, dwarf2_debug_sections::ranges, rnglists, dwarf2_debug_sections::rnglists, dwarf2_section_info::s, dwarf2_section_info::section, section_is_p(), dwarf2_section_info::size, str, dwarf2_debug_sections::str, dwarf2_debug_sections::types, and VEC_safe_push.

Referenced by dwarf2_per_objfile().

## ◆ VEC() [1/2]

dwarf2_per_objfile::VEC | ( | dwarf2_section_info_def |  | ) |
| inline

Definition at line 421 of file dwarf2read.c.

## ◆ VEC() [2/2]

dwarf2_per_objfile::VEC | ( | dwarf2_per_cu_ptr |  | ) |
| inline

Definition at line 507 of file dwarf2read.c.

## Member Data Documentation

## ◆ abbrev

dwarf2_section_info dwarf2_per_objfile::abbrev {}

Definition at line 404 of file dwarf2read.c.

Referenced by build_type_psymtabs_1(), create_all_comp_units(), create_debug_type_hash_table(), dwarf2_has_info(), dwarf2_read_debug_names(), get_abbrev_section_for_cu(), and locate_sections().

## ◆ addr

dwarf2_section_info dwarf2_per_objfile::addr {}

Definition at line 414 of file dwarf2read.c.

Referenced by locate_sections(), and read_addr_index_1().

## ◆ debug_aranges

dwarf2_section_info dwarf2_per_objfile::debug_aranges {}

Definition at line 419 of file dwarf2read.c.

Referenced by dwarf2_read_debug_names(), and locate_sections().

## ◆ debug_names

dwarf2_section_info dwarf2_per_objfile::debug_names {}

Definition at line 418 of file dwarf2read.c.

Referenced by dwarf2_read_debug_names().

## ◆ debug_names_table

std::unique_ptr<mapped_debug_names> dwarf2_per_objfile::debug_names_table

Definition at line 486 of file dwarf2read.c.

Referenced by dw2_debug_names_dump(), dw2_debug_names_expand_symtabs_for_function(), dw2_debug_names_expand_symtabs_matching(), dw2_debug_names_lookup_symbol(), and dwarf2_read_debug_names().

## ◆ die_type_hash

htab_t dwarf2_per_objfile::die_type_hash {}

Definition at line 504 of file dwarf2read.c.

Referenced by get_die_type_at_offset(), and set_die_type().

## ◆ dwo_files

htab_t dwarf2_per_objfile::dwo_files {}

Definition at line 462 of file dwarf2read.c.

Referenced by dwarf2_per_objfile_free(), lookup_dwo_file_slot(), and process_skeletonless_type_units().

## ◆ dwp_checked

bool dwarf2_per_objfile::dwp_checked = false

Definition at line 465 of file dwarf2read.c.

Referenced by get_dwp_file().

## ◆ dwp_file

struct dwp_file* dwarf2_per_objfile::dwp_file = NULL

Definition at line 468 of file dwarf2read.c.

Referenced by dwarf2_per_objfile_free(), and get_dwp_file().

## ◆ dwz_file

struct dwz_file* dwarf2_per_objfile::dwz_file = NULL

Definition at line 472 of file dwarf2read.c.

Referenced by dwarf2_get_dwz_file(), and dwarf2_per_objfile_free().

## ◆ eh_frame

dwarf2_section_info dwarf2_per_objfile::eh_frame {}

Definition at line 416 of file dwarf2read.c.

Referenced by dwarf2_get_section_info(), and locate_sections().

## ◆ filenames_cache

gdb::optional<filename_seen_cache> dwarf2_per_objfile::filenames_cache

Definition at line 510 of file dwarf2read.c.

Referenced by dw2_map_symbol_filenames().

## ◆ frame

dwarf2_section_info dwarf2_per_objfile::frame {}

Definition at line 415 of file dwarf2read.c.

Referenced by dwarf2_get_section_info(), and locate_sections().

## ◆ gdb_index

dwarf2_section_info dwarf2_per_objfile::gdb_index {}

Definition at line 417 of file dwarf2read.c.

Referenced by dwarf2_read_index(), and locate_sections().

## ◆ has_section_at_zero

bool dwarf2_per_objfile::has_section_at_zero = false

Definition at line 476 of file dwarf2read.c.

Referenced by add_partial_symbol(), create_addrmap_from_aranges(), dwarf2_get_pc_bounds(), dwarf2_ranges_process(), dwarf2_read_symtab(), dwarf2_rnglists_process(), locate_sections(), new_symbol_full(), and read_partial_die().

## ◆ index_table

mapped_index* dwarf2_per_objfile::index_table = NULL

Definition at line 483 of file dwarf2read.c.

Referenced by dw2_do_instantiate_symtab(), dw2_dump(), dw2_expand_symtabs_for_function(), dw2_expand_symtabs_matching(), dw2_lookup_symbol(), dwarf2_per_objfile_free(), dwarf2_read_index(), and follow_die_sig_1().

## ◆ info

dwarf2_section_info dwarf2_per_objfile::info {}

Definition at line 403 of file dwarf2read.c.

Referenced by create_all_comp_units(), create_all_type_units(), create_cus_from_debug_names(), create_cus_from_index(), dwarf2_build_psymtabs_hard(), dwarf2_has_info(), and locate_sections().

## ◆ line

dwarf2_section_info dwarf2_per_objfile::line {}

Definition at line 405 of file dwarf2read.c.

Referenced by get_debug_line_section(), and locate_sections().

## ◆ line_str

dwarf2_section_info dwarf2_per_objfile::line_str {}

Definition at line 411 of file dwarf2read.c.

Referenced by locate_sections(), and read_indirect_line_string_at_offset().

## ◆ loc

dwarf2_section_info dwarf2_per_objfile::loc {}

Definition at line 406 of file dwarf2read.c.

Referenced by cu_debug_loc_section(), and locate_sections().

## ◆ loclists

dwarf2_section_info dwarf2_per_objfile::loclists {}

Definition at line 407 of file dwarf2read.c.

Referenced by cu_debug_loc_section(), and locate_sections().

## ◆ macinfo

dwarf2_section_info dwarf2_per_objfile::macinfo {}

Definition at line 408 of file dwarf2read.c.

Referenced by dwarf_decode_macros(), and locate_sections().

## ◆ macro

dwarf2_section_info dwarf2_per_objfile::macro {}

Definition at line 409 of file dwarf2read.c.

Referenced by dwarf_decode_macros(), and locate_sections().

## ◆ quick_file_names_table

htab_t dwarf2_per_objfile::quick_file_names_table {}

Definition at line 495 of file dwarf2read.c.

Referenced by dw2_forget_cached_source_info(), dw2_get_file_names_reader(), dwarf2_initialize_objfile(), dwarf2_read_debug_names(), dwarf2_read_index(), and ~dwarf2_per_objfile().

## ◆ ranges

dwarf2_section_info dwarf2_per_objfile::ranges {}

Definition at line 412 of file dwarf2read.c.

Referenced by dwarf2_ranges_process(), and locate_sections().

## ◆ read_in_chain

dwarf2_per_cu_data* dwarf2_per_objfile::read_in_chain = NULL

Definition at line 458 of file dwarf2read.c.

Referenced by age_cached_comp_units(), free_cached_comp_units(), free_one_cached_comp_unit(), init_cutu_and_read_dies(), and init_tu_and_read_dwo_dies().

## ◆ reading_partial_symbols

bool dwarf2_per_objfile::reading_partial_symbols = false

Definition at line 499 of file dwarf2read.c.

Referenced by dwarf2_build_psymtabs_hard(), dwarf2_read_symtab(), follow_die_offset(), and maybe_queue_comp_unit().

## ◆ rnglists

dwarf2_section_info dwarf2_per_objfile::rnglists {}

Definition at line 413 of file dwarf2read.c.

Referenced by dwarf2_rnglists_process(), and locate_sections().

## ◆ signatured_types

htab_t dwarf2_per_objfile::signatured_types {}

Definition at line 450 of file dwarf2read.c.

Referenced by add_type_unit(), create_all_type_units(), create_signatured_type_table_from_debug_names(), create_signatured_type_table_from_index(), lookup_dwo_signatured_type(), lookup_dwp_signatured_type(), lookup_signatured_type(), process_skeletonless_type_unit(), write_debug_names(), and write_gdbindex().

## ◆ str

dwarf2_section_info dwarf2_per_objfile::str {}

Definition at line 410 of file dwarf2read.c.

Referenced by debug_names::debug_str_lookup::debug_str_lookup(), locate_sections(), debug_names::debug_str_lookup::lookup(), and read_indirect_string_at_offset().

## ◆ using_index

bool dwarf2_per_objfile::using_index = false

Definition at line 480 of file dwarf2read.c.

Referenced by add_type_unit(), create_type_unit_group(), dw2_debug_names_dump(), dw2_do_instantiate_symtab(), dw2_dump(), dw2_instantiate_symtab(), dwarf2_initialize_objfile(), dwarf2_read_debug_names(), dwarf2_read_index(), fill_in_sig_entry_from_dwo_entry(), get_compunit_symtab(), lookup_dwo_signatured_type(), lookup_dwp_signatured_type(), lookup_signatured_type(), process_full_comp_unit(), process_full_type_unit(), process_queue(), and write_psymtabs_to_index().

The documentation for this struct was generated from the following file:

- /tmp/gdb-8.1/gdb/dwarf2read.c