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
237 memcpy (&saved_fpregs, &fpregs,
sizeof (fpregs));
244 if (memcmp (&saved_fpregs, &fpregs,
sizeof (fpregs)) != 0)
262 const char *annex,
gdb_byte *readbuf,
266 unsigned long wcookie = 0;
267 char *buf = (
char *)&wcookie;
272 if (offset ==
sizeof (
unsigned long))
274 if (offset >
sizeof (
unsigned long))
288 gdb_assert (
sizeof (wcookie) ==
sizeof (register_t));
305 if (len >
sizeof (
unsigned long) - offset)
306 len =
sizeof (
unsigned long) - offset;
308 memcpy (readbuf, buf + offset, len);
317 const char *annex,
gdb_byte *readbuf,
323 offset, len, xfered_len);
326 offset, len, xfered_len);
353 if (sparc_gregmap == NULL)
355 if (sparc_fpregmap == NULL)
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
void sparc32_supply_gregset(const struct sparc_gregmap *gregmap, struct regcache *regcache, int regnum, const void *gregs)
struct gdbarch * get_regcache_arch(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
int ptid_get_pid(ptid_t ptid)
const char const char int
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
long ptid_get_lwp(ptid_t ptid)
int(* sparc_gregset_supplies_p)(struct gdbarch *, int)
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)
mach_port_t mach_port_t name mach_port_t mach_port_t name error_t int int rusage_t pid_t pid
const ULONGEST const LONGEST len