GDB (xrefs)

Functions | Variables
/tmp/gdb-8.1/gdb/sparc64-nbsd-tdep.c File Reference
`#include "defs.h"`
`#include "frame.h"`
`#include "frame-unwind.h"`
`#include "gdbcore.h"`
`#include "osabi.h"`
`#include "regcache.h"`
`#include "regset.h"`
`#include "symtab.h"`
`#include "objfiles.h"`
`#include "solib-svr4.h"`
`#include "trad-frame.h"`
`#include "sparc64-tdep.h"`
`#include "nbsd-tdep.h"`

Go to the source code of this file.

## Functions
static void | sparc64nbsd_supply_gregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len)
static void | sparc64nbsd_supply_fpregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
static int | sparc64nbsd_pc_in_sigtramp (CORE_ADDR pc, const char *name)
struct trad_frame_saved_reg * | sparc64nbsd_sigcontext_saved_regs (CORE_ADDR sigcontext_addr, struct frame_info *this_frame)
static struct sparc_frame_cache * | sparc64nbsd_sigcontext_frame_cache (struct frame_info *this_frame, void **this_cache)
static void | sparc64nbsd_sigcontext_frame_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct value * | sparc64nbsd_sigcontext_frame_prev_register (struct frame_info *this_frame, void **this_cache, int regnum)
static int | sparc64nbsd_sigtramp_frame_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
static void | sparc64nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
void | _initialize_sparc64nbsd_tdep (void)

## Variables
const struct sparc_gregmap | sparc64nbsd_gregmap
static const CORE_ADDR | sparc64nbsd_sigtramp_start = 0xffffffffffffdee4ULL
static const CORE_ADDR | sparc64nbsd_sigtramp_end = 0xffffffffffffe000ULL
static const struct frame_unwind | sparc64nbsd_sigcontext_frame_unwind
static const struct regset | sparc64nbsd_gregset
static const struct regset | sparc64nbsd_fpregset

## Function Documentation

## ◆ _initialize_sparc64nbsd_tdep()

void _initialize_sparc64nbsd_tdep | ( | void |  | ) |

Definition at line 272 of file sparc64-nbsd-tdep.c.

References GDB_OSABI_NETBSD, gdbarch_register_osabi(), and sparc64nbsd_init_abi().

## ◆ sparc64nbsd_init_abi()

static void sparc64nbsd_init_abi | ( | struct gdbarch_info | info,
|  | struct gdbarch * | gdbarch
| ) |  |
| static

Definition at line 248 of file sparc64-nbsd-tdep.c.

References find_solib_trampoline_target(), gdbarch_tdep::fpregset, frame_unwind_append_unwinder(), gdbarch_tdep(), gdbarch_tdep::gregset, set_gdbarch_skip_trampoline_code(), set_solib_svr4_fetch_link_map_offsets(), gdbarch_tdep::sizeof_fpregset, gdbarch_tdep::sizeof_gregset, sparc64_init_abi(), sparc64nbsd_fpregset, sparc64nbsd_gregset, sparc64nbsd_sigcontext_frame_unwind, sparcnbsd_step_trap(), gdbarch_tdep::step_trap, and svr4_lp64_fetch_link_map_offsets().

Referenced by _initialize_sparc64nbsd_tdep().

## ◆ sparc64nbsd_pc_in_sigtramp()

static int sparc64nbsd_pc_in_sigtramp | ( | CORE_ADDR | pc,
|  | const char * | name
| ) |  |
| static

Definition at line 79 of file sparc64-nbsd-tdep.c.

References name, nbsd_pc_in_sigtramp(), sparc64nbsd_sigtramp_end, and sparc64nbsd_sigtramp_start.

Referenced by sparc64nbsd_sigtramp_frame_sniffer().

## ◆ sparc64nbsd_sigcontext_frame_cache()

static struct sparc_frame_cache* sparc64nbsd_sigcontext_frame_cache | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 152 of file sparc64-nbsd-tdep.c.

References sparc_frame_cache::base, BIAS, gdb_assert, get_frame_register_unsigned(), sparc_frame_cache::pc, sparc_frame_cache::saved_regs, sparc64nbsd_sigcontext_saved_regs(), sparc64nbsd_sigtramp_start, SPARC_FP_REGNUM, sparc_frame_cache(), and sparc_record_save_insn().

Referenced by sparc64nbsd_sigcontext_frame_prev_register(), and sparc64nbsd_sigcontext_frame_this_id().

## ◆ sparc64nbsd_sigcontext_frame_prev_register()

static struct value* sparc64nbsd_sigcontext_frame_prev_register | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | int | regnum
| ) |  |
| static

Definition at line 199 of file sparc64-nbsd-tdep.c.

References regnum, sparc_frame_cache::saved_regs, sparc64nbsd_sigcontext_frame_cache(), and trad_frame_get_prev_register().

## ◆ sparc64nbsd_sigcontext_frame_this_id()

static void sparc64nbsd_sigcontext_frame_this_id | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | struct frame_id * | this_id
| ) |  |
| static

Definition at line 188 of file sparc64-nbsd-tdep.c.

References sparc_frame_cache::base, frame_id_build(), sparc_frame_cache::pc, and sparc64nbsd_sigcontext_frame_cache().

## ◆ sparc64nbsd_sigcontext_saved_regs()

struct trad_frame_saved_reg* sparc64nbsd_sigcontext_saved_regs | ( | CORE_ADDR | sigcontext_addr,
|  | struct frame_info * | this_frame
| ) |  |

Definition at line 88 of file sparc64-nbsd-tdep.c.

