GDB (xrefs)

Classes | Macros | Functions
/tmp/gdb-8.1/gdb/objfiles.h File Reference
`#include "hashtab.h"`
`#include "gdb_obstack.h"`
`#include "objfile-flags.h"`
`#include "symfile.h"`
`#include "progspace.h"`
`#include "registry.h"`
`#include "gdb_bfd.h"`
`#include <vector>`

Go to the source code of this file.

## Classes
struct | entry_info
struct | obj_section
struct | objstats
struct | objfile_per_bfd_storage
struct | objfile
struct | objfile::objfile_obstack

## Macros
#define | obj_section_offset(s) (((s)->objfile->section_offsets)->offsets[gdb_bfd_section_index ((s)->objfile->obfd, (s)->the_bfd_section)])
#define | obj_section_addr(s)
#define | obj_section_endaddr(s)
#define | OBJSTAT(objfile, expr) (objfile -> stats.expr)
#define | OBJSTATS struct objstats stats
#define | MINIMAL_SYMBOL_HASH_SIZE 2039
#define | ALL_PSPACE_OBJFILES(ss, obj) for ((obj) = ss->objfiles; (obj) != NULL; (obj) = (obj)->next)
#define | ALL_OBJFILES(obj)
#define | ALL_OBJFILES_SAFE(obj, nxt)
#define | ALL_OBJFILE_FILETABS(objfile, cu, s)
#define | ALL_OBJFILE_COMPUNITS(objfile, cu) for ((cu) = (objfile) -> compunit_symtabs; (cu) != NULL; (cu) = (cu) -> next)
#define | ALL_OBJFILE_MSYMBOLS(objfile, m)
#define | ALL_FILETABS(objfile, ps, s)
#define | ALL_COMPUNITS(objfile, cu)
#define | ALL_MSYMBOLS(objfile, m)
#define | ALL_OBJFILE_OSECTIONS(objfile, osect)
#define | ALL_OBJSECTIONS(objfile, osect)
#define | SECT_OFF_DATA(objfile)
#define | SECT_OFF_RODATA(objfile)
#define | SECT_OFF_TEXT(objfile)
#define | SECT_OFF_BSS(objfile) (objfile)->sect_index_bss
#define | MULTI_OBJFILE_P() (object_files && object_files->next)

## Functions
void | print_objfile_statistics (void)
void | print_symbol_bcache_statistics (void)
struct gdbarch * | get_objfile_arch (const struct objfile *)
int | entry_point_address_query (CORE_ADDR *entry_p)
CORE_ADDR | entry_point_address (void)
void | build_objfile_section_table (struct objfile *)
struct objfile * | objfile_separate_debug_iterate (const struct objfile *, const struct objfile *)
void | put_objfile_before (struct objfile *, struct objfile *)
void | add_separate_debug_objfile (struct objfile *, struct objfile *)
void | unlink_objfile (struct objfile *)
void | free_objfile_separate_debug (struct objfile *)
void | free_all_objfiles (void)
void | objfile_relocate (struct objfile *, const struct section_offsets *)
void | objfile_rebase (struct objfile *, CORE_ADDR)
int | objfile_has_partial_symbols (struct objfile *objfile)
int | objfile_has_full_symbols (struct objfile *objfile)
int | objfile_has_symbols (struct objfile *objfile)
int | have_partial_symbols (void)
int | have_full_symbols (void)
void | objfile_set_sym_fns (struct objfile *objfile, const struct sym_fns *sf)
void | objfiles_changed (void)
int | is_addr_in_objfile (CORE_ADDR addr, const struct objfile *objfile)
int | shared_objfile_contains_address_p (struct program_space *pspace, CORE_ADDR address)
void | objfile_purge_solibs (void)
int | have_minimal_symbols (void)
struct obj_section * | find_pc_section (CORE_ADDR pc)
int | pc_in_section (CORE_ADDR, const char *)
static int | in_plt_section (CORE_ADDR pc)
| DECLARE_REGISTRY (objfile)
void | inhibit_section_map_updates (struct program_space *pspace)
void | resume_section_map_updates (struct program_space *pspace)
void | resume_section_map_updates_cleanup (void *arg)
void | default_iterate_over_objfiles_in_search_order (struct gdbarch *gdbarch, iterate_over_objfiles_in_search_order_cb_ftype *cb, void *cb_data, struct objfile *current_objfile)
void | set_objfile_per_bfd (struct objfile *obj)
const char * | objfile_name (const struct objfile *objfile)
const char * | objfile_filename (const struct objfile *objfile)
const char * | objfile_debug_name (const struct objfile *objfile)
const char * | objfile_flavour_name (struct objfile *objfile)
void | set_objfile_main_name (struct objfile *objfile, const char *name, enum language lang)
void | objfile_register_static_link (struct objfile *objfile, const struct block *block, const struct dynamic_prop *static_link)
const struct dynamic_prop * | objfile_lookup_static_link (struct objfile *objfile, const struct block *block)

## Macro Definition Documentation

## ◆ ALL_COMPUNITS

#define ALL_COMPUNITS | ( |  | objfile,
|  |  | cu
| ) |  |

Value:
ALL_OBJFILES (objfile) \
ALL_OBJFILE_COMPUNITS (objfile, cu)
objfile
Definition: objfiles.h:286
ALL_OBJFILES
#define ALL_OBJFILES(obj)
Definition: objfiles.h:582

Definition at line 619 of file objfiles.h.

Referenced by ada_add_global_exceptions(), ada_collect_symbol_completion_matches(), count_symtabs_and_blocks(), default_collect_symbol_completion_matches_break_on(), find_pc_sect_compunit_symtab(), lookup_objfile_from_block(), make_symbol_overload_list_qualified(), and search_symbols().

## ◆ ALL_FILETABS

#define ALL_FILETABS | ( |  | objfile,
|  |  | ps,
|  |  | s
| ) |  |

Value:
ALL_OBJFILES (objfile) \
ALL_OBJFILE_FILETABS (objfile, ps, s)
cleanup_check.ps
ps
Definition: cleanup_check.py:333
objfile
Definition: objfiles.h:286
ALL_OBJFILES
#define ALL_OBJFILES(obj)
Definition: objfiles.h:582

