GDB (xrefs)
Classes | Macros | Functions | Variables
/tmp/gdb-8.1/gdb/symfile-debug.c File Reference
#include "defs.h"
#include "gdbcmd.h"
#include "objfiles.h"
#include "observer.h"
#include "source.h"
#include "symtab.h"
#include "symfile.h"

Go to the source code of this file.

Classes

struct  debug_sym_fns_data
 

Macros

#define COPY_SF_PTR(from, to, name, func)
 

Functions

static int symfile_debug_installed (struct objfile *objfile)
 
static const char * debug_symtab_name (struct symtab *symtab)
 
static int debug_qf_has_symbols (struct objfile *objfile)
 
static struct symtabdebug_qf_find_last_source_symtab (struct objfile *objfile)
 
static void debug_qf_forget_cached_source_info (struct objfile *objfile)
 
static bool debug_qf_map_symtabs_matching_filename (struct objfile *objfile, const char *name, const char *real_path, gdb::function_view< bool(symtab *)> callback)
 
static struct compunit_symtabdebug_qf_lookup_symbol (struct objfile *objfile, int kind, const char *name, domain_enum domain)
 
static void debug_qf_print_stats (struct objfile *objfile)
 
static void debug_qf_dump (struct objfile *objfile)
 
static void debug_qf_relocate (struct objfile *objfile, const struct section_offsets *new_offsets, const struct section_offsets *delta)
 
static void debug_qf_expand_symtabs_for_function (struct objfile *objfile, const char *func_name)
 
static void debug_qf_expand_all_symtabs (struct objfile *objfile)
 
static void debug_qf_expand_symtabs_with_fullname (struct objfile *objfile, const char *fullname)
 
static void debug_qf_map_matching_symbols (struct objfile *objfile, const char *name, domain_enum domain, int global, int(*callback)(struct block *, struct symbol *, void *), void *data, symbol_name_match_type match, symbol_compare_ftype *ordered_compare)
 
static void debug_qf_expand_symtabs_matching (struct objfile *objfile, gdb::function_view< expand_symtabs_file_matcher_ftype > file_matcher, const lookup_name_info &lookup_name, gdb::function_view< expand_symtabs_symbol_matcher_ftype > symbol_matcher, gdb::function_view< expand_symtabs_exp_notify_ftype > expansion_notify, enum search_domain kind)
 
static struct compunit_symtabdebug_qf_find_pc_sect_compunit_symtab (struct objfile *objfile, struct bound_minimal_symbol msymbol, CORE_ADDR pc, struct obj_section *section, int warn_if_readin)
 
static void debug_qf_map_symbol_filenames (struct objfile *objfile, symbol_filename_ftype *fun, void *data, int need_fullname)
 
static struct compunit_symtabdebug_qf_find_compunit_symtab_by_address (struct objfile *objfile, CORE_ADDR address)
 
static const std::vector< probe * > & debug_sym_get_probes (struct objfile *objfile)
 
static void debug_sym_new_init (struct objfile *objfile)
 
static void debug_sym_init (struct objfile *objfile)
 
static void debug_sym_read (struct objfile *objfile, symfile_add_flags symfile_flags)
 
static void debug_sym_read_psymbols (struct objfile *objfile)
 
static void debug_sym_finish (struct objfile *objfile)
 
static void debug_sym_offsets (struct objfile *objfile, const struct section_addr_info *info)
 
static struct symfile_segment_datadebug_sym_segments (bfd *abfd)
 
static void debug_sym_read_linetable (struct objfile *objfile)
 
static bfd_byte * debug_sym_relocate (struct objfile *objfile, asection *sectp, bfd_byte *buf)
 
static void symfile_debug_free_objfile (struct objfile *objfile, void *datum)
 
static void install_symfile_debug_logging (struct objfile *objfile)
 
static void uninstall_symfile_debug_logging (struct objfile *objfile)
 
void objfile_set_sym_fns (struct objfile *objfile, const struct sym_fns *sf)
 
static void set_debug_symfile (const char *args, int from_tty, struct cmd_list_element *c)
 
static void show_debug_symfile (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
void _initialize_symfile_debug (void)
 

Variables

static const struct objfile_data * symfile_debug_objfile_data_key
 
static int debug_symfile = 0
 
static const struct quick_symbol_functions debug_sym_quick_functions
 
static const struct sym_probe_fns debug_sym_probe_fns
 
static const struct sym_fns debug_sym_fns
 

Macro Definition Documentation

◆ COPY_SF_PTR

#define COPY_SF_PTR (   from,
  to,
  name,
  func 
)
Value:
do { \
if ((from)->name) \
(to)->debug_sf.name = func; \
} while (0)
void(* func)(char *)
const char *const name
Definition: aarch64-tdep.c:76

Referenced by install_symfile_debug_logging().

Function Documentation

