27 #include <sys/procfs.h>
28 #include <sys/ptrace.h>
29 #include <linux/version.h>
31 #include <asm/ptrace.h>
155 if ((
unsigned) regno >= ARRAY_SIZE (
u_offsets))
156 error (
_(
"Invalid register number %d."), regno);
179 #define GR_REGNUM(_n) (HPPA_R0_REGNUM+_n)
180 #define TR_REGNUM(_n) (HPPA_TR0_REGNUM+_n)
193 HPPA_SR4_REGNUM, HPPA_SR4_REGNUM+5, HPPA_SR4_REGNUM+6, HPPA_SR4_REGNUM+7,
233 error (
_(
"Couldn't read register %s (#%d): %s."),
261 error (
_(
"Couldn't write register %s (#%d): %s."),
315 const greg_t *regp = (
const elf_greg_t *) gregsetp;
338 if (regno == -1 || regno == mregno)
355 for (regi = 0; regi <= 31; regi++)
357 from = (
const char *) &((*fpregsetp)[regi]);
379 if ((i - HPPA_FP0_REGNUM) & 1)
void _initialize_hppa_linux_nat(void)
void supply_fpregset(struct regcache *regcache, const gdb_fpregset_t *fpregsetp)
struct gdbarch * get_regcache_arch(const struct regcache *regcache)
static void store_register(const struct regcache *regcache, int regno)
void fill_gregset(const struct regcache *regcache, gdb_gregset_t *gregsetp, int regno)
static const int u_offsets[]
int gdbarch_num_regs(struct gdbarch *gdbarch)
void supply_gregset(struct regcache *regcache, const gdb_gregset_t *gregsetp)
static const int greg_map[]
GDB_GREGSET_T gdb_gregset_t
int gdbarch_cannot_store_register(struct gdbarch *gdbarch, int regnum)
int gdbarch_cannot_fetch_register(struct gdbarch *gdbarch, int regnum)
GDB_FPREGSET_T gdb_fpregset_t
const char * gdbarch_register_name(struct gdbarch *gdbarch, int regnr)
void linux_nat_add_target(struct target_ops *t)
void fill_fpregset(const struct regcache *regcache, gdb_fpregset_t *fpregsetp, int regno)
static void fetch_register(struct regcache *regcache, int regno)
static CORE_ADDR hppa_linux_register_addr(int regno, CORE_ADDR blockend)
struct target_ops * linux_target(void)
static void hppa_linux_store_inferior_registers(struct target_ops *ops, struct regcache *regcache, int regno)
int ptid_get_pid(ptid_t ptid)
void(* to_fetch_registers)(struct target_ops *, struct regcache *, int) TARGET_DEFAULT_IGNORE()
char * safe_strerror(int)
static void hppa_linux_fetch_inferior_registers(struct target_ops *ops, struct regcache *regcache, int regno)
void regcache_raw_supply(struct regcache *regcache, int regnum, const void *buf)
long ptid_get_lwp(ptid_t ptid)
void regcache_raw_collect(const struct regcache *regcache, int regnum, void *buf)
void(* to_store_registers)(struct target_ops *, struct regcache *, int) TARGET_DEFAULT_NORETURN(noprocess())
void error(const char *fmt,...)