GDB (xrefs)

Macros | Functions | Variables
/tmp/gdb-8.1/gdb/sparc-nat.c File Reference
`#include "defs.h"`
`#include "inferior.h"`
`#include "regcache.h"`
`#include "target.h"`
`#include <signal.h>`
`#include <sys/ptrace.h>`
`#include "gdb_wait.h"`
`#include "sparc-tdep.h"`
`#include "sparc-nat.h"`
`#include "inf-ptrace.h"`

Go to the source code of this file.

## Macros
#define | PTRACE_GETREGS PT_GETREGS
#define | PTRACE_SETREGS PT_SETREGS
#define | PTRACE_GETFPREGS PT_GETFPREGS
#define | PTRACE_SETFPREGS PT_SETFPREGS

## Functions
int | sparc32_gregset_supplies_p (struct gdbarch *gdbarch, int regnum)
int | sparc32_fpregset_supplies_p (struct gdbarch *gdbarch, int regnum)
void | sparc_fetch_inferior_registers (struct target_ops *ops, struct regcache *regcache, int regnum)
void | sparc_store_inferior_registers (struct target_ops *ops, struct regcache *regcache, int regnum)
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)
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)
struct target_ops * | sparc_target (void)
void | _initialize_sparc_nat (void)

## Variables
const struct sparc_gregmap * | sparc_gregmap
const struct sparc_fpregmap * | sparc_fpregmap
void(* | sparc_supply_gregset )(const struct sparc_gregmap *, struct regcache *, int, const void *)
void(* | sparc_collect_gregset )(const struct sparc_gregmap *, const struct regcache *, int, void *)
void(* | sparc_supply_fpregset )(const struct sparc_fpregmap *, struct regcache *, int, const void *)
void(* | sparc_collect_fpregset )(const struct sparc_fpregmap *, const struct regcache *, int, void *)
int(* | sparc_gregset_supplies_p )(struct gdbarch *, int)
int(* | sparc_fpregset_supplies_p )(struct gdbarch *, int)
target_xfer_partial_ftype * | inf_ptrace_xfer_partial

## Macro Definition Documentation

## ◆ PTRACE_GETFPREGS

#define PTRACE_GETFPREGS PT_GETFPREGS

Definition at line 74 of file sparc-nat.c.

Referenced by sparc_fetch_inferior_registers(), and sparc_store_inferior_registers().

## ◆ PTRACE_GETREGS

#define PTRACE_GETREGS PT_GETREGS

Definition at line 66 of file sparc-nat.c.

Referenced by sparc_fetch_inferior_registers(), and sparc_store_inferior_registers().

## ◆ PTRACE_SETFPREGS

#define PTRACE_SETFPREGS PT_SETFPREGS

Definition at line 78 of file sparc-nat.c.

Referenced by sparc_store_inferior_registers().

## ◆ PTRACE_SETREGS

#define PTRACE_SETREGS PT_SETREGS

Definition at line 70 of file sparc-nat.c.

Referenced by sparc_store_inferior_registers().

## Function Documentation

## ◆ _initialize_sparc_nat()

void _initialize_sparc_nat | ( | void |  | ) |

Definition at line 342 of file sparc-nat.c.

References sparc32_collect_fpregset(), sparc32_collect_gregset(), sparc32_fpregset_supplies_p(), sparc32_gregset_supplies_p(), sparc32_sunos4_fpregmap, sparc32_sunos4_gregmap, sparc32_supply_fpregset(), sparc32_supply_gregset(), sparc_collect_fpregset, sparc_collect_gregset, sparc_fpregset_supplies_p, sparc_gregset_supplies_p, sparc_supply_fpregset, and sparc_supply_gregset.

## ◆ sparc32_fpregset_supplies_p()

int sparc32_fpregset_supplies_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum
| ) |  |

Definition at line 120 of file sparc-nat.c.

References regnum, SPARC32_FSR_REGNUM, SPARC_F0_REGNUM, and SPARC_F31_REGNUM.

Referenced by _initialize_sparc_nat(), sparc64_fpregset_supplies_p(), and sparc64nbsd_fpregset_supplies_p().

## ◆ sparc32_gregset_supplies_p()

int sparc32_gregset_supplies_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum
| ) |  |

Definition at line 98 of file sparc-nat.c.

References regnum, SPARC32_NPC_REGNUM, SPARC32_PC_REGNUM, SPARC32_PSR_REGNUM, SPARC32_Y_REGNUM, SPARC_G1_REGNUM, SPARC_G7_REGNUM, SPARC_I0_REGNUM, SPARC_I7_REGNUM, SPARC_L0_REGNUM, SPARC_L7_REGNUM, SPARC_O0_REGNUM, and SPARC_O7_REGNUM.

Referenced by _initialize_sparc_nat(), sparc64_gregset_supplies_p(), and sparc64nbsd_gregset_supplies_p().

## ◆ sparc_fetch_inferior_registers()

void sparc_fetch_inferior_registers | ( | struct target_ops * | ops,
|  | struct regcache * | regcache,
|  | int | regnum
| ) |  |

Definition at line 137 of file sparc-nat.c.

