GDB (xrefs)
|
#include "defs.h"
#include "gdbcore.h"
#include "solib.h"
#include "solist.h"
#include "frv-tdep.h"
#include "objfiles.h"
#include "symtab.h"
#include "elf/frv.h"
#include "gdb_bfd.h"
Go to the source code of this file.
Classes | |
struct | ext_elf32_fdpic_loadseg |
struct | ext_elf32_fdpic_loadmap |
struct | int_elf32_fdpic_loadseg |
struct | int_elf32_fdpic_loadmap |
struct | ext_elf32_fdpic_loadaddr |
struct | ext_link_map |
struct | lm_info_frv |
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 | { FRV_PTR_SIZE = 4 } |
Functions | |
static struct int_elf32_fdpic_loadmap * | fetch_loadmap (CORE_ADDR ldmaddr) |
static void | frv_relocate_main_executable (void) |
static CORE_ADDR | main_got (void) |
static int | enable_break2 (void) |
static int | open_symbol_file_object (int from_tty) |
static CORE_ADDR | lm_base (void) |
static struct so_list * | frv_current_sos (void) |
static int | frv_in_dynsym_resolve_code (CORE_ADDR pc) |
static CORE_ADDR | displacement_from_map (struct int_elf32_fdpic_loadmap *map, CORE_ADDR addr) |
static void | enable_break_failure_warning (void) |
static int | enable_break (void) |
static void | frv_solib_create_inferior_hook (int from_tty) |
static void | frv_clear_solib (void) |
static void | frv_free_so (struct so_list *so) |
static void | frv_relocate_section_addresses (struct so_list *so, struct target_section *sec) |
CORE_ADDR | frv_fdpic_find_global_pointer (CORE_ADDR addr) |
static CORE_ADDR | find_canonical_descriptor_in_load_object (CORE_ADDR, CORE_ADDR, const char *, bfd *, lm_info_frv *) |
CORE_ADDR | frv_fdpic_find_canonical_descriptor (CORE_ADDR entry_point) |
CORE_ADDR | frv_fetch_objfile_link_map (struct objfile *objfile) |
Variables | |
static lm_info_frv * | main_executable_lm_info |
static CORE_ADDR | lm_base_cache = 0 |
static CORE_ADDR | main_lm_addr = 0 |
static CORE_ADDR | interp_text_sect_low |
static CORE_ADDR | interp_text_sect_high |
static CORE_ADDR | interp_plt_sect_low |
static CORE_ADDR | interp_plt_sect_high |
static int | enable_break2_done = 0 |
const struct target_so_ops | frv_so_ops |
typedef gdb_byte ext_Elf32_Addr[4] |
Definition at line 39 of file solib-frv.c.
typedef gdb_byte ext_Elf32_Half[2] |
Definition at line 38 of file solib-frv.c.
typedef gdb_byte ext_Elf32_Word[4] |
Definition at line 40 of file solib-frv.c.
typedef gdb_byte ext_ptr[4] |
Definition at line 174 of file solib-frv.c.
anonymous enum |
Enumerator | |
---|---|
FRV_PTR_SIZE |
Definition at line 31 of file solib-frv.c.
|
static |
Definition at line 443 of file solib-frv.c.
References int_elf32_fdpic_loadseg::addr, int_elf32_fdpic_loadmap::nsegs, int_elf32_fdpic_loadseg::p_memsz, int_elf32_fdpic_loadseg::p_vaddr, and int_elf32_fdpic_loadmap::segs.
Referenced by enable_break2(), and find_canonical_descriptor_in_load_object().
|
static |
Definition at line 683 of file solib-frv.c.
References create_solib_event_breakpoint(), current_program_space, entry_point_address_query(), program_space::exec_bfd(), solib_debug_printf, program_space::symfile_object_file, and target_gdbarch().
Referenced by frv_solib_create_inferior_hook().
|
static |
Definition at line 496 of file solib-frv.c.
References create_solib_event_breakpoint(), current_program_space, displacement_from_map(), enable_break2_done, enable_break_failure_warning(), program_space::exec_bfd(), extract_unsigned_integer(), fetch_loadmap(), frv_fdpic_loadmap_addresses(), FRV_PTR_SIZE, gdb_bfd_lookup_symbol(), gdbarch_byte_order(), interp_plt_sect_high, interp_plt_sect_low, interp_text_sect_high, interp_text_sect_low, remove_solib_event_breakpoints(), solib_bfd_open(), solib_debug_printf, status, target_gdbarch(), target_read_memory(), and xfree().
Referenced by frv_current_sos().
|
static |
Definition at line 464 of file solib-frv.c.
Referenced by enable_break2().
|
static |
Definition at line 90 of file solib-frv.c.
References ext_elf32_fdpic_loadseg::addr, int_elf32_fdpic_loadseg::addr, extract_unsigned_integer(), gdbarch_byte_order(), ext_elf32_fdpic_loadmap::nsegs, int_elf32_fdpic_loadmap::nsegs, ext_elf32_fdpic_loadseg::p_memsz, int_elf32_fdpic_loadseg::p_memsz, ext_elf32_fdpic_loadseg::p_vaddr, int_elf32_fdpic_loadseg::p_vaddr, ext_elf32_fdpic_loadmap::segs, int_elf32_fdpic_loadmap::segs, target_gdbarch(), target_read_memory(), version, ext_elf32_fdpic_loadmap::version, int_elf32_fdpic_loadmap::version, xfree(), and xmalloc().
Referenced by enable_break2(), frv_current_sos(), and frv_relocate_main_executable().
|
static |
Definition at line 942 of file solib-frv.c.
References displacement_from_map(), lm_info_frv::dyn_reloc_count, lm_info_frv::dyn_relocs, lm_info_frv::dyn_syms, extract_unsigned_integer(), FRV_PTR_SIZE, gdbarch_byte_order(), lm_info_frv::map, name, target_gdbarch(), target_read_memory(), and xmalloc().
Referenced by frv_fdpic_find_canonical_descriptor().
|
static |
Definition at line 808 of file solib-frv.c.
References enable_break2_done, lm_base_cache, main_executable_lm_info, and main_lm_addr.
|
static |
Definition at line 309 of file solib-frv.c.
References core_bfd, enable_break2(), extract_unsigned_integer(), fetch_loadmap(), frv_relocate_main_executable(), gdbarch_byte_order(), ext_elf32_fdpic_loadaddr::got_value, lm_info_frv::got_value, ext_link_map::l_addr, ext_link_map::l_name, ext_link_map::l_next, lm_addr(), lm_info_frv::lm_addr, lm_base(), so_list::lm_info, main_executable_lm_info, main_got(), main_lm_addr, ext_elf32_fdpic_loadaddr::map, lm_info_frv::map, so_list::next, so_list::so_name, SO_NAME_MAX_PATH_SIZE, so_list::so_original_name, solib_debug_printf, target_gdbarch(), target_read_memory(), and target_read_string().
CORE_ADDR frv_fdpic_find_canonical_descriptor | ( | CORE_ADDR | entry_point | ) |
Definition at line 897 of file solib-frv.c.
References current_program_space, find_canonical_descriptor_in_load_object(), find_pc_function(), frv_fdpic_find_global_pointer(), general_symbol_info::linkage_name(), main_executable_lm_info, name, objfile::obfd, program_space::solibs(), and program_space::symfile_object_file.
Referenced by find_func_descr().
CORE_ADDR frv_fdpic_find_global_pointer | ( | CORE_ADDR | addr | ) |
Definition at line 867 of file solib-frv.c.
References int_elf32_fdpic_loadseg::addr, current_program_space, lm_info_frv::got_value, main_got(), lm_info_frv::map, int_elf32_fdpic_loadmap::nsegs, int_elf32_fdpic_loadseg::p_memsz, int_elf32_fdpic_loadmap::segs, and program_space::solibs().
Referenced by find_func_descr(), frv_convert_from_func_ptr_addr(), frv_fdpic_find_canonical_descriptor(), and frv_push_dummy_call().
CORE_ADDR frv_fetch_objfile_link_map | ( | struct objfile * | objfile | ) |
Definition at line 1066 of file solib-frv.c.
References current_program_space, lm_info_frv::lm_addr, main_lm_addr, solib_add(), program_space::solibs(), and program_space::symfile_object_file.
Referenced by frv_gdbarch_init().
|
static |
Definition at line 819 of file solib-frv.c.
References so_list::lm_info.
|
static |
Definition at line 432 of file solib-frv.c.
References in_plt_section(), interp_plt_sect_high, interp_plt_sect_low, interp_text_sect_high, and interp_text_sect_low.
|
static |
Definition at line 720 of file solib-frv.c.
References obj_section::addr(), int_elf32_fdpic_loadseg::addr, current_program_space, fetch_loadmap(), frv_fdpic_loadmap_addresses(), lm_info_frv::got_value, main_executable_lm_info, main_got(), lm_info_frv::map, int_elf32_fdpic_loadmap::nsegs, objfile_relocate(), int_elf32_fdpic_loadseg::p_memsz, int_elf32_fdpic_loadseg::p_vaddr, objfile::section_offsets, objfile::sections(), objfile::sections_start, int_elf32_fdpic_loadmap::segs, status, program_space::symfile_object_file, and target_gdbarch().
Referenced by frv_current_sos(), and frv_solib_create_inferior_hook().
|
static |
Definition at line 827 of file solib-frv.c.
References int_elf32_fdpic_loadseg::addr, target_section::addr, target_section::endaddr, so_list::lm_info, lm_info_frv::map, int_elf32_fdpic_loadmap::nsegs, int_elf32_fdpic_loadseg::p_memsz, int_elf32_fdpic_loadseg::p_vaddr, and int_elf32_fdpic_loadmap::segs.
|
static |
Definition at line 794 of file solib-frv.c.
References enable_break(), and frv_relocate_main_executable().
|
static |
Definition at line 263 of file solib-frv.c.
References current_program_space, extract_unsigned_integer(), FRV_PTR_SIZE, gdbarch_byte_order(), lm_base_cache, lookup_minimal_symbol(), main_executable_lm_info, bound_minimal_symbol::minsym, solib_debug_printf, program_space::symfile_object_file, target_gdbarch(), target_read_memory(), and bound_minimal_symbol::value_address().
Referenced by frv_current_sos().
|
static |
Definition at line 852 of file solib-frv.c.
References current_program_space, lookup_minimal_symbol(), bound_minimal_symbol::minsym, program_space::symfile_object_file, and bound_minimal_symbol::value_address().
Referenced by frv_current_sos(), frv_fdpic_find_global_pointer(), and frv_relocate_main_executable().
|
static |
Definition at line 242 of file solib-frv.c.
|
static |
Definition at line 493 of file solib-frv.c.
Referenced by enable_break2(), and frv_clear_solib().
const struct target_so_ops frv_so_ops |
Definition at line 1090 of file solib-frv.c.
Referenced by frv_gdbarch_init().
|
static |
Definition at line 429 of file solib-frv.c.
Referenced by dsbt_in_dynsym_resolve_code(), enable_break2(), frv_in_dynsym_resolve_code(), and svr4_in_dynsym_resolve_code().
|
static |
Definition at line 428 of file solib-frv.c.
Referenced by enable_break2(), and frv_in_dynsym_resolve_code().
|
static |
Definition at line 427 of file solib-frv.c.
Referenced by dsbt_in_dynsym_resolve_code(), enable_break2(), frv_in_dynsym_resolve_code(), and svr4_in_dynsym_resolve_code().
|
static |
Definition at line 426 of file solib-frv.c.
Referenced by enable_break2(), and frv_in_dynsym_resolve_code().
|
static |
Definition at line 249 of file solib-frv.c.
Referenced by frv_clear_solib(), and lm_base().
|
static |
Definition at line 233 of file solib-frv.c.
Referenced by frv_clear_solib(), frv_current_sos(), frv_fdpic_find_canonical_descriptor(), frv_relocate_main_executable(), and lm_base().
|
static |
Definition at line 252 of file solib-frv.c.
Referenced by frv_clear_solib(), frv_current_sos(), and frv_fetch_objfile_link_map().