76 int regnum,
const void *gregs,
size_t len)
78 const void *fpregs = (
char *)gregs + 288;
93 int regnum,
const void *fpregs,
size_t len)
137 if (insn != 0x83e82067)
142 if (insn != 0x91d02000)
181 addr = cache->
base + 128 + 16;
197 static struct value *
199 void **this_cache,
int regnum)
248 trapframe_addr = sp +
BIAS + 176;
265 void **this_cache,
struct frame_id *this_id)
273 static struct value *
275 void **this_cache,
int regnum)
299 if (name && strcmp (name,
"Lslowtrap_reenter") == 0)
319 #define SPARC64OBSD_UTHREAD_FP_OFFSET 232
320 #define SPARC64OBSD_UTHREAD_PC_OFFSET 240
404 static const struct regset sparc64obsd_gregset =
409 static const struct regset sparc64obsd_fpregset =
static void sparc64obsd_collect_uthread(const struct regcache *regcache, int regnum, CORE_ADDR addr)
void sparc64_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
ULONGEST extract_unsigned_integer(const gdb_byte *, int, enum bfd_endian)
struct frame_id frame_id_build(CORE_ADDR stack_addr, CORE_ADDR code_addr)
static const int sparc64obsd_sigreturn_offset[]
CORE_ADDR get_frame_address_in_block(struct frame_info *this_frame)
CORE_ADDR get_frame_pc(struct frame_info *frame)
struct link_map_offsets * svr4_lp64_fetch_link_map_offsets(void)
struct value * trad_frame_get_prev_register(struct frame_info *this_frame, struct trad_frame_saved_reg this_saved_regs[], int regnum)
struct gdbarch * get_regcache_arch(const struct regcache *regcache)
void sparc_record_save_insn(struct sparc_frame_cache *cache)
void write_memory_unsigned_integer(CORE_ADDR addr, int len, enum bfd_endian byte_order, ULONGEST value)
const struct regset * gregset
struct sparc_frame_cache * sparc_frame_cache(struct frame_info *this_frame, void **this_cache)
static struct value * sparc64obsd_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
CORE_ADDR(* step_trap)(struct frame_info *frame, unsigned long insn)
static void sparc64obsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
void bsd_uthread_set_collect_uthread(struct gdbarch *gdbarch, void(*collect_uthread)(const struct regcache *, int, CORE_ADDR))
void sparc64_supply_gregset(const struct sparc_gregmap *gregmap, struct regcache *regcache, int regnum, const void *gregs)
struct gdbarch_tdep * gdbarch_tdep(struct gdbarch *gdbarch)
void sparc_supply_rwindow(struct regcache *regcache, CORE_ADDR sp, int regnum)
void obsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
void frame_unwind_append_unwinder(struct gdbarch *gdbarch, const struct frame_unwind *unwinder)
#define SPARC64_PSTATE_PRIV
void store_unsigned_integer(gdb_byte *, int, enum bfd_endian, ULONGEST)
static const struct regset sparc64obsd_fpregset
struct trad_frame_saved_reg * sparc64nbsd_sigcontext_saved_regs(CORE_ADDR sigcontext_addr, struct frame_info *next_frame)
struct trad_frame_saved_reg * saved_regs
const struct sparc_fpregmap sparc64_bsd_fpregmap
static int sparc64obsd_trapframe_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
#define SPARC64OBSD_UTHREAD_FP_OFFSET
static struct parser_state * pstate
unsigned long sparc_fetch_instruction(CORE_ADDR pc)
void sparc_collect_rwindow(const struct regcache *regcache, CORE_ADDR sp, int regnum)
void sparc64_supply_fpregset(const struct sparc_fpregmap *fpregmap, struct regcache *regcache, int regnum, const void *fpregs)
static int sparc64obsd_sigtramp_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
static const int sparc64obsd_page_size
void set_solib_svr4_fetch_link_map_offsets(struct gdbarch *gdbarch, struct link_map_offsets *(*flmo)(void))
int find_pc_partial_function(CORE_ADDR pc, const char **name, CORE_ADDR *address, CORE_ADDR *endaddr)
void _initialize_sparc64obsd_tdep(void)
static void sparc64obsd_supply_fpregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
static struct sparc_frame_cache * sparc64obsd_trapframe_cache(struct frame_info *this_frame, void **this_cache)
static void sparc64obsd_supply_uthread(struct regcache *regcache, int regnum, CORE_ADDR addr)
ULONGEST get_frame_register_unsigned(struct frame_info *frame, int regnum)
static void sparc64obsd_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct sparc_frame_cache * sparc64obsd_frame_cache(struct frame_info *this_frame, void **this_cache)
struct trad_frame_saved_reg * trad_frame_alloc_saved_regs(struct frame_info *this_frame)
static struct value * sparc64obsd_trapframe_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
#define SPARC64OBSD_UTHREAD_PC_OFFSET
const struct regset * fpregset
void regcache_raw_supply(struct regcache *regcache, int regnum, const void *buf)
static const struct regset sparc64obsd_gregset
unsigned long long ULONGEST
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
static int sparc64obsd_pc_in_sigtramp(CORE_ADDR pc, const char *name)
CORE_ADDR obsd_skip_solib_resolver(struct gdbarch *gdbarch, CORE_ADDR pc)
void regcache_raw_collect(const struct regcache *regcache, int regnum, void *buf)
static void sparc64obsd_trapframe_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
ULONGEST read_memory_unsigned_integer(CORE_ADDR memaddr, int len, enum bfd_endian byte_order)
void write_memory(CORE_ADDR memaddr, const bfd_byte *myaddr, ssize_t len)
void set_gdbarch_skip_solib_resolver(struct gdbarch *gdbarch, gdbarch_skip_solib_resolver_ftype skip_solib_resolver)
void bsd_uthread_set_supply_uthread(struct gdbarch *gdbarch, void(*supply_uthread)(struct regcache *, int, CORE_ADDR))
enum bfd_endian byte_order
void gdbarch_register_osabi(enum bfd_architecture arch, unsigned long machine, enum gdb_osabi osabi, void(*init_osabi)(struct gdbarch_info, struct gdbarch *))
static void sparc64obsd_supply_gregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len)
CORE_ADDR sparcnbsd_step_trap(struct frame_info *frame, unsigned long insn)
const ULONGEST const LONGEST len