Definition at line 613 of file objfiles.h.

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

## ◆ ALL_MSYMBOLS

#define ALL_MSYMBOLS | ( |  | objfile,
|  |  | m
| ) |  |

Value:
ALL_OBJFILES (objfile) \
ALL_OBJFILE_MSYMBOLS (objfile, m)
arm-linux.m
m
Definition: arm-linux.py:44
objfile
Definition: objfiles.h:286
ALL_OBJFILES
#define ALL_OBJFILES(obj)
Definition: objfiles.h:582

Definition at line 626 of file objfiles.h.

Referenced by ada_collect_symbol_completion_matches(), ada_lookup_simple_minsym(), default_collect_symbol_completion_matches_break_on(), find_solib_trampoline_target(), hppa_lookup_stub_minimal_symbol(), info_classes_command(), info_selectors_command(), and search_symbols().

## ◆ ALL_OBJFILE_COMPUNITS

#define ALL_OBJFILE_COMPUNITS | ( |  | objfile,
|  |  | cu
| ) |  | for ((cu) = (objfile) -> compunit_symtabs; (cu) != NULL; (cu) = (cu) -> next)

Definition at line 600 of file objfiles.h.

Referenced by add_nonlocal_symbols(), basic_lookup_transparent_type_1(), iterate_over_all_matching_symtabs(), lookup_symbol_in_objfile_symtabs(), maintenance_check_symtabs(), maintenance_info_line_tables(), maintenance_info_symtabs(), objfile_relocate1(), and print_objfile_statistics().

## ◆ ALL_OBJFILE_FILETABS

#define ALL_OBJFILE_FILETABS | ( |  | objfile,
|  |  | cu,
|  |  | s
| ) |  |

Value:
ALL_OBJFILE_COMPUNITS (objfile, cu) \
ALL_COMPUNIT_FILETABS (cu, s)
ALL_OBJFILE_COMPUNITS
#define ALL_OBJFILE_COMPUNITS(objfile, cu)
Definition: objfiles.h:600
objfile
Definition: objfiles.h:286

Definition at line 594 of file objfiles.h.

Referenced by coff_symtab_read(), dump_objfile(), forget_cached_source_info_for_objfile(), maintenance_print_symbols(), objfile_relocate1(), and print_objfile_statistics().

## ◆ ALL_OBJFILE_MSYMBOLS

#define ALL_OBJFILE_MSYMBOLS | ( |  | objfile,
|  |  | m
| ) |  |

Value:
for ((m) = (objfile)->per_bfd->msymbols; \
MSYMBOL_LINKAGE_NAME (m) != NULL; \
(m)++)
MSYMBOL_LINKAGE_NAME
#define MSYMBOL_LINKAGE_NAME(symbol)
Definition: symtab.h:707
arm-linux.m
m
Definition: arm-linux.py:44
objfile
Definition: objfiles.h:286

Definition at line 605 of file objfiles.h.

Referenced by coff_symfile_read(), dump_msymbols(), find_methods(), and scan_file_globals().

## ◆ ALL_OBJFILE_OSECTIONS

#define ALL_OBJFILE_OSECTIONS | ( |  | objfile,
|  |  | osect
| ) |  |

Value:
for (osect = objfile->sections; osect < objfile->sections_end; osect++) \
if (osect->the_bfd_section == NULL) \
{ \
/* Nothing. */ \
} \
else
objfile::sections
struct obj_section * sections
Definition: objfiles.h:423
objfile
Definition: objfiles.h:286

Definition at line 630 of file objfiles.h.

Referenced by add_target_sections_of_objfile(), arm_obj_section_from_vma(), data_obj_section_from_objfile(), dsbt_relocate_main_executable(), find_extant_func_descr(), fixup_section(), frob_address(), frv_relocate_main_executable(), hppa64_convert_code_addr_to_fptr(), hppa_linux_find_global_pointer(), hppabsd_find_global_pointer(), ia64_find_global_pointer_from_dynamic_section(), init_entry_point_info(), is_addr_in_objfile(), macho_symfile_offsets(), maintenance_info_sections(), objfile_relocate1(), qsort_cmp(), spu_get_overlay_table(), spu_overlay_new_objfile(), update_section_map(), and xstormy16_find_jmp_table_entry().

## ◆ ALL_OBJFILES

#define ALL_OBJFILES | ( |  | obj | ) |

Value:
for ((obj) = current_program_space->objfiles; \
(obj) != NULL; \
(obj) = (obj)->next)
program_space::objfiles
struct objfile * objfiles
Definition: progspace.h:188
objfile::next
struct objfile * next
Definition: objfiles.h:297
current_program_space
struct program_space * current_program_space
Definition: progspace.c:35

Definition at line 582 of file objfiles.h.

Referenced by add_nonlocal_symbols(), append_ocl_sos(), basic_lookup_transparent_type(), captured_main_1(), collect_probes(), create_exception_master_breakpoint(), create_longjmp_master_breakpoint(), create_overlay_event_breakpoint(), create_std_terminate_master_breakpoint(), default_iterate_over_objfiles_in_search_order(), do_module_cleanup(), dwarf2_frame_find_fde(), expand_symtab_containing_pc(), expand_symtabs_matching(), find_line_symtab(), find_main_name(), find_methods(), find_pc_partial_function_gnu_ifunc(), find_pc_sect_compunit_symtab(), find_pretty_printer_from_objfiles(), find_probe_by_pc(), find_symbol_at_address(), find_unwind_entry(), gdbpy_get_matching_xmethod_workers(), gdbpy_objfiles(), gdbscm_objfiles(), has_libpthread(), have_full_symbols(), have_minimal_symbols(), have_partial_symbols(), iterate_over_all_matching_symtabs(), iterate_over_symtabs(), jit_find_objf_with_entry_addr(), lookup_minimal_symbol_and_objfile(), lookup_static_symbol(), maintenance_info_sections(), maintenance_print_msymbols(), maintenance_print_psymbols(), maintenance_print_symbols(), make_symbol_overload_list_qualified(), map_symbol_filenames(), matching_obj_sections(), objfpy_lookup_objfile_by_build_id(), objfpy_lookup_objfile_by_name(), ppc_linux_spe_context_inferior_created(), ppscm_find_pretty_printer_from_objfiles(), qsort_cmp(), remove_symbol_file_command(), save_gdb_index_command(), search_minsyms_for_name(), select_source_symtab(), solib_read_symbols(), spu_objfile_from_frame(), try_thread_db_load_from_pdir(), and windows_iterate_over_objfiles_in_search_order().

