GDB (xrefs)
|
#include "psymtab.h"
Public Member Functions | |
partial_symtab (const char *filename, psymtab_storage *partial_symtabs, objfile_per_bfd_storage *objfile_per_bfd) ATTRIBUTE_NONNULL(2) ATTRIBUTE_NONNULL(3) | |
partial_symtab (const char *filename, psymtab_storage *partial_symtabs, objfile_per_bfd_storage *objfile_per_bfd, unrelocated_addr addr) ATTRIBUTE_NONNULL(2) ATTRIBUTE_NONNULL(3) | |
virtual | ~partial_symtab () |
virtual void | read_symtab (struct objfile *)=0 |
virtual void | expand_psymtab (struct objfile *)=0 |
void | expand_dependencies (struct objfile *) |
virtual bool | readin_p (struct objfile *) const =0 |
virtual struct compunit_symtab * | get_compunit_symtab (struct objfile *) const =0 |
unrelocated_addr | unrelocated_text_low () const |
unrelocated_addr | unrelocated_text_high () const |
CORE_ADDR | text_low (struct objfile *objfile) const |
CORE_ADDR | text_high (struct objfile *objfile) const |
void | set_text_low (unrelocated_addr addr) |
void | set_text_high (unrelocated_addr addr) |
bool | empty () const |
void | add_psymbol (gdb::string_view name, bool copy_name, domain_enum domain, enum address_class theclass, short section, psymbol_placement where, unrelocated_addr coreaddr, enum language language, psymtab_storage *partial_symtabs, struct objfile *objfile) |
void | add_psymbol (const partial_symbol &psym, psymbol_placement where, psymtab_storage *partial_symtabs, struct objfile *objfile) |
void | end () |
Public Attributes | |
struct partial_symtab * | next = nullptr |
const char * | filename = nullptr |
char * | fullname = nullptr |
const char * | dirname = nullptr |
unrelocated_addr | m_text_low {} |
unrelocated_addr | m_text_high {} |
struct partial_symtab * | user = nullptr |
struct partial_symtab ** | dependencies = nullptr |
int | number_of_dependencies = 0 |
std::vector< partial_symbol * > | global_psymbols |
std::vector< partial_symbol * > | static_psymbols |
bool | anonymous = false |
__extension__ enum psymtab_search_status | searched_flag: 2 |
unsigned int | text_low_valid: 1 |
unsigned int | text_high_valid: 1 |
partial_symtab::partial_symtab | ( | const char * | filename, |
psymtab_storage * | partial_symtabs, | ||
objfile_per_bfd_storage * | objfile_per_bfd ) |
Definition at line 1236 of file psymtab.c.
References filename, objfile_per_bfd_storage::get_bfd(), psymtab_storage::install_psymtab(), objfile_per_bfd_storage::intern(), symtab_create_debug, and symtab_create_debug_printf.
partial_symtab::partial_symtab | ( | const char * | filename, |
psymtab_storage * | partial_symtabs, | ||
objfile_per_bfd_storage * | objfile_per_bfd, | ||
unrelocated_addr | addr ) |
Definition at line 1111 of file psymtab.c.
References set_text_high(), set_text_low(), and unrelocated_text_low().
void partial_symtab::add_psymbol | ( | const partial_symbol & | psym, |
psymbol_placement | where, | ||
psymtab_storage * | partial_symtabs, | ||
struct objfile * | objfile ) |
Definition at line 1183 of file psymtab.c.
References GLOBAL, global_psymbols, gdb::bcache::insert(), psymtab_storage::psymbol_cache, STATIC, and static_psymbols.
void partial_symtab::add_psymbol | ( | gdb::string_view | name, |
bool | copy_name, | ||
domain_enum | domain, | ||
enum address_class | theclass, | ||
short | section, | ||
psymbol_placement | where, | ||
unrelocated_addr | coreaddr, | ||
enum language language | , | ||
psymtab_storage * | partial_symtabs, | ||
struct objfile * | objfile ) |
Definition at line 1211 of file psymtab.c.
References partial_symbol::aclass, add_psymbol(), general_symbol_info::compute_and_set_names(), copy_name(), partial_symbol::domain, partial_symbol::ginfo, name, psymtab_storage::obstack(), objfile::per_bfd, general_symbol_info::set_language(), general_symbol_info::set_section_index(), and partial_symbol::set_unrelocated_address().
Referenced by add_psymbol(), handle_psymbol_enumerators(), parse_partial_symbols(), read_dbx_symtab(), and scan_xcoff_symtab().
|
inline |
Definition at line 326 of file psymtab.h.
References global_psymbols, and static_psymbols.
Referenced by dbx_end_psymtab(), mdebug_expand_psymtab(), parse_partial_symbols(), and xcoff_end_psymtab().
void partial_symtab::end | ( | ) |
Definition at line 1124 of file psymtab.c.
References global_psymbols, s1, s2, and static_psymbols.
Referenced by dbx_end_psymtab(), and xcoff_end_psymtab().
void partial_symtab::expand_dependencies | ( | struct objfile * | objfile | ) |
Definition at line 1271 of file psymtab.c.
References dependencies, expand_psymtab(), filename, gdb_flush(), gdb_printf(), gdb_puts(), gdb_stdout, info_verbose, number_of_dependencies, readin_p(), and user.
Referenced by dbx_expand_psymtab(), mdebug_expand_psymtab(), and xcoff_expand_psymtab().
|
pure virtual |
Implemented in legacy_psymtab.
Referenced by expand_dependencies().
|
pure virtual |
Implemented in standard_psymtab.
Referenced by dump_psymtab(), psymbol_functions::find_pc_sect_compunit_symtab(), and psymtab_to_symtab().
|
pure virtual |
Implemented in legacy_psymtab.
Referenced by psymtab_to_symtab().
|
pure virtual |
Implemented in standard_psymtab.
Referenced by dump_psymtab(), expand_dependencies(), psymbol_functions::find_last_source_symtab(), psymbol_functions::find_pc_sect_compunit_symtab(), and psymtab_to_symtab().
|
inline |
Definition at line 318 of file psymtab.h.
References m_text_high, and text_high_valid.
Referenced by dbx_end_psymtab(), parse_partial_symbols(), partial_symtab(), read_dbx_symtab(), and scan_xcoff_symtab().
|
inline |
Definition at line 311 of file psymtab.h.
References m_text_low, and text_low_valid.
Referenced by dbx_end_psymtab(), parse_partial_symbols(), partial_symtab(), read_dbx_symtab(), and scan_xcoff_symtab().
|
inline |
Definition at line 305 of file psymtab.h.
References m_text_high, and objfile::text_section_offset().
Referenced by dump_psymtab(), find_pc_sect_psymtab_closer(), mdebug_expand_psymtab(), and read_ofile_symtab().
|
inline |
Definition at line 299 of file psymtab.h.
References m_text_low, and objfile::text_section_offset().
Referenced by dump_psymtab(), find_pc_sect_psymbol(), find_pc_sect_psymtab_closer(), mdebug_expand_psymtab(), and read_ofile_symtab().
|
inline |
Definition at line 293 of file psymtab.h.
References m_text_high.
Referenced by dbx_end_psymtab(), parse_partial_symbols(), read_dbx_symtab(), and scan_xcoff_symtab().
|
inline |
Definition at line 286 of file psymtab.h.
References m_text_low.
Referenced by dbx_end_psymtab(), parse_partial_symbols(), partial_symtab(), and read_dbx_symtab().
bool partial_symtab::anonymous = false |
Definition at line 460 of file psymtab.h.
Referenced by dump_psymtab(), and psymtab_to_fullname().
struct partial_symtab** partial_symtab::dependencies = nullptr |
Definition at line 439 of file psymtab.h.
Referenced by dbx_end_psymtab(), dump_psymtab(), expand_dependencies(), maintenance_info_psymtabs(), parse_partial_symbols(), recursively_search_psymtabs(), and xcoff_end_psymtab().
const char* partial_symtab::dirname = nullptr |
Definition at line 389 of file psymtab.h.
Referenced by psymtab_to_fullname(), and read_dbx_symtab().
const char* partial_symtab::filename = nullptr |
Definition at line 381 of file psymtab.h.
Referenced by dbx_end_psymtab(), psymbol_functions::dump(), dump_psymtab(), expand_dependencies(), psymbol_functions::find_last_source_symtab(), maintenance_info_psymtabs(), mdebug_expand_psymtab(), parse_partial_symbols(), partial_symtab(), psymtab_to_fullname(), psymtab_to_symtab(), read_dbx_symtab(), read_xcoff_symtab(), and scan_xcoff_symtab().
char* partial_symtab::fullname = nullptr |
Definition at line 385 of file psymtab.h.
Referenced by psymtab_to_fullname().
std::vector<partial_symbol *> partial_symtab::global_psymbols |
Definition at line 447 of file psymtab.h.
Referenced by add_psymbol(), dump_psymtab(), empty(), end(), find_pc_sect_psymbol(), lookup_partial_symbol(), match_partial_symbol(), and recursively_search_psymtabs().
unrelocated_addr partial_symtab::m_text_high {} |
Definition at line 399 of file psymtab.h.
Referenced by set_text_high(), text_high(), and unrelocated_text_high().
unrelocated_addr partial_symtab::m_text_low {} |
Definition at line 398 of file psymtab.h.
Referenced by set_text_low(), text_low(), and unrelocated_text_low().
struct partial_symtab* partial_symtab::next = nullptr |
Definition at line 375 of file psymtab.h.
Referenced by psymtab_storage::discard_psymtab(), psymbol_functions::dump(), find_pc_sect_psymtab_closer(), psymtab_storage::install_psymtab(), parse_partial_symbols(), and psymtab_storage::~psymtab_storage().
int partial_symtab::number_of_dependencies = 0 |
Definition at line 441 of file psymtab.h.
Referenced by dbx_end_psymtab(), dbx_read_symtab(), dump_psymtab(), expand_dependencies(), parse_partial_symbols(), recursively_search_psymtabs(), xcoff_end_psymtab(), and xcoff_read_symtab().
__extension__ enum psymtab_search_status partial_symtab::searched_flag |
Definition at line 464 of file psymtab.h.
Referenced by recursively_search_psymtabs().
std::vector<partial_symbol *> partial_symtab::static_psymbols |
Definition at line 456 of file psymtab.h.
Referenced by add_psymbol(), dump_psymtab(), empty(), end(), find_pc_sect_psymbol(), lookup_partial_symbol(), match_partial_symbol(), and recursively_search_psymtabs().
unsigned int partial_symtab::text_high_valid |
Definition at line 469 of file psymtab.h.
Referenced by dbx_end_psymtab(), mdebug_expand_psymtab(), and set_text_high().
unsigned int partial_symtab::text_low_valid |
Definition at line 468 of file psymtab.h.
Referenced by mdebug_expand_psymtab(), parse_partial_symbols(), scan_xcoff_symtab(), and set_text_low().
struct partial_symtab* partial_symtab::user = nullptr |
Definition at line 428 of file psymtab.h.
Referenced by dump_psymtab(), expand_dependencies(), psymtab_to_symtab(), and recursively_search_psymtabs().