References _, regcache::arch(), get_ptrace_pid(), perror_with_name(), pid, ptrace(), PTRACE_GETFPREGS, PTRACE_GETREGS, PTRACE_TYPE_ARG3, regcache_get_ptid(), regcache_raw_supply(), regnum, sparc_fpregset_supplies_p, SPARC_G0_REGNUM, sparc_gregset_supplies_p, sparc_supply_fpregset, and sparc_supply_gregset.

Referenced by _initialize_sparc64_linux_nat(), _initialize_sparc_linux_nat(), and sparc_target().

## ◆ sparc_store_inferior_registers()

void sparc_store_inferior_registers | ( | struct target_ops * | ops,
|  | struct regcache * | regcache,
|  | int | regnum
| ) |  |

Definition at line 190 of file sparc-nat.c.

References _, regcache::arch(), get_ptrace_pid(), perror_with_name(), pid, ptrace(), PTRACE_GETFPREGS, PTRACE_GETREGS, PTRACE_SETFPREGS, PTRACE_SETREGS, PTRACE_TYPE_ARG3, regcache_cooked_read_unsigned(), regcache_get_ptid(), regnum, sparc_collect_fpregset, sparc_collect_gregset, sparc_collect_rwindow(), sparc_fpregset_supplies_p, sparc_gregset_supplies_p, SPARC_I7_REGNUM, SPARC_L0_REGNUM, and SPARC_SP_REGNUM.

Referenced by _initialize_sparc64_linux_nat(), _initialize_sparc_linux_nat(), and sparc_target().

## ◆ sparc_target()

struct target_ops* sparc_target | ( | void |  | ) |

Definition at line 329 of file sparc-nat.c.

References inf_ptrace_target(), inf_ptrace_xfer_partial, sparc_fetch_inferior_registers(), sparc_store_inferior_registers(), sparc_xfer_partial(), target_ops::to_fetch_registers, target_ops::to_store_registers, and target_ops::to_xfer_partial.

Referenced by _initialize_sparc64fbsd_nat(), _initialize_sparc64nbsd_nat(), _initialize_sparc64obsd_nat(), and _initialize_sparcnbsd_nat().

## ◆ sparc_xfer_partial()

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
| ) |  |
| static

Definition at line 312 of file sparc-nat.c.

References inf_ptrace_xfer_partial, offset, sparc_xfer_wcookie(), and TARGET_OBJECT_WCOOKIE.

Referenced by sparc_target().

## ◆ sparc_xfer_wcookie()

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
| ) |  |
| static

Definition at line 257 of file sparc-nat.c.

References _, gdb_assert, inferior_ptid, gdb.printer.bound_registers::long, offset, perror_with_name(), pid, ptid_get_pid(), ptrace(), PTRACE_TYPE_ARG3, TARGET_OBJECT_WCOOKIE, TARGET_XFER_E_IO, TARGET_XFER_EOF, and TARGET_XFER_OK.

Referenced by sparc_xfer_partial().

## Variable Documentation

## ◆ inf_ptrace_xfer_partial

target_xfer_partial_ftype* inf_ptrace_xfer_partial

Definition at line 309 of file sparc-nat.c.

Referenced by sparc_target(), and sparc_xfer_partial().

## ◆ sparc_collect_fpregset

void(* sparc_collect_fpregset) (const struct sparc_fpregmap *, const struct regcache *, int, void *)

Definition at line 90 of file sparc-nat.c.

Referenced by _initialize_sparc_nat(), and sparc_store_inferior_registers().

## ◆ sparc_collect_gregset

void(* sparc_collect_gregset) (const struct sparc_gregmap *, const struct regcache *, int, void *)

Definition at line 86 of file sparc-nat.c.

Referenced by _initialize_sparc_nat(), and sparc_store_inferior_registers().

## ◆ sparc_fpregmap

const struct sparc_fpregmap* sparc_fpregmap

Definition at line 83 of file sparc-nat.c.

## ◆ sparc_fpregset_supplies_p

int(* sparc_fpregset_supplies_p) (struct gdbarch *, int)

Definition at line 93 of file sparc-nat.c.

Referenced by _initialize_sparc64_nat(), _initialize_sparc64nbsd_nat(), _initialize_sparc64obsd_nat(), _initialize_sparc_nat(), sparc_fetch_inferior_registers(), and sparc_store_inferior_registers().

## ◆ sparc_gregmap

const struct sparc_gregmap* sparc_gregmap

Definition at line 82 of file sparc-nat.c.

## ◆ sparc_gregset_supplies_p

int(* sparc_gregset_supplies_p) (struct gdbarch *, int)

Definition at line 92 of file sparc-nat.c.

Referenced by _initialize_sparc64_nat(), _initialize_sparc64nbsd_nat(), _initialize_sparc64obsd_nat(), _initialize_sparc_nat(), sparc_fetch_inferior_registers(), and sparc_store_inferior_registers().

## ◆ sparc_supply_fpregset

void(* sparc_supply_fpregset) (const struct sparc_fpregmap *, struct regcache *, int, const void *)

Definition at line 88 of file sparc-nat.c.

Referenced by _initialize_sparc_nat(), and sparc_fetch_inferior_registers().

## ◆ sparc_supply_gregset

void(* sparc_supply_gregset) (const struct sparc_gregmap *, struct regcache *, int, const void *)

Definition at line 84 of file sparc-nat.c.

Referenced by _initialize_sparc_nat(), and sparc_fetch_inferior_registers().