20#if !defined (SYMFILE_H)
29#include "gdbsupport/function-view.h"
112 const std::vector<std::unique_ptr<probe>> &(*sym_get_probes)
171 bfd_byte *(*sym_relocate) (
struct objfile *, asection *sectp, bfd_byte *buf);
202 asection *sectp, bfd_byte *buf);
206 ATTRIBUTE_NONNULL (1);
210static inline struct symtab *
218 ATTRIBUTE_NONNULL (1);
237 const char *, symfile_add_flags,
239 objfile_flags,
struct objfile *parent);
242 symfile_add_flags,
struct objfile *);
330 symfile_add_flags add_flags);
344 int,
const CORE_ADDR *);
350 (gdb::function_view<expand_symtabs_file_matcher_ftype> file_matcher,
352 gdb::function_view<expand_symtabs_symbol_matcher_ftype> symbol_matcher,
353 gdb::function_view<expand_symtabs_exp_notify_ftype> expansion_notify,
354 block_search_flags search_flags,
364extern void generic_load (
const char *args,
int from_tty);
gdb::ref_ptr< struct bfd, gdb_bfd_ref_policy > gdb_bfd_ref_ptr
other_sections(CORE_ADDR addr_, std::string &&name_, int sectindex_)
other_sections(other_sections &&other)=default
DISABLE_COPY_AND_ASSIGN(other_sections)
void(* sym_read)(struct objfile *, symfile_add_flags)
void(* sym_read_linetable)(struct objfile *)
void(* sym_new_init)(struct objfile *)
void(* sym_init)(struct objfile *)
symfile_segment_data_up(* sym_segments)(bfd *abfd)
const struct sym_probe_fns * sym_probe_fns
void(* sym_offsets)(struct objfile *, const section_addr_info &)
void(* sym_finish)(struct objfile *)
segment(CORE_ADDR base, CORE_ADDR size)
std::vector< segment > segments
std::vector< int > segment_info
int section_is_overlay(struct obj_section *)
bool separate_debug_file_debug
bfd_byte * symfile_relocate_debug_section(struct objfile *, asection *, bfd_byte *)
void default_symfile_offsets(struct objfile *objfile, const section_addr_info &)
gdb_bfd_ref_ptr symfile_bfd_open_no_error(const char *) noexcept
std::unique_ptr< symfile_segment_data > symfile_segment_data_up
void add_filename_language(const char *ext, enum language lang)
std::vector< other_sections > section_addr_info
int get_section_index(struct objfile *, const char *)
void simple_overlay_update(struct obj_section *)
gdb_bfd_ref_ptr symfile_bfd_open(const char *)
enum language deduce_language_from_filename(const char *)
section_addr_info build_section_addr_info_from_objfile(const struct objfile *objfile)
CORE_ADDR symbol_overlayed_address(CORE_ADDR, struct obj_section *)
std::string find_separate_debug_file_by_debuglink(struct objfile *objfile, deferred_warnings *warnings)
void symbol_file_clear(int from_tty)
void add_compunit_symtab_to_objfile(struct compunit_symtab *cu)
CORE_ADDR overlay_unmapped_address(CORE_ADDR, struct obj_section *)
bool pc_in_unmapped_range(CORE_ADDR, struct obj_section *)
int section_is_mapped(struct obj_section *)
void add_symtab_fns(enum bfd_flavour flavour, const struct sym_fns *)
void symbol_file_add_main(const char *args, symfile_add_flags add_flags)
void set_initial_language(void)
section_addr_info build_section_addr_info_from_section_table(const target_section_table &table)
struct objfile * symbol_file_add_from_bfd(const gdb_bfd_ref_ptr &, const char *, symfile_add_flags, section_addr_info *, objfile_flags, struct objfile *parent)
bool 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, block_search_flags search_flags, enum search_domain kind)
void symbol_file_add_separate(const gdb_bfd_ref_ptr &, const char *, symfile_add_flags, struct objfile *)
struct obj_section * find_pc_overlay(CORE_ADDR)
struct compunit_symtab * allocate_compunit_symtab(struct objfile *, const char *) ATTRIBUTE_NONNULL(1)
int print_symbol_loading_p(int from_tty, int mainline, int full)
int readnever_symbol_files
void generic_load(const char *args, int from_tty)
void addr_info_make_relative(section_addr_info *addrs, bfd *abfd)
int overlay_cache_invalid
struct objfile * symbol_file_add(const char *, symfile_add_flags, section_addr_info *, objfile_flags)
symfile_segment_data_up get_symfile_segment_data(bfd *abfd)
void relative_addr_info_to_section_offsets(section_offsets §ion_offsets, const section_addr_info &addrs)
CORE_ADDR overlay_mapped_address(CORE_ADDR, struct obj_section *)
symfile_segment_data_up default_symfile_segments(bfd *abfd)
bool pc_in_mapped_range(CORE_ADDR, struct obj_section *)
void map_symbol_filenames(gdb::function_view< symbol_filename_ftype > fun, bool need_fullname)
gdb_bfd_ref_ptr find_separate_debug_file_in_section(struct objfile *)
int symfile_map_offsets_to_segments(bfd *, const struct symfile_segment_data *, section_offsets &, int, const CORE_ADDR *)
enum overlay_debugging_state overlay_debugging
struct symtab * allocate_symtab(struct compunit_symtab *cust, const char *filename, const char *id) ATTRIBUTE_NONNULL(1)
struct obj_section * find_pc_mapped_section(CORE_ADDR)
void clear_symtab_users(symfile_add_flags add_flags)
scoped_restore_tmpl< int > increment_reading_symtab(void)
bfd_byte * default_symfile_relocate(struct objfile *objfile, asection *sectp, bfd_byte *buf)
std::vector< CORE_ADDR > section_offsets
std::vector< target_section > target_section_table