GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations | Functions | Variables
/tmp/gdb-13.1/gdb/solib-frv.c File Reference
#include "defs.h"
#include "inferior.h"
#include "gdbcore.h"
#include "solib.h"
#include "solist.h"
#include "frv-tdep.h"
#include "objfiles.h"
#include "symtab.h"
#include "language.h"
#include "command.h"
#include "gdbcmd.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_loadmapfetch_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_listfrv_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 cmp_name (const asymbol *sym, const void *data)
 
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_frvmain_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 Documentation

◆ ext_Elf32_Addr

typedef gdb_byte ext_Elf32_Addr[4]

Definition at line 43 of file solib-frv.c.

◆ ext_Elf32_Half

typedef gdb_byte ext_Elf32_Half[2]

Definition at line 42 of file solib-frv.c.

◆ ext_Elf32_Word

typedef gdb_byte ext_Elf32_Word[4]

Definition at line 44 of file solib-frv.c.

◆ ext_ptr

typedef gdb_byte ext_ptr[4]

Definition at line 178 of file solib-frv.c.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
FRV_PTR_SIZE 

Definition at line 35 of file solib-frv.c.

Function Documentation

◆ cmp_name()

static int cmp_name ( const asymbol *  sym,
const void *  data 
)
static

Definition at line 478 of file solib-frv.c.

Referenced by enable_break2().

◆ displacement_from_map()

static CORE_ADDR displacement_from_map ( struct int_elf32_fdpic_loadmap map,
CORE_ADDR  addr 
)
static

◆ enable_break()

static int enable_break ( void  )
static

◆ enable_break2()

static int enable_break2 ( void  )
static

◆ enable_break_failure_warning()

static void enable_break_failure_warning ( void  )
static

Definition at line 468 of file solib-frv.c.

Referenced by enable_break2().

◆ fetch_loadmap()

static struct int_elf32_fdpic_loadmap * fetch_loadmap ( CORE_ADDR  ldmaddr)
static

◆ find_canonical_descriptor_in_load_object()

static CORE_ADDR find_canonical_descriptor_in_load_object ( CORE_ADDR  entry_point,
CORE_ADDR  got_value,
const char *  name,
bfd *  abfd,
lm_info_frv lm 
)
static

◆ frv_clear_solib()

static void frv_clear_solib ( void  )
static

Definition at line 816 of file solib-frv.c.

References enable_break2_done, lm_base_cache, main_executable_lm_info, and main_lm_addr.

◆ frv_current_sos()

static struct so_list * frv_current_sos ( void  )
static

◆ frv_fdpic_find_canonical_descriptor()

CORE_ADDR frv_fdpic_find_canonical_descriptor ( CORE_ADDR  entry_point)

◆ frv_fdpic_find_global_pointer()

CORE_ADDR frv_fdpic_find_global_pointer ( CORE_ADDR  addr)

◆ frv_fetch_objfile_link_map()

CORE_ADDR frv_fetch_objfile_link_map ( struct objfile objfile)

◆ frv_free_so()

static void frv_free_so ( struct so_list so)
static

Definition at line 827 of file solib-frv.c.

References so_list::lm_info.

◆ frv_in_dynsym_resolve_code()

static int frv_in_dynsym_resolve_code ( CORE_ADDR  pc)
static

◆ frv_relocate_main_executable()

static void frv_relocate_main_executable ( void  )
static

◆ frv_relocate_section_addresses()

static void frv_relocate_section_addresses ( struct so_list so,
struct target_section sec 
)
static

◆ frv_solib_create_inferior_hook()

static void frv_solib_create_inferior_hook ( int  from_tty)
static

Definition at line 802 of file solib-frv.c.

References enable_break(), and frv_relocate_main_executable().

◆ lm_base()

static CORE_ADDR lm_base ( void  )
static

◆ main_got()

static CORE_ADDR main_got ( void  )
static

◆ open_symbol_file_object()

static int open_symbol_file_object ( int  from_tty)
static

Definition at line 246 of file solib-frv.c.

Variable Documentation

◆ enable_break2_done

int enable_break2_done = 0
static

Definition at line 505 of file solib-frv.c.

Referenced by enable_break2(), and frv_clear_solib().

◆ frv_so_ops

const struct target_so_ops frv_so_ops
Initial value:
=
{
nullptr,
}
static void frv_free_so(struct so_list *so)
Definition: solib-frv.c:827
static void frv_clear_solib(void)
Definition: solib-frv.c:816
static struct so_list * frv_current_sos(void)
Definition: solib-frv.c:313
static void frv_relocate_section_addresses(struct so_list *so, struct target_section *sec)
Definition: solib-frv.c:835
static int frv_in_dynsym_resolve_code(CORE_ADDR pc)
Definition: solib-frv.c:436
static void frv_solib_create_inferior_hook(int from_tty)
Definition: solib-frv.c:802
static int open_symbol_file_object(int from_tty)
Definition: solib-frv.c:246
gdb_bfd_ref_ptr solib_bfd_open(const char *pathname)
Definition: solib.c:449

Definition at line 1098 of file solib-frv.c.

Referenced by frv_gdbarch_init().

◆ interp_plt_sect_high

CORE_ADDR interp_plt_sect_high
static

◆ interp_plt_sect_low

CORE_ADDR interp_plt_sect_low
static

Definition at line 432 of file solib-frv.c.

Referenced by enable_break2(), and frv_in_dynsym_resolve_code().

◆ interp_text_sect_high

CORE_ADDR interp_text_sect_high
static

◆ interp_text_sect_low

CORE_ADDR interp_text_sect_low
static

Definition at line 430 of file solib-frv.c.

Referenced by enable_break2(), and frv_in_dynsym_resolve_code().

◆ lm_base_cache

CORE_ADDR lm_base_cache = 0
static

Definition at line 253 of file solib-frv.c.

Referenced by frv_clear_solib(), and lm_base().

◆ main_executable_lm_info

lm_info_frv* main_executable_lm_info
static

◆ main_lm_addr

CORE_ADDR main_lm_addr = 0
static

Definition at line 256 of file solib-frv.c.

Referenced by frv_clear_solib(), frv_current_sos(), and frv_fetch_objfile_link_map().