## ◆ ALL_OBJFILES_SAFE

#define ALL_OBJFILES_SAFE | ( |  | obj,
|  |  | nxt
| ) |  |

Value:
for ((obj) = current_program_space->objfiles; \
(obj) != NULL? ((nxt)=(obj)->next,1) :0; \
(obj) = (nxt))
program_space::objfiles
struct objfile * objfiles
Definition: progspace.h:188
current_program_space
struct program_space * current_program_space
Definition: progspace.c:35

Definition at line 587 of file objfiles.h.

Referenced by free_all_objfiles(), jit_inferior_exit_hook(), and objfile_purge_solibs().

## ◆ ALL_OBJSECTIONS

#define ALL_OBJSECTIONS | ( |  | objfile,
|  |  | osect
| ) |  |

Value:
for ((objfile) = current_program_space->objfiles, \
(objfile) != NULL ? ((osect) = (objfile)->sections_end) : 0; \
(objfile) != NULL \
&& (osect) == (objfile)->sections_end; \
((osect) == (objfile)->sections_end \
? ((objfile) = (objfile)->next, \
(objfile) != NULL ? (osect) = (objfile)->sections_end : 0) \
: 0)) \
ALL_OBJFILE_OSECTIONS (objfile, osect)
program_space::objfiles
struct objfile * objfiles
Definition: progspace.h:188
objfile
Definition: objfiles.h:286
current_program_space
struct program_space * current_program_space
Definition: progspace.c:35
objfile::sections_end
struct obj_section * sections_end
Definition: objfiles.h:424

Definition at line 663 of file objfiles.h.

Referenced by find_pc_mapped_section(), find_pc_overlay(), gcore_create_callback(), info_symbol_command(), list_overlays_command(), maintenance_translate_address(), map_overlay_command(), objfile_find_memory_regions(), overlay_invalidate_all(), simple_overlay_update(), spu_overlay_update(), and unmap_overlay_command().

## ◆ ALL_PSPACE_OBJFILES

#define ALL_PSPACE_OBJFILES | ( |  | ss,
|  |  | obj
| ) |  | for ((obj) = ss->objfiles; (obj) != NULL; (obj) = (obj)->next)

Definition at line 579 of file objfiles.h.

Referenced by elf_gnu_ifunc_resolve_by_cache(), elf_gnu_ifunc_resolve_by_got(), forget_cached_source_info(), gdbscm_progspace_objfiles(), maintenance_check_symtabs(), maintenance_expand_symtabs(), maintenance_info_line_tables(), maintenance_info_psymtabs(), maintenance_info_symtabs(), maintenance_print_objfiles(), parse_probes_in_pspace(), print_objfile_statistics(), print_symbol_bcache_statistics(), set_debug_symfile(), shared_objfile_contains_address_p(), and update_section_map().

## ◆ MINIMAL_SYMBOL_HASH_SIZE

#define MINIMAL_SYMBOL_HASH_SIZE 2039

Definition at line 180 of file objfiles.h.

Referenced by add_minsym_to_demangled_hash_table(), add_minsym_to_hash_table(), build_minimal_symbol_hash_tables(), iterate_over_minimal_symbols(), lookup_minimal_symbol(), lookup_minimal_symbol_and_objfile(), lookup_minimal_symbol_by_pc_name(), lookup_minimal_symbol_solib_trampoline(), and lookup_minimal_symbol_text().

## ◆ MULTI_OBJFILE_P

#define MULTI_OBJFILE_P | ( |  | ) | (object_files && object_files->next)

Definition at line 699 of file objfiles.h.

Referenced by info_symbol_command(), and maintenance_translate_address().

## ◆ obj_section_addr

#define obj_section_addr | ( |  | s | ) |

Value:
(bfd_get_section_vma ((s)->objfile->obfd, s->the_bfd_section) \
+ obj_section_offset (s))
objfile::obfd
bfd * obfd
Definition: objfiles.h:342
obj_section_offset
#define obj_section_offset(s)
Definition: objfiles.h:136
objfile
Definition: objfiles.h:286

Definition at line 140 of file objfiles.h.

Referenced by add_target_sections_of_objfile(), arm_find_exidx_entry(), arm_find_mapping_symbol(), bsearch_cmp(), dsbt_relocate_main_executable(), filter_debuginfo_sections(), filter_overlapping_sections(), find_extant_func_descr(), fixup_section(), frob_address(), frv_relocate_main_executable(), gcore_create_callback(), hppa64_convert_code_addr_to_fptr(), hppa_linux_find_global_pointer(), hppabsd_find_global_pointer(), ia64_find_global_pointer_from_dynamic_section(), info_symbol_command(), is_addr_in_objfile(), objfile_find_memory_regions(), objfile_relocate1(), pc_in_mapped_range(), preferred_obj_section(), print_objfile_section_info(), qsort_cmp(), sections_overlap(), solib_aix_get_toc_value(), spu_gdbarch_id(), spu_objfile_from_frame(), spu_overlay_update_osect(), and xstormy16_find_jmp_table_entry().

## ◆ obj_section_endaddr

#define obj_section_endaddr | ( |  | s | ) |

Value:
(bfd_get_section_vma ((s)->objfile->obfd, s->the_bfd_section) \
+ bfd_get_section_size ((s)->the_bfd_section) \
+ obj_section_offset (s))
objfile::obfd
bfd * obfd
Definition: objfiles.h:342
obj_section_offset
#define obj_section_offset(s)
Definition: objfiles.h:136
objfile
Definition: objfiles.h:286

Definition at line 146 of file objfiles.h.

