26 #include <sys/ptrace.h> 28 #ifdef HAVE_MACHINE_REG_H 29 #include <machine/reg.h> 52 #ifdef HAVE_MACHINE_REG_H 53 #ifdef HAVE_STRUCT_REG 65 #ifndef PTRACE_GETREGS 66 #define PTRACE_GETREGS PT_GETREGS 69 #ifndef PTRACE_SETREGS 70 #define PTRACE_SETREGS PT_SETREGS 73 #ifndef PTRACE_GETFPREGS 74 #define PTRACE_GETFPREGS PT_GETFPREGS 77 #ifndef PTRACE_SETFPREGS 78 #define PTRACE_SETFPREGS PT_SETFPREGS 85 struct regcache *, int ,
const void *);
87 const struct regcache *, int,
void *);
89 struct regcache *, int ,
const void *);
91 const struct regcache *, int ,
void *);
233 memcpy (&saved_fpregs, &fpregs,
sizeof (fpregs));
240 if (memcmp (&saved_fpregs, &fpregs,
sizeof (fpregs)) != 0)
258 const char *annex,
gdb_byte *readbuf,
262 unsigned long wcookie = 0;
263 char *buf = (
char *)&wcookie;
268 if (
offset ==
sizeof (
unsigned long))
270 if (
offset >
sizeof (
unsigned long))
284 gdb_assert (
sizeof (wcookie) ==
sizeof (register_t));
301 if (len >
sizeof (
unsigned long) -
offset)
304 memcpy (readbuf, buf +
offset, len);
313 const char *annex,
gdb_byte *readbuf,
int sparc32_gregset_supplies_p(struct gdbarch *gdbarch, int regnum)
void(* sparc_collect_fpregset)(const struct sparc_fpregmap *, const struct regcache *, int, void *)
const struct sparc_gregmap * sparc_gregmap
int ptid_get_pid(const ptid_t &ptid)
mach_port_t mach_port_t name mach_port_t mach_port_t name kern_return_t int int rusage_t pid_t pid
void sparc32_supply_gregset(const struct sparc_gregmap *gregmap, struct regcache *regcache, int regnum, const void *gregs)
ptid_t regcache_get_ptid(const struct regcache *regcache)
struct target_ops * sparc_target(void)
int sparc32_fpregset_supplies_p(struct gdbarch *gdbarch, int regnum)
void(* sparc_collect_gregset)(const struct sparc_gregmap *, const struct regcache *, int, void *)
void sparc_store_inferior_registers(struct target_ops *ops, struct regcache *regcache, int regnum)
void sparc32_collect_fpregset(const struct sparc_fpregmap *fpregmap, const struct regcache *regcache, int regnum, void *fpregs)
struct target_ops * inf_ptrace_target(void)
const struct sparc_fpregmap * sparc_fpregmap
void sparc_collect_rwindow(const struct regcache *regcache, CORE_ADDR sp, int regnum)
enum register_status regcache_cooked_read_unsigned(struct regcache *regcache, int regnum, ULONGEST *val)
const struct sparc_fpregmap sparc32_sunos4_fpregmap
void sparc_fetch_inferior_registers(struct target_ops *ops, struct regcache *regcache, int regnum)
void sparc32_supply_fpregset(const struct sparc_fpregmap *fpregmap, struct regcache *regcache, int regnum, const void *fpregs)
enum target_xfer_status target_xfer_partial_ftype(struct target_ops *ops, enum target_object object, const char *annex, gdb_byte *readbuf, const gdb_byte *writebuf, ULONGEST offset, ULONGEST len, ULONGEST *xfered_len)
enum target_xfer_status(* to_xfer_partial)(struct target_ops *ops, enum target_object object, const char *annex, gdb_byte *readbuf, const gdb_byte *writebuf, ULONGEST offset, ULONGEST len, ULONGEST *xfered_len) TARGET_DEFAULT_RETURN(TARGET_XFER_E_IO)
void sparc32_collect_gregset(const struct sparc_gregmap *gregmap, const struct regcache *regcache, int regnum, void *gregs)
const struct sparc_gregmap sparc32_sunos4_gregmap
void(* to_fetch_registers)(struct target_ops *, struct regcache *, int) TARGET_DEFAULT_IGNORE()
void void void void void void void void void perror_with_name(const char *string) ATTRIBUTE_NORETURN
void(* sparc_supply_fpregset)(const struct sparc_fpregmap *, struct regcache *, int, const void *)
static enum target_xfer_status sparc_xfer_wcookie(struct target_ops *ops, enum target_object object, const char *annex, gdb_byte *readbuf, const gdb_byte *writebuf, ULONGEST offset, ULONGEST len, ULONGEST *xfered_len)
void _initialize_sparc_nat(void)
target_xfer_partial_ftype * inf_ptrace_xfer_partial
void regcache_raw_supply(struct regcache *regcache, int regnum, const void *buf)
int(* sparc_fpregset_supplies_p)(struct gdbarch *, int)
unsigned long long ULONGEST
int(* sparc_gregset_supplies_p)(struct gdbarch *, int)
pid_t get_ptrace_pid(ptid_t ptid)
void(* to_store_registers)(struct target_ops *, struct regcache *, int) TARGET_DEFAULT_NORETURN(noprocess())
void(* sparc_supply_gregset)(const struct sparc_gregmap *, struct regcache *, int, const void *)
static enum target_xfer_status sparc_xfer_partial(struct target_ops *ops, enum target_object object, const char *annex, gdb_byte *readbuf, const gdb_byte *writebuf, ULONGEST offset, ULONGEST len, ULONGEST *xfered_len)