GDB (xrefs)
|
#include "defs.h"
#include "gdbcore.h"
#include "regcache.h"
#include "regset.h"
#include "target.h"
#include "value.h"
#include "osabi.h"
#include "gdb_assert.h"
#include "gdb_string.h"
#include "nbsd-tdep.h"
#include "mipsnbsd-tdep.h"
#include "mips-tdep.h"
#include "solib-svr4.h"
Go to the source code of this file.
#define MIPS_FP0_REGNUM MIPS_EMBED_FP0_REGNUM |
Definition at line 41 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_supply_fpregset().
#define MIPS_FSR_REGNUM MIPS_EMBED_FP0_REGNUM + 32 |
Definition at line 42 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_supply_fpregset().
#define MIPS_PC_REGNUM MIPS_EMBED_PC_REGNUM |
Definition at line 40 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_supply_gregset().
#define MIPSNBSD_NUM_FPREGS 33 |
Definition at line 50 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_regset_from_core_section(), mipsnbsd_supply_fpregset(), and mipsnbsd_supply_gregset().
#define MIPSNBSD_NUM_GREGS 38 |
Definition at line 47 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_regset_from_core_section(), and mipsnbsd_supply_gregset().
#define NBSD_MIPS_JB_ELEMENT_SIZE | ( | gdbarch | ) | mips_isa_regsize (gdbarch) |
Definition at line 255 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_get_longjmp_target().
#define NBSD_MIPS_JB_OFFSET | ( | gdbarch | ) |
(NBSD_MIPS_JB_PC * \ NBSD_MIPS_JB_ELEMENT_SIZE (gdbarch))
Definition at line 256 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_get_longjmp_target().
#define NBSD_MIPS_JB_PC (2 * 4) |
Definition at line 254 of file mipsnbsd-tdep.c.
#define RETCODE_NWORDS 3 |
Definition at line 230 of file mipsnbsd-tdep.c.
#define RETCODE_SIZE (RETCODE_NWORDS * 4) |
Definition at line 231 of file mipsnbsd-tdep.c.
void _initialize_mipsnbsd_tdep | ( | void | ) |
Definition at line 382 of file mipsnbsd-tdep.c.
References _initialize_mipsnbsd_tdep, GDB_OSABI_NETBSD_ELF, gdbarch_register_osabi(), and mipsnbsd_init_abi().
static int mipsnbsd_cannot_fetch_register | ( | struct gdbarch * | gdbarch, |
int | regno | ||
) | [static] |
Definition at line 281 of file mipsnbsd-tdep.c.
References MIPS_ZERO_REGNUM.
Referenced by mipsnbsd_init_abi().
static int mipsnbsd_cannot_store_register | ( | struct gdbarch * | gdbarch, |
int | regno | ||
) | [static] |
Definition at line 288 of file mipsnbsd-tdep.c.
References MIPS_ZERO_REGNUM.
Referenced by mipsnbsd_init_abi().
void mipsnbsd_fill_fpreg | ( | const struct regcache * | regcache, |
char * | fpregs, | ||
int | regno | ||
) |
Definition at line 199 of file mipsnbsd-tdep.c.
References mips_regnum::fp_control_status, gdbarch_cannot_store_register(), gdbarch_fp0_regnum(), get_regcache_arch(), mips_isa_regsize(), mips_regnum(), and regcache_raw_collect().
Referenced by mipsnbsd_store_inferior_registers().
void mipsnbsd_fill_reg | ( | const struct regcache * | regcache, |
char * | regs, | ||
int | regno | ||
) |
Definition at line 162 of file mipsnbsd-tdep.c.
References gdbarch_cannot_store_register(), gdbarch_pc_regnum(), get_regcache_arch(), mips_isa_regsize(), and regcache_raw_collect().
Referenced by mipsnbsd_store_inferior_registers().
static int mipsnbsd_get_longjmp_target | ( | struct frame_info * | frame, |
CORE_ADDR * | pc | ||
) | [static] |
Definition at line 260 of file mipsnbsd-tdep.c.
References gdbarch::byte_order, extract_unsigned_integer(), gdbarch_byte_order(), get_frame_arch(), get_frame_register_unsigned(), MIPS_A0_REGNUM, NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET, and target_read_memory().
Referenced by mipsnbsd_init_abi().
static struct link_map_offsets* mipsnbsd_ilp32_fetch_link_map_offsets | ( | void | ) | [static, read] |
Definition at line 300 of file mipsnbsd-tdep.c.
References link_map_offsets::l_addr_offset, link_map_offsets::l_ld_offset, link_map_offsets::l_name_offset, link_map_offsets::l_next_offset, link_map_offsets::l_prev_offset, link_map_offsets::link_map_size, link_map_offsets::r_brk_offset, link_map_offsets::r_ldsomap_offset, link_map_offsets::r_map_offset, link_map_offsets::r_version_offset, and link_map_offsets::r_version_size.
Referenced by mipsnbsd_init_abi().
static void mipsnbsd_init_abi | ( | struct gdbarch_info | info, |
struct gdbarch * | gdbarch | ||
) | [static] |
Definition at line 357 of file mipsnbsd-tdep.c.
References gdbarch_ptr_bit(), mips_software_single_step(), mipsnbsd_cannot_fetch_register(), mipsnbsd_cannot_store_register(), mipsnbsd_get_longjmp_target(), mipsnbsd_ilp32_fetch_link_map_offsets(), mipsnbsd_lp64_fetch_link_map_offsets(), mipsnbsd_regset_from_core_section(), set_gdbarch_cannot_fetch_register(), set_gdbarch_cannot_store_register(), set_gdbarch_get_longjmp_target(), set_gdbarch_regset_from_core_section(), set_gdbarch_software_single_step(), and set_solib_svr4_fetch_link_map_offsets().
Referenced by _initialize_mipsnbsd_tdep().
static struct link_map_offsets* mipsnbsd_lp64_fetch_link_map_offsets | ( | void | ) | [static, read] |
Definition at line 328 of file mipsnbsd-tdep.c.
References link_map_offsets::l_addr_offset, link_map_offsets::l_ld_offset, link_map_offsets::l_name_offset, link_map_offsets::l_next_offset, link_map_offsets::l_prev_offset, link_map_offsets::link_map_size, link_map_offsets::r_brk_offset, link_map_offsets::r_ldsomap_offset, link_map_offsets::r_map_offset, link_map_offsets::r_version_offset, and link_map_offsets::r_version_size.
Referenced by mipsnbsd_init_abi().
static struct regset* mipsnbsd_regset_from_core_section | ( | struct gdbarch * | gdbarch, |
const char * | sect_name, | ||
size_t | sect_size | ||
) | [static, read] |
Definition at line 122 of file mipsnbsd-tdep.c.
References mips_isa_regsize(), mipsnbsd_fpregset, mipsnbsd_gregset, MIPSNBSD_NUM_FPREGS, and MIPSNBSD_NUM_GREGS.
Referenced by mipsnbsd_init_abi().
void mipsnbsd_supply_fpreg | ( | struct regcache * | regcache, |
const char * | fpregs, | ||
int | regno | ||
) |
Definition at line 175 of file mipsnbsd-tdep.c.
References mips_regnum::fp_implementation_revision, gdbarch_cannot_fetch_register(), gdbarch_fp0_regnum(), get_regcache_arch(), mips_isa_regsize(), mips_regnum(), and regcache_raw_supply().
Referenced by mipsnbsd_fetch_inferior_registers().
static void mipsnbsd_supply_fpregset | ( | const struct regset * | regset, |
struct regcache * | regcache, | ||
int | regnum, | ||
const void * | fpregs, | ||
size_t | len | ||
) | [static] |
Definition at line 57 of file mipsnbsd-tdep.c.
References gdb_assert, get_regcache_arch(), MIPS_FP0_REGNUM, MIPS_FSR_REGNUM, mips_isa_regsize(), MIPSNBSD_NUM_FPREGS, and regcache_raw_supply().
Referenced by mipsnbsd_supply_gregset().
static void mipsnbsd_supply_gregset | ( | const struct regset * | regset, |
struct regcache * | regcache, | ||
int | regnum, | ||
const void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 80 of file mipsnbsd-tdep.c.
References gdb_assert, get_regcache_arch(), mips_isa_regsize(), MIPS_PC_REGNUM, MIPSNBSD_NUM_FPREGS, MIPSNBSD_NUM_GREGS, mipsnbsd_supply_fpregset(), and regcache_raw_supply().
void mipsnbsd_supply_reg | ( | struct regcache * | regcache, |
const char * | regs, | ||
int | regno | ||
) |
Definition at line 143 of file mipsnbsd-tdep.c.
References gdbarch_cannot_fetch_register(), gdbarch_pc_regnum(), get_regcache_arch(), mips_isa_regsize(), and regcache_raw_supply().
Referenced by mipsnbsd_fetch_inferior_registers().
Referenced by _initialize_mipsnbsd_tdep(), and initialize_all_files().
struct regset mipsnbsd_fpregset [static] |
{ NULL, mipsnbsd_supply_fpregset }
Definition at line 112 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_regset_from_core_section().
struct regset mipsnbsd_gregset [static] |
{ NULL, mipsnbsd_supply_gregset }
Definition at line 106 of file mipsnbsd-tdep.c.
Referenced by mipsnbsd_regset_from_core_section().
const unsigned char sigtramp_retcode_mipseb[RETCODE_SIZE] [static] |
{ 0x27, 0xa4, 0x00, 0x10, 0x24, 0x02, 0x01, 0x27, 0x00, 0x00, 0x00, 0x0c, }
Definition at line 240 of file mipsnbsd-tdep.c.
const unsigned char sigtramp_retcode_mipsel[RETCODE_SIZE] [static] |
{ 0x10, 0x00, 0xa4, 0x27, 0x27, 0x01, 0x02, 0x24, 0x0c, 0x00, 0x00, 0x00, }
Definition at line 233 of file mipsnbsd-tdep.c.