Referenced by add_target_sections_of_objfile(), bsearch_cmp(), filter_overlapping_sections(), find_extant_func_descr(), fixup_section(), frob_address(), gcore_create_callback(), hppa64_convert_code_addr_to_fptr(), hppa_linux_find_global_pointer(), hppabsd_find_global_pointer(), ia64_find_global_pointer_from_dynamic_section(), info_symbol_command(), is_addr_in_objfile(), minimal_symbol_upper_bound(), pc_in_mapped_range(), print_objfile_section_info(), sections_overlap(), tilegx_skip_prologue(), and xstormy16_find_jmp_table_entry().

## ◆ obj_section_offset

#define obj_section_offset | ( |  | s | ) | (((s)->objfile->section_offsets)->offsets[gdb_bfd_section_index ((s)->objfile->obfd, (s)->the_bfd_section)])

Definition at line 136 of file objfiles.h.

Referenced by arm_exidx_new_objfile(), frob_address(), macho_symfile_offsets(), and pc_in_unmapped_range().

## ◆ OBJSTAT

#define OBJSTAT | ( |  | objfile,
|  |  | expr
| ) |  | (objfile -> stats.expr)

Definition at line 174 of file objfiles.h.

Referenced by alloc_type(), append_psymbol_to_list(), coffstab_build_psymtabs(), dbx_next_symbol_text(), dbx_symfile_init(), elfstab_build_psymtabs(), new_symbol_full(), print_objfile_statistics(), read_dbx_symtab(), read_ofile_symtab(), and stabsect_build_psymtabs().

## ◆ OBJSTATS

#define OBJSTATS struct objstats stats

Definition at line 175 of file objfiles.h.

## ◆ SECT_OFF_BSS

#define SECT_OFF_BSS | ( |  | objfile | ) | (objfile)->sect_index_bss

Definition at line 695 of file objfiles.h.

Referenced by get_offsets(), parse_partial_symbols(), parse_symbol(), process_one_symbol(), read_dbx_symtab(), minimal_symbol_reader::record(), and record_minimal_symbol().

## ◆ SECT_OFF_DATA

#define SECT_OFF_DATA | ( |  | objfile | ) |

Value:
((objfile->sect_index_data == -1) \
? (internal_error (__FILE__, __LINE__, \
_("sect_index_data not initialized")), -1) \
: objfile->sect_index_data)
internal_error
void internal_error(const char *file, int line, const char *fmt,...)
Definition: errors.c:50
_
#define _(String)
Definition: gdb_locale.h:35
objfile
Definition: objfiles.h:286
objfile::sect_index_data
int sect_index_data
Definition: objfiles.h:410

Definition at line 674 of file objfiles.h.

Referenced by find_targ_sec(), get_offsets(), dtrace_probe::get_relocated_address(), parse_partial_symbols(), parse_symbol(), process_one_symbol(), minimal_symbol_reader::record(), record_minimal_symbol(), relocate_address(), and scan_xcoff_symtab().

## ◆ SECT_OFF_RODATA

#define SECT_OFF_RODATA | ( |  | objfile | ) |

Value:
((objfile->sect_index_rodata == -1) \
? (internal_error (__FILE__, __LINE__, \
_("sect_index_rodata not initialized")), -1) \
: objfile->sect_index_rodata)
internal_error
void internal_error(const char *file, int line, const char *fmt,...)
Definition: errors.c:50
_
#define _(String)
Definition: gdb_locale.h:35
objfile::sect_index_rodata
int sect_index_rodata
Definition: objfiles.h:412
objfile
Definition: objfiles.h:286

Definition at line 680 of file objfiles.h.

Referenced by process_one_symbol(), and read_dbx_symtab().

## ◆ SECT_OFF_TEXT

#define SECT_OFF_TEXT | ( |  | objfile | ) |

Value:
((objfile->sect_index_text == -1) \
? (internal_error (__FILE__, __LINE__, \
_("sect_index_text not initialized")), -1) \
: objfile->sect_index_text)
objfile::sect_index_text
int sect_index_text
Definition: objfiles.h:409
internal_error
void internal_error(const char *file, int line, const char *fmt,...)
Definition: errors.c:50
_
#define _(String)
Definition: gdb_locale.h:35
objfile
Definition: objfiles.h:286

Definition at line 686 of file objfiles.h.

Referenced by add_address_entry(), add_partial_subprogram(), add_partial_symbol(), add_pe_forwarded_sym(), amd64_windows_find_unwind_info(), coff_end_symtab(), coff_symtab_read(), create_addrmap_from_aranges(), create_addrmap_from_index(), cs_to_section(), dwarf2_frame_find_fde(), dwarf2_per_cu_text_offset(), dwarf2_ranges_process(), dwarf2_ranges_read(), dwarf2_rnglists_process(), dwarf_decode_lines_1(), enable_break(), enter_line_range(), enter_linenos(), execute_cfa_program(), find_targ_sec(), get_offsets(), hppabsd_find_global_pointer(), init_entry_point_info(), new_symbol_full(), objfile_relocate1(), parse_partial_symbols(), parse_symbol(), process_coff_symbol(), process_full_comp_unit(), process_full_type_unit(), process_one_symbol(), process_psymtab_comp_unit_reader(), psym_relocate(), psymtab_to_symtab_1(), read_call_site_scope(), read_dbx_symtab(), read_file_scope(), read_func_scope(), read_lexical_block_scope(), read_ofile_symtab(), read_unwind_info(), read_xcoff_symtab(), minimal_symbol_reader::record(), record_minimal_symbol(), scan_xcoff_symtab(), and xcoff_secnum_to_sections().

## Function Documentation

## ◆ add_separate_debug_objfile()

void add_separate_debug_objfile | ( | struct objfile * | ,
|  | struct objfile * |
| ) |  |

Definition at line 578 of file objfiles.c.

References gdb_assert, objfile::objfile(), put_objfile_before(), objfile::separate_debug_objfile, objfile::separate_debug_objfile_backlink, and objfile::separate_debug_objfile_link.

Referenced by symbol_file_add_with_addrs().

## ◆ build_objfile_section_table()

void build_objfile_section_table | ( | struct objfile * |  | ) |

Definition at line 342 of file objfiles.c.

