GDB (xrefs)

Classes | Macros | Enumerations | Functions | Variables
/tmp/gdb-8.1/gdb/symfile.c File Reference
`#include "defs.h"`
`#include "arch-utils.h"`
`#include "bfdlink.h"`
`#include "symtab.h"`
`#include "gdbtypes.h"`
`#include "gdbcore.h"`
`#include "frame.h"`
`#include "target.h"`
`#include "value.h"`
`#include "symfile.h"`
`#include "objfiles.h"`
`#include "source.h"`
`#include "gdbcmd.h"`
`#include "breakpoint.h"`
`#include "language.h"`
`#include "complaints.h"`
`#include "demangle.h"`
`#include "inferior.h"`
`#include "regcache.h"`
`#include "filenames.h"`
`#include "gdb-stabs.h"`
`#include "gdb_obstack.h"`
`#include "completer.h"`
`#include "bcache.h"`
`#include "hashtab.h"`
`#include "readline/readline.h"`
`#include "block.h"`
`#include "observer.h"`
`#include "exec.h"`
`#include "parser-defs.h"`
`#include "varobj.h"`
`#include "elf-bfd.h"`
`#include "solib.h"`
`#include "remote.h"`
`#include "stack.h"`
`#include "gdb_bfd.h"`
`#include "cli/cli-utils.h"`
`#include "common/byte-vector.h"`
`#include "selftest.h"`
`#include <sys/types.h>`
`#include <fcntl.h>`
`#include <sys/stat.h>`
`#include <ctype.h>`
`#include <chrono>`
`#include "psymtab.h"`

Go to the source code of this file.

## Classes
struct | registered_sym_fns
struct | place_section_arg
struct | load_section_data
struct | load_progress_data
struct | load_progress_section_data
struct | filename_language

## Macros
#define | DEBUG_SUBDIRECTORY ".debug"
#define | READNOW_READNEVER_HELP "The '-readnow' option will cause GDB to read the entire symbol file\n\immediately. This makes the command slower, but may make future operations\n\faster.\n\The '-readnever' option will prevent GDB from reading the symbol file's\n\symbolic debug information."

## Enumerations
enum | ovly_index { VMA, OSIZE, LMA, MAPPED }