References trad_frame_saved_reg::addr, BIAS, get_frame_arch(), get_frame_memory_unsigned(), trad_frame_saved_reg::realreg, regnum, SPARC64_NPC_REGNUM, SPARC64_PC_REGNUM, SPARC64_STATE_REGNUM, SPARC64_Y_REGNUM, sparc_fetch_wcookie(), SPARC_G0_REGNUM, SPARC_G1_REGNUM, SPARC_G2_REGNUM, SPARC_G7_REGNUM, SPARC_I0_REGNUM, SPARC_I7_REGNUM, SPARC_L0_REGNUM, SPARC_L1_REGNUM, SPARC_O0_REGNUM, SPARC_O1_REGNUM, SPARC_O5_REGNUM, SPARC_O7_REGNUM, SPARC_SP_REGNUM, trad_frame_alloc_saved_regs(), and trad_frame_set_value().

Referenced by sparc64nbsd_sigcontext_frame_cache(), and sparc64obsd_frame_cache().

## ◆ sparc64nbsd_sigtramp_frame_sniffer()

static int sparc64nbsd_sigtramp_frame_sniffer | ( | const struct frame_unwind * | self,
|  | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 209 of file sparc64-nbsd-tdep.c.

References find_pc_partial_function(), get_frame_pc(), name, sparc_frame_cache::pc, sparc64nbsd_pc_in_sigtramp(), and startswith().

## ◆ sparc64nbsd_supply_fpregset()

static void sparc64nbsd_supply_fpregset | ( | const struct regset * | regset,
|  | struct regcache * | regcache,
|  | int | regnum,
|  | const void * | fpregs,
|  | size_t | len
| ) |  |
| static

Definition at line 60 of file sparc64-nbsd-tdep.c.

References regnum, sparc64_bsd_fpregmap, and sparc64_supply_fpregset().

## ◆ sparc64nbsd_supply_gregset()

static void sparc64nbsd_supply_gregset | ( | const struct regset * | regset,
|  | struct regcache * | regcache,
|  | int | regnum,
|  | const void * | gregs,
|  | size_t | len
| ) |  |
| static

Definition at line 52 of file sparc64-nbsd-tdep.c.

References regnum, sparc64_supply_gregset(), and sparc64nbsd_gregmap.

## Variable Documentation

## ◆ sparc64nbsd_fpregset

const struct regset sparc64nbsd_fpregset
| static

Initial value:
=
{
NULL, sparc64nbsd_supply_fpregset, NULL
}
sparc64nbsd_supply_fpregset
static void sparc64nbsd_supply_fpregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
Definition: sparc64-nbsd-tdep.c:60

Definition at line 242 of file sparc64-nbsd-tdep.c.

Referenced by sparc64nbsd_init_abi().

## ◆ sparc64nbsd_gregmap

const struct sparc_gregmap sparc64nbsd_gregmap

Initial value:
=
{
0 * 8,
1 * 8,
2 * 8,
3 * 8,
-1,
-1,
5 * 8,
-1,
4
}

Definition at line 37 of file sparc64-nbsd-tdep.c.

Referenced by _initialize_sparc64obsd_nat(), sparc64nbsd_collect_gregset(), and sparc64nbsd_supply_gregset().

## ◆ sparc64nbsd_gregset

const struct regset sparc64nbsd_gregset
| static

Initial value:
=
{
NULL, sparc64nbsd_supply_gregset, NULL
}
sparc64nbsd_supply_gregset
static void sparc64nbsd_supply_gregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len)
Definition: sparc64-nbsd-tdep.c:52

Definition at line 237 of file sparc64-nbsd-tdep.c.

Referenced by sparc64nbsd_init_abi().

## ◆ sparc64nbsd_sigcontext_frame_unwind

const struct frame_unwind sparc64nbsd_sigcontext_frame_unwind
| static

Initial value:
=
{
SIGTRAMP_FRAME,
default_frame_unwind_stop_reason,
sparc64nbsd_sigcontext_frame_this_id,
sparc64nbsd_sigcontext_frame_prev_register,
NULL,
sparc64nbsd_sigtramp_frame_sniffer
}
sparc64nbsd_sigcontext_frame_this_id
static void sparc64nbsd_sigcontext_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
Definition: sparc64-nbsd-tdep.c:188
SIGTRAMP_FRAME
Definition: frame.h:255
sparc64nbsd_sigtramp_frame_sniffer
static int sparc64nbsd_sigtramp_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
Definition: sparc64-nbsd-tdep.c:209
sparc64nbsd_sigcontext_frame_prev_register
static struct value * sparc64nbsd_sigcontext_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
Definition: sparc64-nbsd-tdep.c:199
default_frame_unwind_stop_reason
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
Definition: frame-unwind.c:184

Definition at line 226 of file sparc64-nbsd-tdep.c.

Referenced by sparc64nbsd_init_abi().

## ◆ sparc64nbsd_sigtramp_end

const CORE_ADDR sparc64nbsd_sigtramp_end = 0xffffffffffffe000ULL
| static

Definition at line 76 of file sparc64-nbsd-tdep.c.

Referenced by sparc64nbsd_pc_in_sigtramp().

## ◆ sparc64nbsd_sigtramp_start

const CORE_ADDR sparc64nbsd_sigtramp_start = 0xffffffffffffdee4ULL
| static

Definition at line 75 of file sparc64-nbsd-tdep.c.

Referenced by sparc64nbsd_pc_in_sigtramp(), and sparc64nbsd_sigcontext_frame_cache().