References add_to_objfile_sections(), add_to_objfile_sections_full(), gdb_bfd_count_sections(), objfile::obfd, OBSTACK_CALLOC, objfile::sections, and objfile::sections_end.

Referenced by objfile::objfile(), and reread_symbols().

## ◆ DECLARE_REGISTRY()

DECLARE_REGISTRY | ( | objfile |  | ) |

## ◆ default_iterate_over_objfiles_in_search_order()

void default_iterate_over_objfiles_in_search_order | ( | struct gdbarch * | gdbarch,
|  | iterate_over_objfiles_in_search_order_cb_ftype * | cb,
|  | void * | cb_data,
|  | struct objfile * | current_objfile
| ) |  |

Definition at line 1539 of file objfiles.c.

References ALL_OBJFILES, and objfile::objfile().

Referenced by gdbarch_alloc().

## ◆ entry_point_address()

CORE_ADDR entry_point_address | ( | void |  | ) |

Definition at line 469 of file objfiles.c.

References _, entry_point_address_query(), and error().

Referenced by arc_push_dummy_code(), call_function_by_hand_dummy(), and displaced_step_at_entry_point().

## ◆ entry_point_address_query()

int entry_point_address_query | ( | CORE_ADDR * | entry_p | ) |

Definition at line 454 of file objfiles.c.

References ANOFFSET, and symfile_objfile.

Referenced by enable_break(), entry_point_address(), and inside_entry_func().

## ◆ find_pc_section()

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

Definition at line 1395 of file objfiles.c.

References bsearch_cmp(), current_program_space, find_pc_mapped_section(), gdb_assert, get_objfile_pspace_data(), objfile_pspace_info::inhibit_updates, objfile_pspace_info::new_objfiles_available, objfile_pspace_info::num_sections, objfile_pspace_info::section_map_dirty, objfile_pspace_info::sections, and update_section_map().

Referenced by amd64_windows_find_unwind_info(), amd64obsd_sigtramp_p(), arc_delayed_print_insn(), arm_find_exidx_entry(), arm_find_mapping_symbol(), arm_skip_stub(), BP_MANIPULATION(), convert_code_addr_to_desc_addr(), enable_break(), find_extant_func_descr(), find_pc_partial_function_gnu_ifunc(), get_pc_function_start(), gnuv3_skip_trampoline(), hppa64_convert_code_addr_to_fptr(), hppa_linux_find_global_pointer(), hppabsd_find_global_pointer(), i386obsd_sigtramp_p(), ia64_convert_from_func_ptr_addr(), ia64_find_global_pointer_from_dynamic_section(), lookup_minimal_symbol_by_pc(), lookup_minimal_symbol_by_pc_section(), lookup_solib_trampoline_symbol_by_pc(), maintenance_print_psymbols(), mep_gdb_print_insn(), mep_pc_in_vliw_section(), mi_memory_changed(), pc_in_section(), rs6000_convert_from_func_ptr_addr(), solib_aix_get_toc_value(), svr4_create_solib_event_breakpoints(), tilegx_skip_prologue(), and xstormy16_find_jmp_table_entry().

## ◆ free_all_objfiles()

void free_all_objfiles | ( | void |  | ) |

Definition at line 735 of file objfiles.c.

References ALL_OBJFILES_SAFE, clear_symtab_users(), gdb_assert, master_so_list(), so_list::next, so_list::objfile, and objfile::objfile().

Referenced by release_program_space(), and symbol_file_clear().

## ◆ free_objfile_separate_debug()

void free_objfile_separate_debug | ( | struct objfile * |  | ) |

Definition at line 602 of file objfiles.c.

References objfile::separate_debug_objfile, and objfile::separate_debug_objfile_link.

Referenced by reread_symbols(), and objfile::~objfile().

## ◆ get_objfile_arch()

struct gdbarch* get_objfile_arch | ( | const struct objfile * |  | ) |

Definition at line 445 of file objfiles.c.

References objfile_per_bfd_storage::gdbarch, and objfile::per_bfd.

Referenced by add_partial_subprogram(), add_partial_symbol(), basic_type(), block_gdbarch(), call_target_sbrk(), checkpoint_command(), coff_read_enum_type(), coff_symtab_read(), create_addrmap_from_aranges(), create_addrmap_from_index(), create_exception_master_breakpoint(), create_longjmp_master_breakpoint(), create_overlay_event_breakpoint(), create_std_terminate_master_breakpoint(), dbx_end_psymtab(), dbx_init_float_type(), decode_base_type(), decode_frame_entry_1(), define_symbol(), dtrace_process_dof(), dump_msymbols(), dump_psymtab(), dump_psymtab_addrmap_1(), dump_symtab_1(), dw2_find_pc_sect_compunit_symtab(), dwarf2_add_field(), dwarf2_evaluate_loc_desc_full(), dwarf2_find_location_expression(), dwarf2_init_float_type(), dwarf2_loc_desc_get_symbol_read_needs(), dwarf2_locexpr_baton_eval(), dwarf2_ranges_read(), dwarf2_record_block_ranges(), dwarf_decode_lines_1(), edit_command(), elf_gnu_ifunc_record_cache(), elf_gnu_ifunc_resolve_by_got(), elf_rel_plt_read(), elf_symtab_read(), enter_line_range(), enter_linenos(), filter_overlapping_sections(), finalize_symtab(), find_function_in_inferior(), find_minsym_type_and_address(), find_solib_trampoline_target(), finish_block_internal(), gdbpy_execute_objfile_script(), gdbpy_source_objfile_script(), get_sal_arch(), get_type_arch(), handle_stap_probe(), identify_source_line(), info_address_command(), info_line_command(), init_entry_point_info(), init_float_type(), insert_exception_resume_from_probe(), internalize_unwinds(), linux_infcall_mmap(), linux_infcall_munmap(), list_command(), list_overlays_command(), locexpr_describe_location_1(), locexpr_describe_location_piece(), loclist_describe_location(), lookup_global_symbol(), macho_add_oso_symfile(), maintenance_check_psymtabs(), maintenance_info_psymtabs(), mark_common_block_symbol_computed(), mi_cmd_symbol_list_lines(), minsym_found(), msymbol_is_function(), new_symbol_full(), objfile_type(), ocl_enable_break(), parse_partial_symbols(), parse_symbol(), print_msymbol_info(), process_full_comp_unit(), process_one_symbol(), process_psymtab_comp_unit_reader(), psym_find_pc_sect_compunit_symtab(), psymtab_to_symtab_1(), dwarf_evaluate_loc_desc::push_dwarf_reg_entry_value(), py_free_objfile(), python_new_objfile(), read_attribute_value(), read_base_type(), read_call_site_scope(), read_dbx_symtab(), read_debug_names_from_section(), read_enum_type(), read_file_scope(), read_func_scope(), read_lexical_block_scope(), read_one_struct_field(), read_partial_die(), read_range_type(), read_subrange_type(), read_tag_pointer_type(), read_tag_string_type(), record_minimal_symbol(), rw_pieced_value(), save_objfile_types(), scan_xcoff_symtab(), section_is_mapped(), simple_overlay_update_1(), simple_read_overlay_table(), skip_prologue_sal(), spu_catch_start(), symbol_arch(), tui_set_source_content(), tui_update_source_windows_with_line(), value_allocate_space_in_inferior(), value_fn_field(), and write_debug_names().

