GDB (xrefs)
|
#include "defs.h"
#include "gdbcore.h"
#include "regcache.h"
#include "gdb_string.h"
#include "inferior.h"
#include "target.h"
#include "linux-nat.h"
#include <sys/procfs.h>
#include <sys/ptrace.h>
#include <linux/version.h>
#include <asm/ptrace.h>
#include "hppa-linux-offsets.h"
#include "hppa-tdep.h"
#include "gregset.h"
Go to the source code of this file.
Defines | |
#define | GR_REGNUM(_n) (HPPA_R0_REGNUM+_n) |
#define | TR_REGNUM(_n) (HPPA_TR0_REGNUM+_n) |
Functions | |
static CORE_ADDR | hppa_linux_register_addr (int regno, CORE_ADDR blockend) |
static void | fetch_register (struct regcache *regcache, int regno) |
static void | store_register (const struct regcache *regcache, int regno) |
static void | hppa_linux_fetch_inferior_registers (struct target_ops *ops, struct regcache *regcache, int regno) |
static void | hppa_linux_store_inferior_registers (struct target_ops *ops, struct regcache *regcache, int regno) |
void | supply_gregset (struct regcache *regcache, const gdb_gregset_t *gregsetp) |
void | fill_gregset (const struct regcache *regcache, gdb_gregset_t *gregsetp, int regno) |
void | supply_fpregset (struct regcache *regcache, const gdb_fpregset_t *fpregsetp) |
void | fill_fpregset (const struct regcache *regcache, gdb_fpregset_t *fpregsetp, int regno) |
void | _initialize_hppa_linux_nat (void) |
Variables | |
static const int | u_offsets [] |
static const int | greg_map [] |
#define GR_REGNUM | ( | _n | ) | (HPPA_R0_REGNUM+_n) |
Definition at line 180 of file hppa-linux-nat.c.
#define TR_REGNUM | ( | _n | ) | (HPPA_TR0_REGNUM+_n) |
Definition at line 181 of file hppa-linux-nat.c.
void _initialize_hppa_linux_nat | ( | void | ) |
Definition at line 389 of file hppa-linux-nat.c.
References hppa_linux_fetch_inferior_registers(), hppa_linux_store_inferior_registers(), linux_nat_add_target(), linux_target(), target_ops::to_fetch_registers, and target_ops::to_store_registers.
static void fetch_register | ( | struct regcache * | regcache, |
int | regno | ||
) | [static] |
Definition at line 214 of file hppa-linux-nat.c.
References _, error(), gdbarch_cannot_fetch_register(), gdbarch_register_name(), get_regcache_arch(), hppa_linux_register_addr(), inferior_ptid, ptid_get_lwp(), ptid_get_pid(), ptrace(), regcache_raw_supply(), and safe_strerror().
Referenced by hppa_linux_fetch_inferior_registers().
void fill_fpregset | ( | const struct regcache * | regcache, |
gdb_fpregset_t * | fpregsetp, | ||
int | regno | ||
) |
Definition at line 370 of file hppa-linux-nat.c.
References HPPA_FP0_REGNUM, regcache_raw_collect(), and to.
void fill_gregset | ( | const struct regcache * | regcache, |
gdb_gregset_t * | gregsetp, | ||
int | regno | ||
) |
Definition at line 330 of file hppa-linux-nat.c.
References greg_map, and regcache_raw_collect().
static void hppa_linux_fetch_inferior_registers | ( | struct target_ops * | ops, |
struct regcache * | regcache, | ||
int | regno | ||
) | [static] |
Definition at line 272 of file hppa-linux-nat.c.
References fetch_register(), gdbarch_num_regs(), and get_regcache_arch().
Referenced by _initialize_hppa_linux_nat().
static CORE_ADDR hppa_linux_register_addr | ( | int | regno, |
CORE_ADDR | blockend | ||
) | [static] |
Definition at line 152 of file hppa-linux-nat.c.
References _, error(), and u_offsets.
Referenced by fetch_register(), and store_register().
static void hppa_linux_store_inferior_registers | ( | struct target_ops * | ops, |
struct regcache * | regcache, | ||
int | regno | ||
) | [static] |
Definition at line 293 of file hppa-linux-nat.c.
References gdbarch_num_regs(), get_regcache_arch(), and store_register().
Referenced by _initialize_hppa_linux_nat().
static void store_register | ( | const struct regcache * | regcache, |
int | regno | ||
) | [static] |
Definition at line 244 of file hppa-linux-nat.c.
References _, error(), gdbarch_cannot_store_register(), gdbarch_register_name(), get_regcache_arch(), hppa_linux_register_addr(), inferior_ptid, ptid_get_lwp(), ptid_get_pid(), ptrace(), regcache_raw_collect(), and safe_strerror().
Referenced by hppa_linux_store_inferior_registers().
void supply_fpregset | ( | struct regcache * | regcache, |
const gdb_fpregset_t * | fpregsetp | ||
) |
Definition at line 351 of file hppa-linux-nat.c.
References from, HPPA_FP0_REGNUM, and regcache_raw_supply().
void supply_gregset | ( | struct regcache * | regcache, |
const gdb_gregset_t * | gregsetp | ||
) |
Definition at line 313 of file hppa-linux-nat.c.
References greg_map, and regcache_raw_supply().
{ GR_REGNUM(0), GR_REGNUM(1), GR_REGNUM(2), GR_REGNUM(3), GR_REGNUM(4), GR_REGNUM(5), GR_REGNUM(6), GR_REGNUM(7), GR_REGNUM(8), GR_REGNUM(9), GR_REGNUM(10), GR_REGNUM(11), GR_REGNUM(12), GR_REGNUM(13), GR_REGNUM(14), GR_REGNUM(15), GR_REGNUM(16), GR_REGNUM(17), GR_REGNUM(18), GR_REGNUM(19), GR_REGNUM(20), GR_REGNUM(21), GR_REGNUM(22), GR_REGNUM(23), GR_REGNUM(24), GR_REGNUM(25), GR_REGNUM(26), GR_REGNUM(27), GR_REGNUM(28), GR_REGNUM(29), GR_REGNUM(30), GR_REGNUM(31), HPPA_SR4_REGNUM+1, HPPA_SR4_REGNUM+2, HPPA_SR4_REGNUM+3, HPPA_SR4_REGNUM+4, HPPA_SR4_REGNUM, HPPA_SR4_REGNUM+5, HPPA_SR4_REGNUM+6, HPPA_SR4_REGNUM+7, HPPA_PCOQ_HEAD_REGNUM, HPPA_PCOQ_TAIL_REGNUM, HPPA_PCSQ_HEAD_REGNUM, HPPA_PCSQ_TAIL_REGNUM, HPPA_SAR_REGNUM, HPPA_IIR_REGNUM, HPPA_ISR_REGNUM, HPPA_IOR_REGNUM, HPPA_IPSW_REGNUM, HPPA_RCR_REGNUM, TR_REGNUM(0), TR_REGNUM(1), TR_REGNUM(2), TR_REGNUM(3), TR_REGNUM(4), TR_REGNUM(5), TR_REGNUM(6), TR_REGNUM(7), HPPA_PID0_REGNUM, HPPA_PID1_REGNUM, HPPA_PID2_REGNUM, HPPA_PID3_REGNUM, HPPA_CCR_REGNUM, HPPA_EIEM_REGNUM, }
Definition at line 182 of file hppa-linux-nat.c.
Referenced by fill_gregset(), and supply_gregset().
Definition at line 45 of file hppa-linux-nat.c.
Referenced by hppa_linux_register_addr().