◆ _initialize_symfile_debug()

void _initialize_symfile_debug ( void  )

◆ debug_qf_dump()

static void debug_qf_dump ( struct objfile objfile)
static

◆ debug_qf_expand_all_symtabs()

static void debug_qf_expand_all_symtabs ( struct objfile objfile)
static

◆ debug_qf_expand_symtabs_for_function()

static void debug_qf_expand_symtabs_for_function ( struct objfile objfile,
const char *  func_name 
)
static

◆ debug_qf_expand_symtabs_matching()

static void debug_qf_expand_symtabs_matching ( struct objfile objfile,
gdb::function_view< expand_symtabs_file_matcher_ftype file_matcher,
const lookup_name_info lookup_name,
gdb::function_view< expand_symtabs_symbol_matcher_ftype symbol_matcher,
gdb::function_view< expand_symtabs_exp_notify_ftype expansion_notify,
enum search_domain  kind 
)
static

◆ debug_qf_expand_symtabs_with_fullname()

static void debug_qf_expand_symtabs_with_fullname ( struct objfile objfile,
const char *  fullname 
)
static

◆ debug_qf_find_compunit_symtab_by_address()

static struct compunit_symtab* debug_qf_find_compunit_symtab_by_address ( struct objfile objfile,
CORE_ADDR  address 
)
static

◆ debug_qf_find_last_source_symtab()

static struct symtab* debug_qf_find_last_source_symtab ( struct objfile objfile)
static

◆ debug_qf_find_pc_sect_compunit_symtab()

static struct compunit_symtab* debug_qf_find_pc_sect_compunit_symtab ( struct objfile objfile,
struct bound_minimal_symbol  msymbol,
CORE_ADDR  pc,
struct obj_section section,
int  warn_if_readin 
)
static

◆ debug_qf_forget_cached_source_info()

static void debug_qf_forget_cached_source_info ( struct objfile objfile)
static

◆ debug_qf_has_symbols()

static int debug_qf_has_symbols ( struct objfile objfile)
static

◆ debug_qf_lookup_symbol()

static struct compunit_symtab* debug_qf_lookup_symbol ( struct objfile objfile,
int  kind,
const char *  name,
domain_enum  domain 
)
static

◆ debug_qf_map_matching_symbols()

static void debug_qf_map_matching_symbols ( struct objfile objfile,
const char *  name,
domain_enum  domain,
int  global,
int(*)(struct block *, struct symbol *, void *)  callback,
void *  data,
symbol_name_match_type  match,
symbol_compare_ftype ordered_compare 
)
static

◆ debug_qf_map_symbol_filenames()

static void debug_qf_map_symbol_filenames ( struct objfile objfile,
symbol_filename_ftype fun,
void *  data,
int  need_fullname 
)
static

◆ debug_qf_map_symtabs_matching_filename()

static bool debug_qf_map_symtabs_matching_filename ( struct objfile objfile,
const char *  name,
const char *  real_path,
gdb::function_view< bool(symtab *)>  callback 
)
static

◆ debug_qf_print_stats()

static void debug_qf_print_stats ( struct objfile objfile)
static

◆ debug_qf_relocate()

static void debug_qf_relocate ( struct objfile objfile,
const struct section_offsets new_offsets,
const struct section_offsets delta 
)
static

◆ debug_sym_finish()

static void debug_sym_finish ( struct objfile objfile)
static

◆ debug_sym_get_probes()

static const std::vector<probe *>& debug_sym_get_probes ( struct objfile objfile)
static

◆ debug_sym_init()

static void debug_sym_init ( struct objfile objfile)
static

◆ debug_sym_new_init()

static void debug_sym_new_init ( struct objfile objfile)
static

◆ debug_sym_offsets()

static void debug_sym_offsets ( struct objfile objfile,
const struct section_addr_info info 
)
static

◆ debug_sym_read()

static void debug_sym_read ( struct objfile objfile,
symfile_add_flags  symfile_flags 
)
static

◆ debug_sym_read_linetable()

static void debug_sym_read_linetable ( struct objfile objfile)
static

◆ debug_sym_read_psymbols()

static void debug_sym_read_psymbols ( struct objfile objfile)
static

◆ debug_sym_relocate()

static bfd_byte* debug_sym_relocate ( struct objfile objfile,
asection *  sectp,
bfd_byte *  buf 
)
static

◆ debug_sym_segments()

static struct symfile_segment_data* debug_sym_segments ( bfd *  abfd)
static

Definition at line 523 of file symfile-debug.c.

References gdb_assert_not_reached.

Referenced by install_symfile_debug_logging().

◆ debug_symtab_name()

static const char* debug_symtab_name ( struct symtab symtab)
static

◆ install_symfile_debug_logging()

static void install_symfile_debug_logging ( struct objfile objfile)
static

◆ objfile_set_sym_fns()