## ◆ have_full_symbols()

int have_full_symbols | ( | void |  | ) |

Definition at line 1040 of file objfiles.c.

References ALL_OBJFILES, and objfile_has_full_symbols().

Referenced by info_sources_command(), list_command(), make_source_files_completion_list(), set_default_source_symtab_and_line(), symbol_file_add_with_addrs(), symbol_file_clear(), symbol_not_found_error(), write_var_or_type(), and yyparse().

## ◆ have_minimal_symbols()

int have_minimal_symbols | ( | void |  | ) |

Definition at line 1079 of file objfiles.c.

References ALL_OBJFILES, objfile_per_bfd_storage::minimal_symbol_count, and objfile::per_bfd.

Referenced by start_command(), and symbol_not_found_error().

## ◆ have_partial_symbols()

int have_partial_symbols | ( | void |  | ) |

Definition at line 1023 of file objfiles.c.

References ALL_OBJFILES, and objfile_has_partial_symbols().

Referenced by info_sources_command(), list_command(), make_source_files_completion_list(), set_default_source_symtab_and_line(), symbol_file_add_with_addrs(), symbol_file_clear(), symbol_not_found_error(), write_var_or_type(), and yyparse().

## ◆ in_plt_section()

static int in_plt_section | ( | CORE_ADDR | pc | ) |
| inline static

Definition at line 542 of file objfiles.h.

References pc_in_section().

Referenced by aarch64_stub_unwind_sniffer(), arm_stub_unwind_sniffer(), arm_symbian_skip_trampoline_code(), dsbt_in_dynsym_resolve_code(), frv_in_dynsym_resolve_code(), hppa_in_solib_call_trampoline(), hppa_linux_find_global_pointer(), hppa_skip_trampoline_code(), hppabsd_find_global_pointer(), mips_stub_frame_sniffer(), nios2_stub_frame_sniffer(), nto_in_dynsym_resolve_code(), s390_stub_frame_sniffer(), sh_stub_unwind_sniffer(), solib_target_in_dynsym_resolve_code(), sparc_analyze_prologue(), svr4_in_dynsym_resolve_code(), and tic6x_stub_unwind_sniffer().

## ◆ inhibit_section_map_updates()

void inhibit_section_map_updates | ( | struct program_space * | pspace | ) |

Definition at line 1469 of file objfiles.c.

References get_objfile_pspace_data(), and objfile_pspace_info::inhibit_updates.

Referenced by svr4_handle_solib_event().

## ◆ is_addr_in_objfile()

int is_addr_in_objfile | ( | CORE_ADDR | addr,
|  | const struct objfile * | objfile
| ) |  |

Definition at line 1494 of file objfiles.c.

References ALL_OBJFILE_OSECTIONS, obj_section_addr, obj_section_endaddr, section_is_mapped(), and section_is_overlay().

Referenced by disable_breakpoints_in_freed_objfile(), remove_symbol_file_command(), and shared_objfile_contains_address_p().

## ◆ objfile_debug_name()

const char* objfile_debug_name | ( | const struct objfile * | objfile | ) |

Definition at line 1579 of file objfiles.c.

References objfile::original_name.

Referenced by debug_qf_dump(), debug_qf_expand_all_symtabs(), debug_qf_expand_symtabs_for_function(), debug_qf_expand_symtabs_matching(), debug_qf_expand_symtabs_with_fullname(), debug_qf_find_compunit_symtab_by_address(), debug_qf_find_last_source_symtab(), debug_qf_find_pc_sect_compunit_symtab(), debug_qf_forget_cached_source_info(), debug_qf_has_symbols(), debug_qf_lookup_symbol(), debug_qf_map_matching_symbols(), debug_qf_map_symbol_filenames(), debug_qf_map_symtabs_matching_filename(), debug_qf_print_stats(), debug_qf_relocate(), debug_sym_finish(), debug_sym_get_probes(), debug_sym_init(), debug_sym_new_init(), debug_sym_offsets(), debug_sym_read(), debug_sym_read_linetable(), debug_sym_read_psymbols(), debug_sym_relocate(), lookup_language_this(), lookup_minimal_symbol(), lookup_symbol_aux(), lookup_symbol_in_block(), lookup_symbol_in_objfile(), lookup_symbol_in_objfile_symtabs(), lookup_symbol_in_static_block(), and lookup_symbol_via_quick_fns().

## ◆ objfile_filename()

const char* objfile_filename | ( | const struct objfile * | objfile | ) |

Definition at line 1568 of file objfiles.c.

References objfile::obfd.

Referenced by objfpy_lookup_objfile_by_name().

## ◆ objfile_flavour_name()

const char* objfile_flavour_name | ( | struct objfile * | objfile | ) |

Definition at line 1587 of file objfiles.c.

References objfile::obfd.

Referenced by default_read_var_value().

## ◆ objfile_has_full_symbols()

int objfile_has_full_symbols | ( | struct objfile * | objfile | ) |

Definition at line 998 of file objfiles.c.

