GDB (xrefs)
|
#include "defs.h"
#include "inferior.h"
#include "gdbcore.h"
#include "solib.h"
#include "solist.h"
#include "objfiles.h"
#include "symtab.h"
#include "command.h"
#include "gdb_bfd.h"
#include "solib-dsbt.h"
#include "elf/common.h"
#include "cli/cli-cmds.h"
Go to the source code of this file.
Classes | |
struct | ext_elf32_dsbt_loadseg |
struct | ext_elf32_dsbt_loadmap |
struct | int_elf32_dsbt_loadseg |
struct | int_elf32_dsbt_loadmap |
struct | ext_elf32_dsbt_loadaddr |
struct | dbst_ext_link_map |
struct | lm_info_dsbt |
struct | dsbt_info |
Macros | |
#define | GOT_MODULE_OFFSET 4 |
Typedefs | |
typedef gdb_byte | ext_Elf32_Half[2] |
typedef gdb_byte | ext_Elf32_Addr[4] |
typedef gdb_byte | ext_Elf32_Word[4] |
typedef gdb_byte | ext_ptr[4] |
Enumerations | |
enum | { TIC6X_PTR_SIZE = 4 } |
Functions | |
static struct dsbt_info * | get_dsbt_info (void) |
static void | dsbt_print_loadmap (struct int_elf32_dsbt_loadmap *map) |
static struct int_elf32_dsbt_loadmap * | decode_loadmap (const gdb_byte *buf) |
static void | dsbt_get_initial_loadmaps (void) |
static struct int_elf32_dsbt_loadmap * | fetch_loadmap (CORE_ADDR ldmaddr) |
static void | dsbt_relocate_main_executable (void) |
static int | enable_break (void) |
static int | open_symbol_file_object (int from_tty) |
static CORE_ADDR | displacement_from_map (struct int_elf32_dsbt_loadmap *map, CORE_ADDR addr) |
static CORE_ADDR | lm_base (void) |
static struct so_list * | dsbt_current_sos (void) |
static int | dsbt_in_dynsym_resolve_code (CORE_ADDR pc) |
static void | enable_break_failure_warning (void) |
static void | dsbt_solib_create_inferior_hook (int from_tty) |
static void | dsbt_clear_solib (void) |
static void | dsbt_free_so (struct so_list *so) |
static void | dsbt_relocate_section_addresses (struct so_list *so, struct target_section *sec) |
static void | show_dsbt_debug (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) |
void | _initialize_dsbt_solib () |
Variables | |
static unsigned int | solib_dsbt_debug = 0 |
static const registry< program_space >::key< dsbt_info > | solib_dsbt_pspace_data |
const struct target_so_ops | dsbt_so_ops |
#define GOT_MODULE_OFFSET 4 |
Definition at line 33 of file solib-dsbt.c.
Referenced by lm_base().
typedef gdb_byte ext_Elf32_Addr[4] |
Definition at line 47 of file solib-dsbt.c.
typedef gdb_byte ext_Elf32_Half[2] |
Definition at line 46 of file solib-dsbt.c.
typedef gdb_byte ext_Elf32_Word[4] |
Definition at line 48 of file solib-dsbt.c.
typedef gdb_byte ext_ptr[4] |
Definition at line 103 of file solib-dsbt.c.
anonymous enum |
Enumerator | |
---|---|
TIC6X_PTR_SIZE |
Definition at line 39 of file solib-dsbt.c.
void _initialize_dsbt_solib | ( | ) |
Definition at line 938 of file solib-dsbt.c.
References add_setshow_zuinteger_cmd(), class_maintenance, setdebuglist, show_dsbt_debug(), showdebuglist, and solib_dsbt_debug.
|
static |
Definition at line 214 of file solib-dsbt.c.
References ext_elf32_dsbt_loadseg::addr, int_elf32_dsbt_loadseg::addr, extract_unsigned_integer(), gdbarch_byte_order(), ext_elf32_dsbt_loadmap::nsegs, int_elf32_dsbt_loadmap::nsegs, ext_elf32_dsbt_loadseg::p_memsz, int_elf32_dsbt_loadseg::p_memsz, ext_elf32_dsbt_loadseg::p_vaddr, int_elf32_dsbt_loadseg::p_vaddr, ext_elf32_dsbt_loadmap::segs, int_elf32_dsbt_loadmap::segs, target_gdbarch(), version, ext_elf32_dsbt_loadmap::version, int_elf32_dsbt_loadmap::version, and xmalloc().
Referenced by dsbt_get_initial_loadmaps().
|
static |
Definition at line 412 of file solib-dsbt.c.
References int_elf32_dsbt_loadseg::addr, int_elf32_dsbt_loadmap::nsegs, int_elf32_dsbt_loadseg::p_memsz, int_elf32_dsbt_loadseg::p_vaddr, and int_elf32_dsbt_loadmap::segs.
Referenced by enable_break(), and lm_base().
|
static |
Definition at line 876 of file solib-dsbt.c.
References get_dsbt_info().
|
static |
Definition at line 519 of file solib-dsbt.c.
References core_bfd, dsbt_relocate_main_executable(), extract_unsigned_integer(), fetch_loadmap(), gdb_printf(), gdb_stdlog, gdbarch_byte_order(), get_dsbt_info(), dbst_ext_link_map::l_addr, dbst_ext_link_map::l_name, dbst_ext_link_map::l_next, lm_addr(), lm_base(), so_list::lm_info, ext_elf32_dsbt_loadaddr::map, lm_info_dsbt::map, so_list::next, so_list::so_name, SO_NAME_MAX_PATH_SIZE, so_list::so_original_name, solib_dsbt_debug, target_gdbarch(), target_read_memory(), and target_read_string().
|
static |
Definition at line 888 of file solib-dsbt.c.
References so_list::lm_info.
|
static |
Definition at line 279 of file solib-dsbt.c.
References current_inferior(), decode_loadmap(), dsbt_print_loadmap(), get_dsbt_info(), solib_dsbt_debug, TARGET_OBJECT_FDPIC, and target_read_alloc().
Referenced by dsbt_relocate_main_executable(), enable_break(), and lm_base().
|
static |
Definition at line 644 of file solib-dsbt.c.
References get_dsbt_info(), in_plt_section(), interp_plt_sect_high, and interp_text_sect_high.
|
static |
Definition at line 186 of file solib-dsbt.c.
References int_elf32_dsbt_loadseg::addr, gdb_printf(), int_elf32_dsbt_loadmap::nsegs, int_elf32_dsbt_loadseg::p_memsz, int_elf32_dsbt_loadseg::p_vaddr, print_core_address(), int_elf32_dsbt_loadmap::segs, target_gdbarch(), and int_elf32_dsbt_loadmap::version.
Referenced by dsbt_get_initial_loadmaps().
|
static |
Definition at line 800 of file solib-dsbt.c.
References obj_section::addr(), int_elf32_dsbt_loadseg::addr, current_program_space, dsbt_get_initial_loadmaps(), get_dsbt_info(), int_elf32_dsbt_loadmap::nsegs, objfile_relocate(), int_elf32_dsbt_loadseg::p_memsz, int_elf32_dsbt_loadseg::p_vaddr, objfile::section_offsets, objfile::sections(), objfile::sections_start, int_elf32_dsbt_loadmap::segs, and program_space::symfile_object_file.
Referenced by dsbt_current_sos(), and dsbt_solib_create_inferior_hook().
|
static |
Definition at line 896 of file solib-dsbt.c.
References int_elf32_dsbt_loadseg::addr, target_section::addr, target_section::endaddr, so_list::lm_info, lm_info_dsbt::map, int_elf32_dsbt_loadmap::nsegs, int_elf32_dsbt_loadseg::p_memsz, int_elf32_dsbt_loadseg::p_vaddr, and int_elf32_dsbt_loadmap::segs.
|
static |
Definition at line 862 of file solib-dsbt.c.
References dsbt_relocate_main_executable(), and enable_break().
|
static |
Definition at line 673 of file solib-dsbt.c.
References create_solib_event_breakpoint(), current_program_space, displacement_from_map(), dsbt_get_initial_loadmaps(), enable_break_failure_warning(), program_space::exec_bfd(), gdb_bfd_lookup_symbol(), gdb_printf(), gdb_stdlog, get_dsbt_info(), solib_bfd_open(), solib_dsbt_debug, target_gdbarch(), target_has_execution(), and xfree().
Referenced by dsbt_solib_create_inferior_hook(), and svr4_solib_create_inferior_hook().
|
static |
Definition at line 657 of file solib-dsbt.c.
Referenced by enable_break().
|
static |
Definition at line 314 of file solib-dsbt.c.
References ext_elf32_dsbt_loadseg::addr, int_elf32_dsbt_loadseg::addr, extract_unsigned_integer(), gdbarch_byte_order(), ext_elf32_dsbt_loadmap::nsegs, int_elf32_dsbt_loadmap::nsegs, ext_elf32_dsbt_loadseg::p_memsz, int_elf32_dsbt_loadseg::p_memsz, ext_elf32_dsbt_loadseg::p_vaddr, int_elf32_dsbt_loadseg::p_vaddr, ext_elf32_dsbt_loadmap::segs, int_elf32_dsbt_loadmap::segs, target_gdbarch(), target_read_memory(), version, ext_elf32_dsbt_loadmap::version, int_elf32_dsbt_loadmap::version, xfree(), and xmalloc().
Referenced by dsbt_current_sos().
|
static |
Definition at line 173 of file solib-dsbt.c.
References current_program_space, registry< T >::get(), and solib_dsbt_pspace_data.
Referenced by dsbt_clear_solib(), dsbt_current_sos(), dsbt_get_initial_loadmaps(), dsbt_in_dynsym_resolve_code(), dsbt_relocate_main_executable(), enable_break(), and lm_base().
|
static |
Definition at line 437 of file solib-dsbt.c.
References current_program_space, displacement_from_map(), dsbt_get_initial_loadmaps(), program_space::exec_bfd(), extract_unsigned_integer(), gdb_bfd_scan_elf_dyntag(), gdb_printf(), gdb_stdlog, gdbarch_byte_order(), get_dsbt_info(), GOT_MODULE_OFFSET, lookup_minimal_symbol(), bound_minimal_symbol::minsym, solib_dsbt_debug, program_space::symfile_object_file, target_gdbarch(), target_read_memory(), TIC6X_PTR_SIZE, and bound_minimal_symbol::value_address().
Referenced by dsbt_current_sos().
|
static |
Definition at line 402 of file solib-dsbt.c.
|
static |
Definition at line 917 of file solib-dsbt.c.
References gdb_printf().
Referenced by _initialize_dsbt_solib().
const struct target_so_ops dsbt_so_ops |
Definition at line 923 of file solib-dsbt.c.
Referenced by tic6x_uclinux_init_abi().
|
static |
Definition at line 36 of file solib-dsbt.c.
Referenced by _initialize_dsbt_solib(), dsbt_current_sos(), dsbt_get_initial_loadmaps(), enable_break(), and lm_base().
|
static |
Definition at line 167 of file solib-dsbt.c.
Referenced by get_dsbt_info().