void objfile_set_sym_fns ( struct objfile objfile,
const struct sym_fns sf 
)

◆ set_debug_symfile()

static void set_debug_symfile ( const char *  args,
int  from_tty,
struct cmd_list_element c 
)
static

◆ show_debug_symfile()

static void show_debug_symfile ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

Definition at line 700 of file symfile-debug.c.

References _, and fprintf_filtered().

Referenced by _initialize_symfile_debug().

◆ symfile_debug_free_objfile()

static void symfile_debug_free_objfile ( struct objfile objfile,
void *  datum 
)
static

Definition at line 587 of file symfile-debug.c.

References xfree().

Referenced by _initialize_symfile_debug().

◆ symfile_debug_installed()

static int symfile_debug_installed ( struct objfile objfile)
static

◆ uninstall_symfile_debug_logging()

static void uninstall_symfile_debug_logging ( struct objfile objfile)
static

Variable Documentation

◆ debug_sym_fns

const struct sym_fns debug_sym_fns
static
Initial value:
=
{
}
static const struct sym_probe_fns debug_sym_probe_fns
static void debug_sym_new_init(struct objfile *objfile)
static void debug_sym_finish(struct objfile *objfile)
static void debug_sym_read(struct objfile *objfile, symfile_add_flags symfile_flags)
static const struct quick_symbol_functions debug_sym_quick_functions
static void debug_sym_offsets(struct objfile *objfile, const struct section_addr_info *info)
static void debug_sym_read_psymbols(struct objfile *objfile)
static struct symfile_segment_data * debug_sym_segments(bfd *abfd)
static void debug_sym_read_linetable(struct objfile *objfile)
static bfd_byte * debug_sym_relocate(struct objfile *objfile, asection *sectp, bfd_byte *buf)
static void debug_sym_init(struct objfile *objfile)

Definition at line 569 of file symfile-debug.c.

◆ debug_sym_probe_fns

const struct sym_probe_fns debug_sym_probe_fns
static
Initial value:
=
{
}
static const std::vector< probe * > & debug_sym_get_probes(struct objfile *objfile)

Definition at line 435 of file symfile-debug.c.

Referenced by install_symfile_debug_logging().

◆ debug_sym_quick_functions

const struct quick_symbol_functions debug_sym_quick_functions
static
Initial value:
=
{
}
static void debug_qf_relocate(struct objfile *objfile, const struct section_offsets *new_offsets, const struct section_offsets *delta)
static void debug_qf_map_matching_symbols(struct objfile *objfile, const char *name, domain_enum domain, int global, int(*callback)(struct block *, struct symbol *, void *), void *data, symbol_name_match_type match, symbol_compare_ftype *ordered_compare)
static void debug_qf_expand_symtabs_with_fullname(struct objfile *objfile, const char *fullname)
static void debug_qf_dump(struct objfile *objfile)
static void debug_qf_forget_cached_source_info(struct objfile *objfile)
static struct compunit_symtab * debug_qf_lookup_symbol(struct objfile *objfile, int kind, const char *name, domain_enum domain)
static struct symtab * debug_qf_find_last_source_symtab(struct objfile *objfile)
Definition: symfile-debug.c:89
static int debug_qf_has_symbols(struct objfile *objfile)
Definition: symfile-debug.c:73
static void debug_qf_expand_symtabs_for_function(struct objfile *objfile, const char *func_name)
static void debug_qf_expand_all_symtabs(struct objfile *objfile)
static void debug_qf_map_symbol_filenames(struct objfile *objfile, symbol_filename_ftype *fun, void *data, int need_fullname)
static struct compunit_symtab * debug_qf_find_pc_sect_compunit_symtab(struct objfile *objfile, struct bound_minimal_symbol msymbol, CORE_ADDR pc, struct obj_section *section, int warn_if_readin)
static bool debug_qf_map_symtabs_matching_filename(struct objfile *objfile, const char *name, const char *real_path, gdb::function_view< bool(symtab *)> callback)
static struct compunit_symtab * debug_qf_find_compunit_symtab_by_address(struct objfile *objfile, CORE_ADDR address)
static void debug_qf_expand_symtabs_matching(struct objfile *objfile, gdb::function_view< expand_symtabs_file_matcher_ftype > file_matcher, const lookup_name_info &lookup_name, gdb::function_view< expand_symtabs_symbol_matcher_ftype > symbol_matcher, gdb::function_view< expand_symtabs_exp_notify_ftype > expansion_notify, enum search_domain kind)
static void debug_qf_print_stats(struct objfile *objfile)

Definition at line 395 of file symfile-debug.c.

Referenced by install_symfile_debug_logging().

◆ debug_symfile

int debug_symfile = 0
static

◆ symfile_debug_objfile_data_key

const struct objfile_data* symfile_debug_objfile_data_key
static