References objfile::compunit_symtabs.

Referenced by have_full_symbols(), and objfile_has_symbols().

## ◆ objfile_has_partial_symbols()

int objfile_has_partial_symbols | ( | struct objfile * | objfile | ) |

Definition at line 979 of file objfiles.c.

References objfile::flags, quick_symbol_functions::has_symbols, OBJF_PSYMTABS_READ, sym_fns::qf, objfile::sf, and sym_fns::sym_read_psymbols.

Referenced by coff_symfile_read(), elf_symfile_read(), have_partial_symbols(), objfile_has_symbols(), and read_symbols().

## ◆ objfile_has_symbols()

int objfile_has_symbols | ( | struct objfile * | objfile | ) |

Definition at line 1007 of file objfiles.c.

References objfile_has_full_symbols(), objfile_has_partial_symbols(), and objfile_separate_debug_iterate().

Referenced by info_sharedlibrary_command(), require_partial_symbols(), reread_symbols(), and symbol_file_add_with_addrs().

## ◆ objfile_lookup_static_link()

const struct dynamic_prop* objfile_lookup_static_link | ( | struct objfile * | objfile,
|  | const struct block * | block
| ) |  |

Definition at line 282 of file objfiles.c.

References static_link_htab_entry::block, gdb_assert, static_link_htab_entry::static_link, and objfile::static_links.

Referenced by block_static_link().

## ◆ objfile_name()

const char* objfile_name | ( | const struct objfile * | objfile | ) |

Definition at line 1557 of file objfiles.c.

References objfile::obfd, and objfile::original_name.

Referenced by allocate_psymtab(), allocate_symtab(), auto_load_objfile_script(), auto_load_objfile_script_1(), build_error_marker_type(), lnp_state_machine::check_line_address(), clone_program_space(), coff_symtab_read(), collect_probes(), compare_probes(), compile_object_load(), compile_object_run(), create_addrmap_from_aranges(), create_dwp_v2_section(), dbx_symfile_read(), die_containing_type(), do_module_cleanup(), dump_msymbols(), dump_objfile(), dump_psymtab(), dump_symtab_1(), dw2_expand_marked_cus(), dw2_symtab_iter_next(), dwarf2_build_frame_info(), dwarf2_build_psymtabs_hard(), dwarf2_fetch_constant_bytes(), dwarf2_fetch_die_loc_sect_off(), dwarf2_get_dwz_file(), dwarf2_physname(), dwarf2_ranges_process(), dwarf2_read_debug_names(), dwarf2_read_index(), dwarf2_rnglists_process(), dwarf2_string_attr(), elf_read_minimal_symbols(), execute_script_contents(), filter_overlapping_sections(), find_separate_debug_file(), find_separate_debug_file_by_buildid(), find_separate_debug_file_by_debuglink(), find_separate_debug_file_in_section(), dw2_debug_names_iterator::find_vec_in_debug_names(), fixup_go_packaging(), follow_die_ref(), follow_die_ref_or_sig(), follow_die_sig(), gdbscm_objfile_filename(), gdbscm_progspace_filename(), get_DW_AT_signature_type(), get_out_value_type(), get_regs_type(), get_signatured_type(), handle_stap_probe(), has_libpthread(), info_address_command(), info_probes_for_spops(), info_symbol_command(), info_target_command(), minimal_symbol_reader::install(), is_known_support_routine(), load_partial_dies(), locexpr_describe_location_piece(), lookup_die_type(), lookup_dwo_cutu(), lookup_dwo_unit(), macho_check_dsym(), macho_symfile_relocate(), macho_symtab_read(), maintenance_check_symtabs(), maintenance_info_psymtabs(), maintenance_info_symtabs(), maintenance_print_msymbols(), maintenance_print_objfiles(), maintenance_print_one_line_table(), maintenance_print_psymbols(), maintenance_print_symbol_cache(), maintenance_print_symbol_cache_statistics(), maintenance_print_symbols(), maintenance_translate_address(), maybe_print_script_not_found_warning(), maybe_print_unsupported_script_warning(), dw2_debug_names_iterator::next(), objfpy_get_filename(), ofscm_print_objfile_smob(), open_and_init_dwp_file(), parse_probes_in_pspace(), print_objfile_statistics(), print_symbol_bcache_statistics(), process_imported_unit_die(), process_queue(), pspy_get_filename(), psscm_print_pspace_smob(), read_addr_index_1(), read_array_type(), read_call_site_scope(), read_common_block(), read_import_statement(), read_one_sym(), read_partial_die(), read_str_index(), read_subrange_type(), read_typedef(), remove_symbol_file_command(), require_partial_symbols(), reread_symbols(), save_gdb_index_command(), scan_file_globals(), scan_partial_symbols(), separate_debug_file_exists(), solib_aix_get_toc_value(), solib_read_symbols(), source_script_file(), symbol_file_clear(), target_translate_tls_address(), thread_db_new_objfile(), try_thread_db_load_from_pdir(), try_thread_db_load_from_pdir_1(), type_name_no_tag_or_error(), write_psymtabs_to_index(), and xcoff_initial_scan().

## ◆ objfile_purge_solibs()

void objfile_purge_solibs | ( | void |  | ) |

Definition at line 1058 of file objfiles.c.

References ALL_OBJFILES_SAFE, objfile::flags, OBJF_SHARED, and OBJF_USERLOADED.

Referenced by no_shared_libraries().

## ◆ objfile_rebase()

void objfile_rebase | ( | struct objfile * | ,
|  | CORE_ADDR |
| ) |  |

Definition at line 959 of file objfiles.c.

References breakpoint_re_set(), objfile_rebase1(), objfile_separate_debug_iterate(), and objfile::separate_debug_objfile.

Referenced by darwin_solib_create_inferior_hook().

## ◆ objfile_register_static_link()

void objfile_register_static_link | ( | struct objfile * | objfile,
|  | const struct block * | block,
|  | const struct dynamic_prop * | static_link
| ) |  |

Definition at line 252 of file objfiles.c.

References static_link_htab_entry::block, gdb_assert, static_link_htab_entry::static_link, static_link_htab_entry_eq(), static_link_htab_entry_hash(), objfile::static_links, xcalloc(), and xfree().