## Functions
static void | clear_symtab_users_cleanup (void *ignore)
static void | symbol_file_add_main_1 (const char *args, symfile_add_flags add_flags, objfile_flags flags)
static const struct sym_fns * | find_sym_fns (bfd *)
static void | overlay_invalidate_all (void)
static void | simple_free_overlay_table (void)
static void | read_target_long_array (CORE_ADDR, unsigned int *, int, int, enum bfd_endian)
static int | simple_read_overlay_table (void)
static int | simple_overlay_update_1 (struct obj_section *)
static void | symfile_find_segment_sections (struct objfile *objfile)
int | print_symbol_loading_p (int from_tty, int exec, int full)
scoped_restore_tmpl< int > | increment_reading_symtab (void)
void | find_lowest_section (bfd *abfd, asection *sect, void *obj)
struct section_addr_info * | alloc_section_addr_info (size_t num_sections)
struct section_addr_info * | build_section_addr_info_from_section_table (const struct target_section *start, const struct target_section *end)
static struct section_addr_info * | build_section_addr_info_from_bfd (bfd *abfd)
struct section_addr_info * | build_section_addr_info_from_objfile (const struct objfile *objfile)
void | free_section_addr_info (struct section_addr_info *sap)
static void | init_objfile_sect_indices (struct objfile *objfile)
static void | place_section (bfd *abfd, asection *sect, void *obj)
void | relative_addr_info_to_section_offsets (struct section_offsets *section_offsets, int num_sections, const struct section_addr_info *addrs)
static const char * | addr_section_name (const char *s)
static int | addrs_section_compar (const void *ap, const void *bp)
static struct other_sections ** | addrs_section_sort (struct section_addr_info *addrs)
void | addr_info_make_relative (struct section_addr_info *addrs, bfd *abfd)
void | default_symfile_offsets (struct objfile *objfile, const struct section_addr_info *addrs)
struct symfile_segment_data * | default_symfile_segments (bfd *abfd)
static void | read_symbols (struct objfile *objfile, symfile_add_flags add_flags)
static void | init_entry_point_info (struct objfile *objfile)
static void | syms_from_objfile_1 (struct objfile *objfile, struct section_addr_info *addrs, symfile_add_flags add_flags)
static void | syms_from_objfile (struct objfile *objfile, struct section_addr_info *addrs, symfile_add_flags add_flags)
static void | finish_new_objfile (struct objfile *objfile, symfile_add_flags add_flags)
static struct objfile * | symbol_file_add_with_addrs (bfd *abfd, const char *name, symfile_add_flags add_flags, struct section_addr_info *addrs, objfile_flags flags, struct objfile *parent)
void | symbol_file_add_separate (bfd *bfd, const char *name, symfile_add_flags symfile_flags, struct objfile *objfile)
struct objfile * | symbol_file_add_from_bfd (bfd *abfd, const char *name, symfile_add_flags add_flags, struct section_addr_info *addrs, objfile_flags flags, struct objfile *parent)
struct objfile * | symbol_file_add (const char *name, symfile_add_flags add_flags, struct section_addr_info *addrs, objfile_flags flags)
void | symbol_file_add_main (const char *args, symfile_add_flags add_flags)
void | symbol_file_clear (int from_tty)
static int | separate_debug_file_exists (const char *name, unsigned long crc, struct objfile *parent_objfile)
static void | show_debug_file_directory (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
static char * | find_separate_debug_file (const char *dir, const char *canon_dir, const char *debuglink, unsigned long crc32, struct objfile *objfile)
static void | terminate_after_last_dir_separator (char *path)
char * | find_separate_debug_file_by_debuglink (struct objfile *objfile)
static void | validate_readnow_readnever (objfile_flags flags)
void | symbol_file_command (const char *args, int from_tty)
void | set_initial_language (void)
gdb_bfd_ref_ptr | symfile_bfd_open (const char *name)
int | get_section_index (struct objfile *objfile, const char *section_name)
void | add_symtab_fns (enum bfd_flavour flavour, const struct sym_fns *sf)
static void | load_command (const char *arg, int from_tty)
static void | add_section_size_callback (bfd *abfd, asection *asec, void *data)
static void | load_progress (ULONGEST bytes, void *untyped_arg)
static void | load_section_callback (bfd *abfd, asection *asec, void *data)
static void | clear_memory_write_data (void *arg)
static void | print_transfer_performance (struct ui_file *stream, unsigned long data_count, unsigned long write_count, std::chrono::steady_clock::duration d)
void | generic_load (const char *args, int from_tty)
static void | add_symbol_file_command (const char *args, int from_tty)
static void | remove_symbol_file_command (const char *args, int from_tty)
void | reread_symbols (void)
void | add_filename_language (const char *ext, enum language lang)
static void | show_ext_args (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
static void | set_ext_lang_command (const char *args, int from_tty, struct cmd_list_element *e)
static void | info_ext_lang_command (const char *args, int from_tty)
enum language | deduce_language_from_filename (const char *filename)
struct symtab * | allocate_symtab (struct compunit_symtab *cust, const char *filename)
struct compunit_symtab * | allocate_compunit_symtab (struct objfile *objfile, const char *name)
void | add_compunit_symtab_to_objfile (struct compunit_symtab *cu)
void | clear_symtab_users (symfile_add_flags add_flags)
int | section_is_overlay (struct obj_section *section)
int | section_is_mapped (struct obj_section *osect)
CORE_ADDR | pc_in_unmapped_range (CORE_ADDR pc, struct obj_section *section)
CORE_ADDR | pc_in_mapped_range (CORE_ADDR pc, struct obj_section *section)
static int | sections_overlap (struct obj_section *a, struct obj_section *b)
CORE_ADDR | overlay_unmapped_address (CORE_ADDR pc, struct obj_section *section)
CORE_ADDR | overlay_mapped_address (CORE_ADDR pc, struct obj_section *section)
CORE_ADDR | symbol_overlayed_address (CORE_ADDR address, struct obj_section *section)
struct obj_section * | find_pc_overlay (CORE_ADDR pc)
struct obj_section * | find_pc_mapped_section (CORE_ADDR pc)
static void | list_overlays_command (const char *args, int from_tty)
static void | map_overlay_command (const char *args, int from_tty)
static void | unmap_overlay_command (const char *args, int from_tty)
static void | overlay_auto_command (const char *args, int from_tty)
static void | overlay_manual_command (const char *args, int from_tty)
static void | overlay_off_command (const char *args, int from_tty)
static void | overlay_load_command (const char *args, int from_tty)
static void | overlay_command (const char *args, int from_tty)
void | simple_overlay_update (struct obj_section *osect)
static void | symfile_dummy_outputs (bfd *abfd, asection *sectp, void *dummy)
bfd_byte * | default_symfile_relocate (struct objfile *objfile, asection *sectp, bfd_byte *buf)
bfd_byte * | symfile_relocate_debug_section (struct objfile *objfile, asection *sectp, bfd_byte *buf)
struct symfile_segment_data * | get_symfile_segment_data (bfd *abfd)
void | free_symfile_segment_data (struct symfile_segment_data *data)
int | symfile_map_offsets_to_segments (bfd *abfd, const struct symfile_segment_data *data, struct section_offsets *offsets, int num_segment_bases, const CORE_ADDR *segment_bases)
static void | symfile_free_objfile (struct objfile *objfile)
void | expand_symtabs_matching (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)
void | map_symbol_filenames (symbol_filename_ftype *fun, void *data, int need_fullname)
void | _initialize_symfile (void)

## Variables
int(* | deprecated_ui_load_progress_hook )(const char *section, unsigned long num)
void(* | deprecated_show_load_progress )(const char *section, unsigned long section_sent, unsigned long section_size, unsigned long total_sent, unsigned long total_size)
void(* | deprecated_pre_add_symbol_hook )(const char *)
void(* | deprecated_post_add_symbol_hook )(void)
int | readnow_symbol_files
int | readnever_symbol_files
static std::vector< registered_sym_fns > | symtab_fns
const char | print_symbol_loading_off [] = "off"
const char | print_symbol_loading_brief [] = "brief"
const char | print_symbol_loading_full [] = "full"
static const char * | print_symbol_loading_enums []
static const char * | print_symbol_loading = print_symbol_loading_full
int | auto_solib_add = 1
int | currently_reading_symtab = 0
int | separate_debug_file_debug = 0
char * | debug_file_directory = NULL
static int | validate_download = 0
static std::vector< filename_language > | filename_language_table
static char * | ext_args
enum overlay_debugging_state | overlay_debugging = ovly_off
int | overlay_cache_invalid = 0
static struct cmd_list_element * | overlaylist
static unsigned(* | cache_ovly_table )[4] = 0
static unsigned | cache_novlys = 0
static CORE_ADDR | cache_ovly_table_base = 0

## Macro Definition Documentation

## ◆ DEBUG_SUBDIRECTORY

#define DEBUG_SUBDIRECTORY ".debug"

Definition at line 1426 of file symfile.c.

Referenced by _initialize_symfile(), and find_separate_debug_file().

## ◆ READNOW_READNEVER_HELP

#define READNOW_READNEVER_HELP "The '-readnow' option will cause GDB to read the entire symbol file\n\immediately. This makes the command slower, but may make future operations\n\faster.\n\The '-readnever' option will prevent GDB from reading the symbol file's\n\symbolic debug information."

Referenced by _initialize_symfile().

## Enumeration Type Documentation

## ◆ ovly_index

enum ovly_index

Enumerator
VMA |
OSIZE |
LMA |
MAPPED |

Definition at line 3434 of file symfile.c.

## Function Documentation

## ◆ _initialize_symfile()

void _initialize_symfile | ( | void |  | ) |

Definition at line 3899 of file symfile.c.

References _, add_cmd(), add_com_alias(), add_info(), add_prefix_cmd(), add_setshow_boolean_cmd(), add_setshow_enum_cmd(), add_setshow_optional_filename_cmd(), add_setshow_string_noescape_cmd(), add_symbol_file_command(), class_alias, class_files, class_support, cmdlist, debug_file_directory, DEBUG_SUBDIRECTORY, ext_args, filename_completer(), info_ext_lang_command(), list_overlays_command(), load_command(), map_overlay_command(), no_class, observer_attach_free_objfile(), overlay_auto_command(), overlay_command(), overlay_load_command(), overlay_manual_command(), overlay_off_command(), overlaylist, print_symbol_loading, print_symbol_loading_enums, READNOW_READNEVER_HELP, selftests::register_test(), remove_symbol_file_command(), separate_debug_file_debug, set_cmd_completer(), set_ext_lang_command(), setdebuglist, setlist, setprintlist, show_debug_file_directory(), show_ext_args(), showdebuglist, showlist, showprintlist, symbol_file_command(), symfile_free_objfile(), and unmap_overlay_command().

## ◆ add_compunit_symtab_to_objfile()

void add_compunit_symtab_to_objfile | ( | struct compunit_symtab * | cu | ) |

Definition at line 2874 of file symfile.c.

References objfile::compunit_symtabs, compunit_symtab::next, and compunit_symtab::objfile.

Referenced by end_symtab_with_blockvector(), finalize_symtab(), and new_symtab().

## ◆ add_filename_language()

void add_filename_language | ( | const char * | ext,
|  | enum language | lang
| ) |  |

Definition at line 2680 of file symfile.c.

References filename_language_table.

Referenced by add_set_language_command(), and set_ext_lang_command().

## ◆ add_section_size_callback()

static void add_section_size_callback | ( | bfd * | abfd,
|  | asection * | asec,
|  | void * | data
| ) |  |
| static

Definition at line 1893 of file symfile.c.

Referenced by generic_load().

## ◆ add_symbol_file_command()

static void add_symbol_file_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 2206 of file symfile.c.

References _, add_target_sections_of_objfile(), alloc_section_addr_info(), cleanup::arg, gdb::argv, do_cleanups(), dont_repeat(), error(), flags, get_current_arch(), make_cleanup(), name, null_cleanup(), OBJF_READNEVER, OBJF_READNOW, OBJF_SHARED, OBJF_USERLOADED, paddress(), parse_and_eval_address(), printf_unfiltered(), query(), reinit_frame_cache(), symbol_file_add(), SYMFILE_VERBOSE, validate_readnow_readnever(), and xfree().

Referenced by _initialize_symfile().

## ◆ add_symtab_fns()

void add_symtab_fns | ( | enum bfd_flavour | flavour,
|  | const struct sym_fns * | sf
| ) |  |

Definition at line 1790 of file symfile.c.

References symtab_fns.

Referenced by _initialize_coffread(), _initialize_dbxread(), _initialize_elfread(), _initialize_machoread(), _initialize_mipsread(), and _initialize_xcoffread().

## ◆ addr_info_make_relative()

void addr_info_make_relative | ( | struct section_addr_info * | addrs,
|  | bfd * | abfd
| ) |  |

Definition at line 547 of file symfile.c.

References _, other_sections::addr, addr_section_name(), addrs_section_sort(), build_section_addr_info_from_bfd(), do_cleanups(), find_lowest_section(), gdb_assert, make_cleanup(), make_cleanup_free_section_addr_info(), other_sections::name, section_addr_info::num_sections, section_addr_info::other, other_sections::sectindex, warning(), XCNEWVEC, and xfree().

Referenced by objfile_relocate(), and syms_from_objfile_1().

## ◆ addr_section_name()

static const char* addr_section_name | ( | const char * | s | ) |
| static

Definition at line 495 of file symfile.c.

Referenced by addr_info_make_relative(), and addrs_section_compar().

## ◆ addrs_section_compar()

static int addrs_section_compar | ( | const void * | ap,
|  | const void * | bp
| ) |  |
| static

Definition at line 509 of file symfile.c.

References addr_section_name(), bp, other_sections::name, and other_sections::sectindex.

Referenced by addrs_section_sort().

## ◆ addrs_section_sort()

static struct other_sections** addrs_section_sort | ( | struct section_addr_info * | addrs | ) |
| static

Definition at line 526 of file symfile.c.

References addrs_section_compar(), section_addr_info::num_sections, section_addr_info::other, qsort, and XNEWVEC.

Referenced by addr_info_make_relative().

## ◆ alloc_section_addr_info()

struct section_addr_info* alloc_section_addr_info | ( | size_t | num_sections | ) |

Definition at line 223 of file symfile.c.

References memset(), section_addr_info::num_sections, size, and xmalloc().

Referenced by add_symbol_file_command(), build_section_addr_info_from_bfd(), build_section_addr_info_from_section_table(), jit_bfd_try_read_symtab(), symbol_file_add_from_memory(), and syms_from_objfile_1().

## ◆ allocate_compunit_symtab()

struct compunit_symtab* allocate_compunit_symtab | ( | struct objfile * | objfile,
|  | const char * | name
| ) |  |

Definition at line 2842 of file symfile.c.

References COMPUNIT_DEBUGFORMAT, fprintf_unfiltered(), gdb_stdlog, host_address_to_string, name, compunit_symtab::name, compunit_symtab::objfile, OBSTACK_ZALLOC, and symtab_create_debug.

Referenced by finalize_symtab(), new_symtab(), and start_symtab().

## ◆ allocate_symtab()

struct symtab* allocate_symtab | ( | struct compunit_symtab * | cust,
|  | const char * | filename
| ) |  |

Definition at line 2785 of file symfile.c.

References symtab::compunit_symtab, deduce_language_from_filename(), symtab::filename, objfile_per_bfd_storage::filename_cache, compunit_symtab::filetabs, fprintf_unfiltered(), symtab::fullname, gdb_stdlog, host_address_to_string, symtab::language, compunit_symtab::last_filetab, symtab::next, compunit_symtab::objfile, objfile_name(), OBSTACK_ZALLOC, objfile::per_bfd, symtab_create_debug, and xfree().

Referenced by dwarf_decode_lines(), end_symtab_with_blockvector(), finalize_symtab(), new_symtab(), and setup_type_unit_groups().

## ◆ build_section_addr_info_from_bfd()

static struct section_addr_info* build_section_addr_info_from_bfd | ( | bfd * | abfd | ) |
| static

Definition at line 272 of file symfile.c.

References other_sections::addr, alloc_section_addr_info(), gdb_bfd_section_index(), other_sections::name, section_addr_info::num_sections, section_addr_info::other, and other_sections::sectindex.

Referenced by addr_info_make_relative(), and build_section_addr_info_from_objfile().

## ◆ build_section_addr_info_from_objfile()

struct section_addr_info* build_section_addr_info_from_objfile | ( | const struct objfile * | objfile | ) |

Definition at line 296 of file symfile.c.

References other_sections::addr, build_section_addr_info_from_bfd(), section_addr_info::num_sections, objfile::obfd, section_offsets::offsets, section_addr_info::other, other_sections::sectindex, and objfile::section_offsets.

Referenced by objfile_relocate(), and symbol_file_add_separate().

## ◆ build_section_addr_info_from_section_table()

struct section_addr_info* build_section_addr_info_from_section_table | ( | const struct target_section * | start,
|  | const struct target_section * | end
| ) |  |

Definition at line 240 of file symfile.c.

References other_sections::addr, target_section::addr, alloc_section_addr_info(), gdb_bfd_section_index(), other_sections::name, section_addr_info::num_sections, section_addr_info::other, other_sections::sectindex, and target_section::the_bfd_section.

Referenced by solib_read_symbols().

## ◆ clear_memory_write_data()

static void clear_memory_write_data | ( | void * | arg | ) |
| static

Definition at line 2034 of file symfile.c.

References memory_write_request::baton, memory_write_request::data, VEC, VEC_free, VEC_iterate, and xfree().

Referenced by generic_load().

## ◆ clear_symtab_users()

void clear_symtab_users | ( | symfile_add_flags | add_flags | ) |

Definition at line 2885 of file symfile.c.

References breakpoint_re_set(), clear_current_source_symtab_and_line(), clear_displays(), clear_last_displayed_sal(), clear_pc_function_cache(), expression_context_block, innermost_block, observer_notify_new_objfile(), SYMFILE_DEFER_BP_RESET, and varobj_invalidate().

Referenced by clear_symtab_users_cleanup(), do_module_cleanup(), finish_new_objfile(), free_all_objfiles(), remove_symbol_file_command(), and reread_symbols().

## ◆ clear_symtab_users_cleanup()

static void clear_symtab_users_cleanup | ( | void * | ignore | ) |
| static

Definition at line 2915 of file symfile.c.

References clear_symtab_users().

Referenced by reread_symbols(), and syms_from_objfile_1().

## ◆ deduce_language_from_filename()

enum language deduce_language_from_filename | ( | const char * | filename | ) |

Definition at line 2766 of file symfile.c.

References filename_language_table, and language_unknown.

Referenced by allocate_symtab(), parse_partial_symbols(), patch_subfile_names(), read_dbx_symtab(), scan_xcoff_symtab(), start_psymtab(), start_subfile(), and xcoff_start_psymtab().

## ◆ default_symfile_offsets()

void default_symfile_offsets | ( | struct objfile * | objfile,
|  | const struct section_addr_info * | addrs
| ) |  |

Definition at line 695 of file symfile.c.

References exec_set_section_address(), gdb_bfd_count_sections(), init_objfile_sect_indices(), place_section_arg::lowest, objfile::num_sections, objfile::obfd, place_section_arg::offsets, section_offsets::offsets, place_section(), relative_addr_info_to_section_offsets(), objfile::section_offsets, and SIZEOF_N_SECTION_OFFSETS.

Referenced by xcoff_symfile_offsets().

## ◆ default_symfile_relocate()

bfd_byte* default_symfile_relocate | ( | struct objfile * | objfile,
|  | asection * | sectp,
|  | bfd_byte * | buf
| ) |  |

Definition at line 3625 of file symfile.c.

References symfile_dummy_outputs().

## ◆ default_symfile_segments()

struct symfile_segment_data* default_symfile_segments | ( | bfd * | abfd | ) |

Definition at line 785 of file symfile.c.

References symfile_segment_data::num_segments, symfile_segment_data::segment_bases, symfile_segment_data::segment_info, symfile_segment_data::segment_sizes, XCNEW, and XCNEWVEC.

## ◆ expand_symtabs_matching()

void expand_symtabs_matching | ( | 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
| ) |  |

Definition at line 3803 of file symfile.c.

References ALL_OBJFILES, quick_symbol_functions::expand_symtabs_matching, objfile::objfile(), sym_fns::qf, and objfile::sf.

Referenced by ada_add_global_exceptions(), ada_collect_symbol_completion_matches(), default_collect_symbol_completion_matches_break_on(), and search_symbols().

## ◆ find_lowest_section()

void find_lowest_section | ( | bfd * | abfd,
|  | asection * | sect,
|  | void * | obj
| ) |  |

Definition at line 202 of file symfile.c.

Referenced by addr_info_make_relative().

## ◆ find_pc_mapped_section()

struct obj_section* find_pc_mapped_section | ( | CORE_ADDR | pc | ) |

Definition at line 3202 of file symfile.c.

References ALL_OBJSECTIONS, objfile::objfile(), overlay_debugging, pc_in_mapped_range(), and section_is_mapped().

Referenced by backtrace_command_1(), block_for_pc(), blockvector_for_pc(), find_pc_compunit_symtab(), find_pc_function(), and find_pc_section().

## ◆ find_pc_overlay()

struct obj_section* find_pc_overlay | ( | CORE_ADDR | pc | ) |

Definition at line 3173 of file symfile.c.

References ALL_OBJSECTIONS, objfile::objfile(), overlay_debugging, pc_in_mapped_range(), pc_in_unmapped_range(), section_is_mapped(), and section_is_overlay().

Referenced by arm_linux_copy_svc(), build_address_symbolic(), call_function_by_hand_dummy(), convert_address_location_to_sals(), create_internal_breakpoint(), elf_gnu_ifunc_resolver_stop(), find_pc_line(), find_pc_partial_function_gnu_ifunc(), handle_step_into_function(), insert_hp_step_resume_breakpoint_at_frame(), insert_single_step_breakpoint(), insert_step_resume_breakpoint_at_caller(), memory_xfer_partial_1(), parse_probes_in_pspace(), process_event_stop_test(), and set_momentary_breakpoint_at_pc().

## ◆ find_separate_debug_file()

static char* find_separate_debug_file | ( | const char * | dir,
|  | const char * | canon_dir,
|  | const char * | debuglink,
|  | unsigned long | crc32,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 1437 of file symfile.c.

References _, debug_file_directory, DEBUG_SUBDIRECTORY, do_cleanups(), gdb_sysroot, make_cleanup_free_char_ptr_vec(), objfile_name(), printf_unfiltered(), separate_debug_file_debug, separate_debug_file_exists(), VEC, VEC_iterate, xfree(), and xmalloc().

Referenced by find_separate_debug_file_by_debuglink().

## ◆ find_separate_debug_file_by_debuglink()

char* find_separate_debug_file_by_debuglink | ( | struct objfile * | objfile | ) |

Definition at line 1551 of file symfile.c.

References find_separate_debug_file(), objfile::obfd, objfile_name(), string, and terminate_after_last_dir_separator().

Referenced by coff_symfile_read(), and elf_symfile_read().

## ◆ find_sym_fns()

static const struct sym_fns * find_sym_fns | ( | bfd * | abfd | ) |
| static

Definition at line 1801 of file symfile.c.

References _, error(), and symtab_fns.

Referenced by get_symfile_segment_data(), reread_symbols(), and syms_from_objfile_1().

## ◆ finish_new_objfile()

static void finish_new_objfile | ( | struct objfile * | objfile,
|  | symfile_add_flags | add_flags
| ) |  |
| static

Definition at line 1076 of file symfile.c.

References breakpoint_re_set(), clear_complaints(), clear_symtab_users(), symfile_complaints, SYMFILE_DEFER_BP_RESET, SYMFILE_MAINLINE, symfile_objfile, and SYMFILE_VERBOSE.

Referenced by symbol_file_add_with_addrs().

## ◆ free_section_addr_info()

void free_section_addr_info | ( | struct section_addr_info * | sap | ) |

Definition at line 317 of file symfile.c.

References other_sections::name, section_addr_info::num_sections, section_addr_info::other, and xfree().

Referenced by do_free_section_addr_info(), and solib_read_symbols().

## ◆ free_symfile_segment_data()

void free_symfile_segment_data | ( | struct symfile_segment_data * | data | ) |

Definition at line 3679 of file symfile.c.

References symfile_segment_data::segment_bases, symfile_segment_data::segment_info, symfile_segment_data::segment_sizes, and xfree().

Referenced by get_offsets(), solib_target_relocate_section_addresses(), and symfile_find_segment_sections().

## ◆ generic_load()

void generic_load | ( | const char * | name,
|  | int | from_tty
| ) |  |

Remote targets may wish to use this as their load function.

Definition at line 2055 of file symfile.c.

References _, add_section_size_callback(), gdb::argv, breakpoint_re_set(), clear_memory_write_data(), current_uiout, load_progress_data::data_count, do_cleanups(), error(), error_no_arg(), ui_out::field_fmt(), flash_discard, gdb_bfd_open(), gdb_stdout, gdbarch_addr_bits_remove(), gdb::ref_ptr< T, Policy >::get(), get_current_regcache(), gnutarget, load_section_data::load_offset, load_progress(), load_section_callback(), make_cleanup(), memset(), paddress(), perror_with_name(), print_transfer_performance(), load_section_data::progress_data, regcache_write_pc(), strtoulst(), target_gdbarch(), target_write_memory_blocks(), ui_out::text(), load_progress_data::total_size, and load_progress_data::write_count.

Referenced by remote_load().

## ◆ get_section_index()

int get_section_index | ( | struct objfile * | objfile,
|  | const char * | section_name
| ) |  |

Definition at line 1773 of file symfile.c.

References objfile::obfd.

Referenced by parse_partial_symbols(), and record_minimal_symbol().

## ◆ get_symfile_segment_data()

struct symfile_segment_data* get_symfile_segment_data | ( | bfd * | abfd | ) |

Definition at line 3668 of file symfile.c.

References find_sym_fns(), and sym_fns::sym_segments.

Referenced by get_offsets(), solib_target_relocate_section_addresses(), and symfile_find_segment_sections().

## ◆ increment_reading_symtab()

scoped_restore_tmpl<int> increment_reading_symtab | ( | void |  | ) |

Definition at line 185 of file symfile.c.

References currently_reading_symtab, gdb_assert, and make_scoped_restore().

Referenced by dw2_instantiate_symtab(), and psymtab_to_symtab().

## ◆ info_ext_lang_command()

static void info_ext_lang_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 2756 of file symfile.c.

References _, filename_language_table, language_str(), and printf_filtered().

Referenced by _initialize_symfile().

## ◆ init_entry_point_info()

static void init_entry_point_info | ( | struct objfile * | objfile | ) |
| static

Definition at line 876 of file symfile.c.

References ALL_OBJFILE_OSECTIONS, current_target, objfile_per_bfd_storage::ei, entry_info::entry_point, entry_info::entry_point_p, gdb_bfd_section_index(), gdbarch_addr_bits_remove(), gdbarch_convert_from_func_ptr_addr(), get_objfile_arch(), entry_info::initialized, objfile::obfd, objfile::per_bfd, SECT_OFF_TEXT, obj_section::the_bfd_section, and entry_info::the_bfd_section_index.

Referenced by reread_symbols(), and syms_from_objfile().

## ◆ init_objfile_sect_indices()

static void init_objfile_sect_indices | ( | struct objfile * | objfile | ) |
| static

Definition at line 329 of file symfile.c.

References ANOFFSET, objfile::num_sections, objfile::obfd, objfile::sect_index_bss, objfile::sect_index_data, objfile::sect_index_rodata, objfile::sect_index_text, objfile::section_offsets, and symfile_find_segment_sections().

Referenced by default_symfile_offsets().

## ◆ list_overlays_command()

static void list_overlays_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3221 of file symfile.c.

References _, ALL_OBJSECTIONS, fputs_filtered(), gdb_stdout, get_objfile_arch(), name, objfile::obfd, objfile::objfile(), overlay_debugging, paddress(), printf_filtered(), puts_filtered(), section_is_mapped(), size, and obj_section::the_bfd_section.

Referenced by _initialize_symfile().

## ◆ load_command()

static void load_command | ( | const char * | arg,
|  | int | from_tty
| ) |  |
| static

Definition at line 1822 of file symfile.c.

References cleanup::arg, do_cleanups(), dont_repeat(), get_exec_file(), make_cleanup(), null_cleanup(), overlay_cache_invalid, reopen_exec_file(), reread_symbols(), target_load(), xfree(), and xmalloc().

Referenced by _initialize_symfile().

## ◆ load_progress()

static void load_progress | ( | ULONGEST | bytes,
|  | void * | untyped_arg
| ) |  |
| static

Definition at line 1930 of file symfile.c.

References _, load_progress_section_data::buffer, check(), check_quit_flag(), load_progress_section_data::cumulative, current_uiout, load_progress_data::data_count, deprecated_show_load_progress, deprecated_ui_load_progress_hook, error(), hex_string(), load_progress_section_data::lma, paddress(), load_progress_section_data::section_name, load_progress_section_data::section_sent, load_progress_section_data::section_size, target_gdbarch(), target_read_memory(), load_progress_data::total_size, validate_download, and load_progress_data::write_count.

Referenced by generic_load().

## ◆ load_section_callback()

static void load_section_callback | ( | bfd * | abfd,
|  | asection * | asec,
|  | void * | data
| ) |  |
| static

Definition at line 1994 of file symfile.c.

References memory_write_request::baton, memory_write_request::begin, load_progress_section_data::buffer, load_progress_section_data::cumulative, memory_write_request::data, memory_write_request::end, load_progress_section_data::lma, load_section_data::load_offset, memset(), load_section_data::progress_data, load_progress_section_data::section_name, load_progress_section_data::section_size, size, VEC_safe_push, XCNEW, and xmalloc().

Referenced by generic_load().

## ◆ map_overlay_command()

static void map_overlay_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3263 of file symfile.c.

References _, ALL_OBJSECTIONS, error(), info_verbose, objfile::obfd, objfile::objfile(), overlay_debugging, obj_section::ovly_mapped, printf_unfiltered(), section_is_overlay(), sections_overlap(), and obj_section::the_bfd_section.

Referenced by _initialize_symfile().

## ◆ map_symbol_filenames()

void map_symbol_filenames | ( | symbol_filename_ftype * | fun,
|  | void * | data,
|  | int | need_fullname
| ) |  |

Definition at line 3826 of file symfile.c.

References ALL_OBJFILES, quick_symbol_functions::map_symbol_filenames, objfile::objfile(), sym_fns::qf, and objfile::sf.

Referenced by info_sources_command(), make_source_files_completion_list(), and mi_cmd_file_list_exec_source_files().

## ◆ overlay_auto_command()

static void overlay_auto_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3338 of file symfile.c.

References _, enable_overlay_breakpoints(), info_verbose, overlay_debugging, ovly_auto, and printf_unfiltered().

Referenced by _initialize_symfile().

## ◆ overlay_command()

static void overlay_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3390 of file symfile.c.

References all_commands, gdb_stdout, help_list(), overlaylist, and printf_unfiltered().

Referenced by _initialize_symfile().

## ◆ overlay_invalidate_all()

static void overlay_invalidate_all | ( | void |  | ) |
| static

Definition at line 2997 of file symfile.c.

References ALL_OBJSECTIONS, objfile::objfile(), obj_section::ovly_mapped, and section_is_overlay().

Referenced by section_is_mapped().

## ◆ overlay_load_command()

static void overlay_load_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3373 of file symfile.c.

References _, error(), gdbarch_overlay_update(), gdbarch_overlay_update_p(), and get_current_arch().

Referenced by _initialize_symfile().

## ◆ overlay_manual_command()

static void overlay_manual_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3351 of file symfile.c.

References _, disable_overlay_breakpoints(), info_verbose, overlay_debugging, ovly_on, and printf_unfiltered().

Referenced by _initialize_symfile().

## ◆ overlay_mapped_address()

CORE_ADDR overlay_mapped_address | ( | CORE_ADDR | pc,
|  | struct obj_section * | section
| ) |  |

Definition at line 3125 of file symfile.c.

References pc_in_unmapped_range(), section_is_overlay(), and obj_section::the_bfd_section.

Referenced by build_address_symbolic(), find_pc_line(), find_pc_partial_function_gnu_ifunc(), info_symbol_command(), memory_xfer_partial_1(), and skip_prologue_sal().

## ◆ overlay_off_command()

static void overlay_off_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3364 of file symfile.c.

References _, disable_overlay_breakpoints(), info_verbose, overlay_debugging, ovly_off, and printf_unfiltered().

Referenced by _initialize_symfile().

## ◆ overlay_unmapped_address()

CORE_ADDR overlay_unmapped_address | ( | CORE_ADDR | pc,
|  | struct obj_section * | section
| ) |  |

Definition at line 3107 of file symfile.c.

References pc_in_mapped_range(), section_is_overlay(), and obj_section::the_bfd_section.

Referenced by find_pc_partial_function_gnu_ifunc(), info_address_command(), insert_bp_location(), skip_prologue_sal(), and symbol_overlayed_address().

## ◆ pc_in_mapped_range()

CORE_ADDR pc_in_mapped_range | ( | CORE_ADDR | pc,
|  | struct obj_section * | section
| ) |  |

Definition at line 3076 of file symfile.c.

References obj_section_addr, obj_section_endaddr, and section_is_overlay().

Referenced by find_pc_mapped_section(), find_pc_overlay(), and overlay_unmapped_address().

## ◆ pc_in_unmapped_range()

CORE_ADDR pc_in_unmapped_range | ( | CORE_ADDR | pc,
|  | struct obj_section * | section
| ) |  |

Definition at line 3053 of file symfile.c.

References objfile::obfd, obj_section_offset, obj_section::objfile, offset, section_is_overlay(), size, and obj_section::the_bfd_section.

Referenced by build_address_symbolic(), find_pc_line(), find_pc_overlay(), find_pc_partial_function_gnu_ifunc(), info_symbol_command(), memory_xfer_partial_1(), and overlay_mapped_address().

## ◆ place_section()

static void place_section | ( | bfd * | abfd,
|  | asection * | sect,
|  | void * | obj
| ) |  |
| static

Definition at line 399 of file symfile.c.

References gdb_bfd_section_index(), place_section_arg::lowest, place_section_arg::offsets, and section_offsets::offsets.

Referenced by default_symfile_offsets().

## ◆ print_symbol_loading_p()

int print_symbol_loading_p | ( | int | from_tty,
|  | int | exec,
|  | int | full
| ) |  |

Definition at line 161 of file symfile.c.

References info_verbose, print_symbol_loading, print_symbol_loading_brief, print_symbol_loading_full, and print_symbol_loading_off.

Referenced by reload_shared_libraries_1(), solib_add(), and symbol_file_add_with_addrs().

## ◆ print_transfer_performance()

static void print_transfer_performance | ( | struct ui_file * | stream,
|  | unsigned long | data_count,
|  | unsigned long | write_count,
|  | std::chrono::steady_clock::duration | d
| ) |  |
| static

Definition at line 2151 of file symfile.c.

References current_uiout, ui_out::field_fmt(), ui_out::is_mi_like_p(), rate, and ui_out::text().

Referenced by generic_load().

## ◆ read_symbols()

static void read_symbols | ( | struct objfile * | objfile,
|  | symfile_add_flags | add_flags
| ) |  |
| static

Definition at line 846 of file symfile.c.

References find_separate_debug_file_in_section(), gdb::ref_ptr< T, Policy >::get(), objfile_per_bfd_storage::minsyms_read, objfile_has_partial_symbols(), objfile::original_name, objfile::per_bfd, require_partial_symbols(), objfile::separate_debug_objfile, objfile::separate_debug_objfile_backlink, objfile::sf, sym_fns::sym_read, symbol_file_add_separate(), and SYMFILE_NO_READ.

Referenced by reread_symbols(), and syms_from_objfile_1().

## ◆ read_target_long_array()

static void read_target_long_array | ( | CORE_ADDR | memaddr,
|  | unsigned int * | myaddr,
|  | int | len,
|  | int | size,
|  | enum bfd_endian | byte_order
| ) |  |
| static

Definition at line 3455 of file symfile.c.

References extract_unsigned_integer(), read_memory(), and size.

Referenced by simple_overlay_update_1(), and simple_read_overlay_table().

## ◆ relative_addr_info_to_section_offsets()

void relative_addr_info_to_section_offsets | ( | struct section_offsets * | section_offsets,
|  | int | num_sections,
|  | const struct section_addr_info * | addrs
| ) |  |

Definition at line 464 of file symfile.c.

References other_sections::addr, memset(), section_addr_info::num_sections, section_offsets::offsets, section_addr_info::other, other_sections::sectindex, and SIZEOF_N_SECTION_OFFSETS.

Referenced by default_symfile_offsets(), and objfile_relocate().

## ◆ remove_symbol_file_command()

static void remove_symbol_file_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 2344 of file symfile.c.

References _, ALL_OBJFILES, gdb::argv, clear_symtab_users(), current_program_space, dont_repeat(), error(), objfile::flags, is_addr_in_objfile(), OBJF_SHARED, OBJF_USERLOADED, objfile_name(), parse_and_eval_address(), objfile::pspace, and query().

Referenced by _initialize_symfile().

## ◆ reread_symbols()

void reread_symbols | ( | void |  | ) |

Definition at line 2411 of file symfile.c.

References _, build_objfile_section_table(), clear_complaints(), clear_symtab_users(), clear_symtab_users_cleanup(), objfile::compunit_symtabs, discard_cleanups(), error(), exec_bfd, exec_file_attach(), find_sym_fns(), objfile::flags, free_objfile_separate_debug(), objfile::free_psymtabs, gdb_bfd_open(), objfile::global_psymbols, gnutarget, init_entry_point_info(), make_cleanup(), objfile::mtime, objfile::next, objfile::num_sections, objfile::obfd, object_files, OBJF_PSYMTABS_READ, objfile::objfile(), objfile_has_symbols(), objfile_name(), objfile_set_sym_fns(), objfiles_changed(), observer_notify_executable_changed(), observer_notify_new_objfile(), section_offsets::offsets, objfile::original_name, preserve_values(), printf_unfiltered(), psymbol_bcache_free(), psymbol_bcache_init(), objfile::psymbol_cache, objfile::psymtabs, objfile::psymtabs_addrmap, read_symbols(), reinit_frame_cache(), gdb::ref_ptr< T, Policy >::release(), objfile::section_offsets, objfile::sections, objfile::separate_debug_objfile_backlink, set_objfile_per_bfd(), objfile::sf, SIZEOF_N_SECTION_OFFSETS, objfile::static_psymbols, sym_fns::sym_finish, sym_fns::sym_init, sym_fns::sym_new_init, symfile_complaints, symfile_objfile, objfile::template_symbols, terminate_minimal_symbol_table(), wrap_here(), and xfree().

Referenced by load_command(), remote_open_1(), run_command_1(), and setup_inferior().

## ◆ section_is_mapped()

int section_is_mapped | ( | struct obj_section * | osect | ) |

Definition at line 3017 of file symfile.c.

References gdbarch_overlay_update(), gdbarch_overlay_update_p(), get_objfile_arch(), obj_section::objfile, overlay_cache_invalid, overlay_debugging, overlay_invalidate_all(), ovly_auto, obj_section::ovly_mapped, ovly_off, ovly_on, and section_is_overlay().

Referenced by bkpt_breakpoint_hit(), bp_location_inserted_here_p(), breakpoint_here_p(), breakpoint_in_range_p(), find_pc_mapped_section(), find_pc_overlay(), info_symbol_command(), insert_bp_location(), is_addr_in_objfile(), jump_command(), list_overlays_command(), remove_breakpoint_1(), skip_prologue_sal(), and symbol_overlayed_address().

## ◆ section_is_overlay()

int section_is_overlay | ( | struct obj_section * | section | ) |

Definition at line 2978 of file symfile.c.

References overlay_debugging, and obj_section::the_bfd_section.

Referenced by bkpt_breakpoint_hit(), bp_location_inserted_here_p(), breakpoint_here_p(), breakpoint_in_range_p(), clear_command(), find_pc_overlay(), info_address_command(), info_symbol_command(), insert_bp_location(), is_addr_in_objfile(), jump_command(), map_overlay_command(), overlay_invalidate_all(), overlay_mapped_address(), overlay_unmapped_address(), pc_in_mapped_range(), pc_in_unmapped_range(), remove_breakpoint_1(), section_is_mapped(), simple_overlay_update(), skip_prologue_sal(), spu_overlay_update(), and symbol_overlayed_address().

## ◆ sections_overlap()

static int sections_overlap | ( | struct obj_section * | a,
|  | struct obj_section * | b
| ) |  |
| static

Definition at line 3092 of file symfile.c.

References obj_section_addr, and obj_section_endaddr.

Referenced by map_overlay_command().

## ◆ separate_debug_file_exists()

static int separate_debug_file_exists | ( | const char * | name,
|  | unsigned long | crc,
|  | struct objfile * | parent_objfile
| ) |  |
| static

Definition at line 1336 of file symfile.c.

References _, gdb_bfd_crc(), gdb_bfd_open(), gdb::ref_ptr< T, Policy >::get(), gnutarget, name, objfile::obfd, objfile_name(), printf_unfiltered(), separate_debug_file_debug, and warning().

Referenced by find_separate_debug_file().

## ◆ set_ext_lang_command()

static void set_ext_lang_command | ( | const char * | args,
|  | int | from_tty,
|  | struct cmd_list_element * | e
| ) |  |
| static

Definition at line 2697 of file symfile.c.

References _, add_filename_language(), error(), ext_args, filename_language_table, language_enum(), and skip_spaces().

Referenced by _initialize_symfile().

## ◆ set_initial_language()

void set_initial_language | ( | void |  | ) |

Definition at line 1690 of file symfile.c.

References current_language, expected_language, language_c, language_unknown, lookup_symbol(), main_language(), main_name(), name, set_language(), block_symbol::symbol, SYMBOL_LANGUAGE, and VAR_DOMAIN.

Referenced by set_language_command(), and symbol_file_add_main_1().

## ◆ show_debug_file_directory()

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

Definition at line 1416 of file symfile.c.

References _, and fprintf_filtered().

Referenced by _initialize_symfile().

## ◆ show_ext_args()

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

Definition at line 2687 of file symfile.c.

References _, and fprintf_filtered().

Referenced by _initialize_symfile().

## ◆ simple_free_overlay_table()

static void simple_free_overlay_table | ( | void |  | ) |
| static

Definition at line 3442 of file symfile.c.

References cache_novlys, cache_ovly_table, cache_ovly_table_base, and xfree().

Referenced by simple_read_overlay_table().

## ◆ simple_overlay_update()

void simple_overlay_update | ( | struct obj_section * | osect | ) |

Definition at line 3559 of file symfile.c.

References _, ALL_OBJSECTIONS, BMSYMBOL_VALUE_ADDRESS, cache_novlys, cache_ovly_table, cache_ovly_table_base, error(), LMA, lookup_minimal_symbol(), MAPPED, bound_minimal_symbol::minsym, objfile::objfile(), obj_section::ovly_mapped, section_is_overlay(), simple_overlay_update_1(), simple_read_overlay_table(), obj_section::the_bfd_section, and VMA.

Referenced by ft32_gdbarch_init(), m32r_gdbarch_init(), and moxie_gdbarch_init().

## ◆ simple_overlay_update_1()

static int simple_overlay_update_1 | ( | struct obj_section * | osect | ) |
| static

Definition at line 3523 of file symfile.c.

References gdbarch::byte_order, cache_novlys, cache_ovly_table, cache_ovly_table_base, gdbarch_byte_order(), gdbarch_long_bit(), get_objfile_arch(), LMA, MAPPED, obj_section::objfile, obj_section::ovly_mapped, read_target_long_array(), TARGET_CHAR_BIT, obj_section::the_bfd_section, and VMA.

Referenced by simple_overlay_update().

## ◆ simple_read_overlay_table()

static int simple_read_overlay_table | ( | void |  | ) |
| static

Definition at line 3471 of file symfile.c.

References _, BMSYMBOL_VALUE_ADDRESS, gdbarch::byte_order, cache_novlys, cache_ovly_table, cache_ovly_table_base, error(), gdbarch_byte_order(), gdbarch_long_bit(), get_objfile_arch(), lookup_bound_minimal_symbol(), lookup_minimal_symbol(), bound_minimal_symbol::minsym, bound_minimal_symbol::objfile, read_memory_integer(), read_target_long_array(), simple_free_overlay_table(), TARGET_CHAR_BIT, and xmalloc().

Referenced by simple_overlay_update().

## ◆ symbol_file_add()

struct objfile* symbol_file_add | ( | const char * | name,
|  | symfile_add_flags | add_flags,
|  | struct section_addr_info * | addrs,
|  | objfile_flags | flags
| ) |  |

Definition at line 1270 of file symfile.c.

References flags, gdb::ref_ptr< T, Policy >::get(), name, symbol_file_add_from_bfd(), and symfile_bfd_open().

Referenced by add_symbol_file_command(), and symbol_file_add_main_1().

## ◆ symbol_file_add_from_bfd()

struct objfile* symbol_file_add_from_bfd | ( | bfd * | abfd,
|  | const char * | name,
|  | symfile_add_flags | add_flags,
|  | struct section_addr_info * | addrs,
|  | objfile_flags | flags,
|  | struct objfile * | parent
| ) |  |

Definition at line 1257 of file symfile.c.

References flags, name, and symbol_file_add_with_addrs().

Referenced by compile_object_load(), jit_bfd_try_read_symtab(), macho_add_oso_symfile(), solib_read_symbols(), spu_symbol_file_add_from_memory(), symbol_file_add(), and symbol_file_add_from_memory().

## ◆ symbol_file_add_main()

void symbol_file_add_main | ( | const char * | args,
|  | symfile_add_flags | add_flags
| ) |  |

Definition at line 1288 of file symfile.c.

References symbol_file_add_main_1().

Referenced by add_inferior_command(), clone_program_space(), open_symbol_file_object(), symbol_file_add_main_adapter(), and try_open_exec_file().

## ◆ symbol_file_add_main_1()

static void symbol_file_add_main_1 | ( | const char * | args,
|  | symfile_add_flags | add_flags,
|  | objfile_flags | flags
| ) |  |
| static

Definition at line 1294 of file symfile.c.

References current_inferior(), flags, reinit_frame_cache(), set_initial_language(), symbol_file_add(), inferior::symfile_flags, SYMFILE_MAINLINE, and SYMFILE_NO_READ.

Referenced by symbol_file_add_main(), and symbol_file_command().

## ◆ symbol_file_add_separate()

void symbol_file_add_separate | ( | bfd * | bfd,
|  | const char * | name,
|  | symfile_add_flags | symfile_flags,
|  | struct objfile * | objfile
| ) |  |

Definition at line 1230 of file symfile.c.

References build_section_addr_info_from_objfile(), do_cleanups(), objfile::flags, make_cleanup_free_section_addr_info(), name, OBJF_READNOW, OBJF_REORDERED, OBJF_SHARED, OBJF_USERLOADED, and symbol_file_add_with_addrs().

Referenced by coff_symfile_read(), elf_symfile_read(), macho_symfile_read(), objfpy_add_separate_debug_file(), and read_symbols().

## ◆ symbol_file_add_with_addrs()

static struct objfile* symbol_file_add_with_addrs | ( | bfd * | abfd,
|  | const char * | name,
|  | symfile_add_flags | add_flags,
|  | struct section_addr_info * | addrs,
|  | objfile_flags | flags,
|  | struct objfile * | parent
| ) |  |
| static

Definition at line 1118 of file symfile.c.

References _, add_separate_debug_objfile(), deprecated_post_add_symbol_hook, deprecated_pre_add_symbol_hook, error(), quick_symbol_functions::expand_all_symtabs, finish_new_objfile(), objfile::flags, flags, gdb_flush(), gdb_stdout, have_full_symbols(), have_partial_symbols(), name, OBJF_MAINLINE, OBJF_READNEVER, OBJF_READNOW, objfile::objfile(), objfile_has_symbols(), observer_notify_new_objfile(), print_symbol_loading_p(), printf_unfiltered(), sym_fns::qf, query(), readnever_symbol_files, readnow_symbol_files, objfile::sf, SYMFILE_MAINLINE, SYMFILE_NO_READ, SYMFILE_VERBOSE, syms_from_objfile(), and wrap_here().

Referenced by symbol_file_add_from_bfd(), and symbol_file_add_separate().

## ◆ symbol_file_clear()

void symbol_file_clear | ( | int | from_tty | ) |

Definition at line 1310 of file symfile.c.

References _, error(), free_all_objfiles(), gdb_assert, have_full_symbols(), have_partial_symbols(), no_shared_libraries(), objfile_name(), printf_unfiltered(), query(), and symfile_objfile.

Referenced by symbol_file_command().

## ◆ symbol_file_command()

void symbol_file_command | ( | const char * | args,
|  | int | from_tty
| ) |  |

Definition at line 1629 of file symfile.c.

References _, dont_repeat(), error(), flags, name, OBJF_READNEVER, OBJF_READNOW, OBJF_USERLOADED, symbol_file_add_main_1(), symbol_file_clear(), SYMFILE_VERBOSE, and validate_readnow_readnever().

Referenced by _initialize_symfile(), and file_command().

## ◆ symbol_overlayed_address()

CORE_ADDR symbol_overlayed_address | ( | CORE_ADDR | address,
|  | struct obj_section * | section
| ) |  |

Definition at line 3143 of file symfile.c.

References overlay_debugging, overlay_unmapped_address(), section_is_mapped(), and section_is_overlay().

Referenced by default_read_var_value(), and find_minsym_type_and_address().

## ◆ symfile_bfd_open()

gdb_bfd_ref_ptr symfile_bfd_open | ( | const char * | name | ) |

Definition at line 1719 of file symfile.c.

References _, do_cleanups(), error(), gdb_bfd_has_target_filename(), gdb_bfd_open(), gdb::ref_ptr< T, Policy >::get(), gnutarget, is_target_filename(), make_cleanup(), name, null_cleanup(), O_BINARY, openp(), OPF_RETURN_REALPATH, OPF_TRY_CWD_FIRST, perror_with_name(), and xfree().

Referenced by coff_symfile_read(), elf_symfile_read(), objfpy_add_separate_debug_file(), and symbol_file_add().

## ◆ symfile_dummy_outputs()

static void symfile_dummy_outputs | ( | bfd * | abfd,
|  | asection * | sectp,
|  | void * | dummy
| ) |  |
| static

Definition at line 3616 of file symfile.c.

Referenced by default_symfile_relocate().

## ◆ symfile_find_segment_sections()

static void symfile_find_segment_sections | ( | struct objfile * | objfile | ) |
| static

Definition at line 3745 of file symfile.c.

References free_symfile_segment_data(), get_symfile_segment_data(), symfile_segment_data::num_segments, objfile::obfd, objfile::sect_index_bss, objfile::sect_index_data, objfile::sect_index_rodata, objfile::sect_index_text, and symfile_segment_data::segment_info.

Referenced by init_objfile_sect_indices().

## ◆ symfile_free_objfile()

static void symfile_free_objfile | ( | struct objfile * | objfile | ) |
| static

Definition at line 3790 of file symfile.c.

References remove_target_sections().

Referenced by _initialize_symfile().

## ◆ symfile_map_offsets_to_segments()

int symfile_map_offsets_to_segments | ( | bfd * | abfd,
|  | const struct symfile_segment_data * | data,
|  | struct section_offsets * | offsets,
|  | int | num_segment_bases,
|  | const CORE_ADDR * | segment_bases
| ) |  |

Definition at line 3703 of file symfile.c.

References gdb_assert, symfile_segment_data::num_segments, section_offsets::offsets, symfile_segment_data::segment_bases, and symfile_segment_data::segment_info.

Referenced by get_offsets(), and solib_target_relocate_section_addresses().

## ◆ symfile_relocate_debug_section()

bfd_byte* symfile_relocate_debug_section | ( | struct objfile * | objfile,
|  | asection * | sectp,
|  | bfd_byte * | buf
| ) |  |

Definition at line 3659 of file symfile.c.

References gdb_assert, bound_minimal_symbol::objfile, objfile::sf, and sym_fns::sym_relocate.

Referenced by dbx_read_symtab(), dwarf2_read_section(), and elfstab_build_psymtabs().

## ◆ syms_from_objfile()

static void syms_from_objfile | ( | struct objfile * | objfile,
|  | struct section_addr_info * | addrs,
|  | symfile_add_flags | add_flags
| ) |  |
| static

Definition at line 1063 of file symfile.c.

References init_entry_point_info(), and syms_from_objfile_1().

Referenced by symbol_file_add_with_addrs().

## ◆ syms_from_objfile_1()

static void syms_from_objfile_1 | ( | struct objfile * | objfile,
|  | struct section_addr_info * | addrs,
|  | symfile_add_flags | add_flags
| ) |  |
| static

Definition at line 970 of file symfile.c.

References addr_info_make_relative(), alloc_section_addr_info(), clear_complaints(), clear_symtab_users_cleanup(), discard_cleanups(), find_sym_fns(), gdb_assert, gdb_bfd_count_sections(), make_cleanup(), memset(), null_cleanup(), section_addr_info::num_sections, objfile::num_sections, objfile::obfd, objfile_set_sym_fns(), read_symbols(), objfile::section_offsets, objfile::sf, size, SIZEOF_N_SECTION_OFFSETS, sym_fns::sym_init, sym_fns::sym_new_init, sym_fns::sym_offsets, symfile_complaints, SYMFILE_MAINLINE, symfile_objfile, SYMFILE_VERBOSE, and xfree().

Referenced by syms_from_objfile().

## ◆ terminate_after_last_dir_separator()

static void terminate_after_last_dir_separator | ( | char * | path | ) |
| static

Definition at line 1533 of file symfile.c.

Referenced by find_separate_debug_file_by_debuglink().

## ◆ unmap_overlay_command()

static void unmap_overlay_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 3308 of file symfile.c.

References _, ALL_OBJSECTIONS, error(), objfile::obfd, objfile::objfile(), overlay_debugging, obj_section::ovly_mapped, and obj_section::the_bfd_section.

Referenced by _initialize_symfile().

## ◆ validate_readnow_readnever()

static void validate_readnow_readnever | ( | objfile_flags | flags | ) |
| static

Definition at line 1608 of file symfile.c.

References _, error(), flags, OBJF_READNEVER, and OBJF_READNOW.

Referenced by add_symbol_file_command(), and symbol_file_command().

## Variable Documentation

## ◆ auto_solib_add

int auto_solib_add = 1

Definition at line 149 of file symfile.c.

Referenced by _initialize_solib(), enable_break(), handle_solib_event(), post_create_inferior(), reload_shared_libraries(), reload_shared_libraries_1(), remote_start_remote(), and svr4_fetch_objfile_link_map().

## ◆ cache_novlys

unsigned cache_novlys = 0
| static

Definition at line 3432 of file symfile.c.

Referenced by simple_free_overlay_table(), simple_overlay_update(), simple_overlay_update_1(), and simple_read_overlay_table().

## ◆ cache_ovly_table

unsigned(* cache_ovly_table)[4] = 0
| static

Definition at line 3431 of file symfile.c.

Referenced by simple_free_overlay_table(), simple_overlay_update(), simple_overlay_update_1(), and simple_read_overlay_table().

## ◆ cache_ovly_table_base

CORE_ADDR cache_ovly_table_base = 0
| static

Definition at line 3433 of file symfile.c.

Referenced by simple_free_overlay_table(), simple_overlay_update(), simple_overlay_update_1(), and simple_read_overlay_table().

## ◆ currently_reading_symtab

int currently_reading_symtab = 0

Definition at line 179 of file symfile.c.

Referenced by check_typedef(), and increment_reading_symtab().

## ◆ debug_file_directory

char* debug_file_directory = NULL

Search path for separate debug files.

Definition at line 1414 of file symfile.c.

Referenced by _initialize_symfile(), build_id_to_debug_bfd(), captured_main_1(), find_separate_debug_file(), open_dwo_file(), open_dwp_file(), try_open_dwop_file(), and VEC().

## ◆ deprecated_post_add_symbol_hook

void(* deprecated_post_add_symbol_hook) (void)

Definition at line 78 of file symfile.c.

Referenced by symbol_file_add_with_addrs().

## ◆ deprecated_pre_add_symbol_hook

void(* deprecated_pre_add_symbol_hook) (const char *)

Definition at line 77 of file symfile.c.

Referenced by symbol_file_add_with_addrs().

## ◆ deprecated_show_load_progress

void(* deprecated_show_load_progress) (const char *section, unsigned long section_sent, unsigned long section_size, unsigned long total_sent, unsigned long total_size)

Definition at line 72 of file symfile.c.

Referenced by load_progress(), and mi_interp::resume().

## ◆ deprecated_ui_load_progress_hook

int(* deprecated_ui_load_progress_hook) (const char *section, unsigned long num)

Definition at line 70 of file symfile.c.

Referenced by load_progress().

## ◆ ext_args

char* ext_args
| static

Definition at line 2685 of file symfile.c.

Referenced by _initialize_symfile(), and set_ext_lang_command().

## ◆ filename_language_table

std::vector<filename_language> filename_language_table
| static

Definition at line 2675 of file symfile.c.

Referenced by add_filename_language(), deduce_language_from_filename(), info_ext_lang_command(), and set_ext_lang_command().

## ◆ overlay_cache_invalid

int overlay_cache_invalid = 0

Definition at line 2971 of file symfile.c.

Referenced by fetch_inferior_event(), load_command(), prepare_for_detach(), section_is_mapped(), wait_for_inferior(), and wait_one().

## ◆ overlay_debugging

enum overlay_debugging_state overlay_debugging = ovly_off

Definition at line 2970 of file symfile.c.

Referenced by agent_command_1(), bkpt_breakpoint_hit(), bp_location_inserted_here_p(), breakpoint_has_pc(), breakpoint_here_p(), breakpoint_in_range_p(), build_address_symbolic(), create_overlay_event_breakpoint(), default_read_var_value(), find_minsym_type_and_address(), find_pc_mapped_section(), find_pc_overlay(), find_pc_sect_psymtab(), insert_bp_location(), insert_section_p(), list_overlays_command(), maint_agent_printf_command(), map_overlay_command(), memory_xfer_partial_1(), overlay_auto_command(), overlay_manual_command(), overlay_off_command(), remove_breakpoint_1(), section_is_mapped(), section_is_overlay(), symbol_overlayed_address(), unmap_overlay_command(), and update_global_location_list().

## ◆ overlaylist

struct cmd_list_element* overlaylist
| static

Definition at line 3387 of file symfile.c.

Referenced by _initialize_symfile(), and overlay_command().

## ◆ print_symbol_loading

const char* print_symbol_loading = print_symbol_loading_full
| static

Definition at line 137 of file symfile.c.

Referenced by _initialize_symfile(), and print_symbol_loading_p().

## ◆ print_symbol_loading_brief

const char print_symbol_loading_brief[] = "brief"

Definition at line 128 of file symfile.c.

Referenced by print_symbol_loading_p().

## ◆ print_symbol_loading_enums

const char* print_symbol_loading_enums[]
| static

Initial value:
=
{
print_symbol_loading_off,
print_symbol_loading_brief,
print_symbol_loading_full,
NULL
}
print_symbol_loading_off
const char print_symbol_loading_off[]
Definition: symfile.c:127
print_symbol_loading_brief
const char print_symbol_loading_brief[]
Definition: symfile.c:128
print_symbol_loading_full
const char print_symbol_loading_full[]
Definition: symfile.c:129

Definition at line 130 of file symfile.c.

Referenced by _initialize_symfile().

## ◆ print_symbol_loading_full

const char print_symbol_loading_full[] = "full"

Definition at line 129 of file symfile.c.

Referenced by print_symbol_loading_p().

## ◆ print_symbol_loading_off

const char print_symbol_loading_off[] = "off"

Definition at line 127 of file symfile.c.

Referenced by print_symbol_loading_p().

## ◆ readnever_symbol_files

int readnever_symbol_files

Definition at line 84 of file symfile.c.

Referenced by captured_main_1(), symbol_file_add_with_addrs(), and validate_readnow_readnever().

## ◆ readnow_symbol_files

int readnow_symbol_files

Definition at line 83 of file symfile.c.

Referenced by captured_main_1(), symbol_file_add_with_addrs(), and validate_readnow_readnever().

## ◆ separate_debug_file_debug

int separate_debug_file_debug = 0

Definition at line 1333 of file symfile.c.

Referenced by _initialize_symfile(), build_id_to_debug_bfd(), find_separate_debug_file(), find_separate_debug_file_by_buildid(), and separate_debug_file_exists().

## ◆ symtab_fns

std::vector<registered_sym_fns> symtab_fns
| static

Definition at line 123 of file symfile.c.

Referenced by add_symtab_fns(), and find_sym_fns().

## ◆ validate_download

int validate_download = 0
| static

Definition at line 1888 of file symfile.c.

Referenced by load_progress().