Referenced by finish_block_internal().

## ◆ objfile_relocate()

void objfile_relocate | ( | struct objfile * | ,
|  | const struct section_offsets * |
| ) |  |

Definition at line 896 of file objfiles.c.

References addr_info_make_relative(), breakpoint_re_set(), build_section_addr_info_from_objfile(), do_cleanups(), gdb_assert, gdb_bfd_count_sections(), make_cleanup(), objfile::num_sections, objfile::obfd, objfile_relocate1(), objfile_separate_debug_iterate(), relative_addr_info_to_section_offsets(), objfile::separate_debug_objfile, SIZEOF_N_SECTION_OFFSETS, and xfree().

Referenced by dsbt_relocate_main_executable(), frv_relocate_main_executable(), get_offsets(), solib_aix_solib_create_inferior_hook(), spu_relocate_main_executable(), and svr4_relocate_main_executable().

## ◆ objfile_separate_debug_iterate()

struct objfile* objfile_separate_debug_iterate | ( | const struct objfile * | ,
|  | const struct objfile * |
| ) |  |

Definition at line 488 of file objfiles.c.

References gdb_assert, objfile::separate_debug_objfile, objfile::separate_debug_objfile_backlink, and objfile::separate_debug_objfile_link.

Referenced by lookup_global_symbol_from_objfile(), lookup_minimal_symbol_by_pc_section_1(), lookup_symbol_in_objfile_from_linkage_name(), objfile_has_symbols(), objfile_rebase(), and objfile_relocate().

## ◆ objfile_set_sym_fns()

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

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

References debug_symfile, gdb_assert, install_symfile_debug_logging(), objfile::sf, symfile_debug_installed(), and uninstall_symfile_debug_logging().

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

## ◆ objfiles_changed()

void objfiles_changed | ( | void |  | ) |

Definition at line 1460 of file objfiles.c.

References current_program_space, get_objfile_pspace_data(), and objfile_pspace_info::section_map_dirty.

Referenced by reread_symbols().

## ◆ pc_in_section()

int pc_in_section | ( | CORE_ADDR | ,
|  | const char * |
| ) |  |

Definition at line 1442 of file objfiles.c.

References find_pc_section(), name, and obj_section::the_bfd_section.

Referenced by in_mips_stubs_section(), and in_plt_section().

## ◆ print_objfile_statistics()

void print_objfile_statistics | ( | void |  | ) |

Definition at line 83 of file symmisc.c.

References _, ALL_OBJFILE_COMPUNITS, ALL_OBJFILE_FILETABS, ALL_PSPACE_OBJFILES, ALL_PSPACES, bcache_memory_used(), objfile_per_bfd_storage::filename_cache, objfile_per_bfd_storage::macro_cache, objfile_per_bfd_storage::n_minsyms, objfile::objfile(), objfile_name(), OBJSTAT, objfile::per_bfd, quick_symbol_functions::print_stats, printf_filtered(), psymbol_bcache_get_bcache(), objfile::psymbol_cache, pulongest(), sym_fns::qf, QUIT, objfile::sf, objfile_per_bfd_storage::storage_obstack, and SYMTAB_LINETABLE.

Referenced by maintenance_print_statistics().

## ◆ print_symbol_bcache_statistics()

void print_symbol_bcache_statistics | ( | void |  | ) |

Definition at line 62 of file symmisc.c.

References _, ALL_PSPACE_OBJFILES, ALL_PSPACES, objfile_per_bfd_storage::filename_cache, objfile_per_bfd_storage::macro_cache, objfile::objfile(), objfile_name(), objfile::per_bfd, print_bcache_statistics(), printf_filtered(), objfile::pspace, psymbol_bcache_get_bcache(), objfile::psymbol_cache, and QUIT.

Referenced by maintenance_print_statistics().

## ◆ put_objfile_before()

void put_objfile_before | ( | struct objfile * | ,
|  | struct objfile * |
| ) |  |

Definition at line 523 of file objfiles.c.

References _, internal_error(), objfile::next, object_files, objfile::objfile(), and unlink_objfile().

Referenced by add_separate_debug_objfile().

## ◆ resume_section_map_updates()

void resume_section_map_updates | ( | struct program_space * | pspace | ) |

Definition at line 1477 of file objfiles.c.

References get_objfile_pspace_data(), and objfile_pspace_info::inhibit_updates.

Referenced by resume_section_map_updates_cleanup().

## ◆ resume_section_map_updates_cleanup()

void resume_section_map_updates_cleanup | ( | void * | arg | ) |

Definition at line 1485 of file objfiles.c.

References resume_section_map_updates().

Referenced by svr4_handle_solib_event().

## ◆ set_objfile_main_name()

void set_objfile_main_name | ( | struct objfile * | objfile,
|  | const char * | name,
|  | enum language | lang
| ) |  |

Definition at line 204 of file objfiles.c.

References objfile_per_bfd_storage::language_of_main, name, objfile_per_bfd_storage::name_of_main, objfile::per_bfd, and objfile_per_bfd_storage::storage_obstack.

Referenced by add_partial_symbol(), and process_one_symbol().

## ◆ set_objfile_per_bfd()

void set_objfile_per_bfd | ( | struct objfile * | obj | ) |

Definition at line 195 of file objfiles.c.

References get_objfile_bfd_data(), objfile::obfd, and objfile::per_bfd.

Referenced by reread_symbols().

## ◆ shared_objfile_contains_address_p()

int shared_objfile_contains_address_p | ( | struct program_space * | pspace,
|  | CORE_ADDR | address
| ) |  |

Definition at line 1514 of file objfiles.c.

References ALL_PSPACE_OBJFILES, objfile::flags, is_addr_in_objfile(), OBJF_SHARED, objfile::objfile(), and objfile::pspace.

Referenced by insert_bp_location(), and remove_breakpoint_1().

## ◆ unlink_objfile()

void unlink_objfile | ( | struct objfile * |  | ) |

Definition at line 557 of file objfiles.c.

References _, internal_error(), objfile::next, and object_files.

Referenced by put_objfile_before(), and objfile::~objfile().