GDB (xrefs)

Functions | Variables
/tmp/gdb-8.1/gdb/ppc-fbsd-tdep.c File Reference
`#include "defs.h"`
`#include "arch-utils.h"`
`#include "frame.h"`
`#include "gdbcore.h"`
`#include "frame-unwind.h"`
`#include "gdbtypes.h"`
`#include "osabi.h"`
`#include "regcache.h"`
`#include "regset.h"`
`#include "symtab.h"`
`#include "target.h"`
`#include "trad-frame.h"`
`#include "ppc-tdep.h"`
`#include "ppc64-tdep.h"`
`#include "ppc-fbsd-tdep.h"`
`#include "fbsd-tdep.h"`
`#include "solib-svr4.h"`

Go to the source code of this file.

## Functions
const struct regset * | ppc_fbsd_gregset (int wordsize)
const struct regset * | ppc_fbsd_fpregset (void)
static void | ppcfbsd_iterate_over_regset_sections (struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
static int | ppcfbsd_sigtramp_frame_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
static struct trad_frame_cache * | ppcfbsd_sigtramp_frame_cache (struct frame_info *this_frame, void **this_cache)
static void | ppcfbsd_sigtramp_frame_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct value * | ppcfbsd_sigtramp_frame_prev_register (struct frame_info *this_frame, void **this_cache, int regnum)
static enum return_value_convention | ppcfbsd_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
static void | ppcfbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
void | _initialize_ppcfbsd_tdep (void)

## Variables
static const struct ppc_reg_offsets | ppc32_fbsd_reg_offsets
static const struct ppc_reg_offsets | ppc64_fbsd_reg_offsets
static const struct regset | ppc32_fbsd_gregset
static const struct regset | ppc64_fbsd_gregset
static const struct regset | ppc32_fbsd_fpregset
static const int | ppcfbsd_page_size = 4096
static const int | ppcfbsd_sigreturn_offset []
static const struct frame_unwind | ppcfbsd_sigtramp_frame_unwind

## Function Documentation

## ◆ _initialize_ppcfbsd_tdep()

void _initialize_ppcfbsd_tdep | ( | void |  | ) |

Definition at line 340 of file ppc-fbsd-tdep.c.

References GDB_OSABI_FREEBSD, gdbarch_register_osabi(), and ppcfbsd_init_abi().

## ◆ ppc_fbsd_fpregset()

const struct regset* ppc_fbsd_fpregset | ( | void |  | ) |

Definition at line 127 of file ppc-fbsd-tdep.c.

References ppc32_fbsd_fpregset.

Referenced by fill_fpregset(), ppcfbsd_fetch_inferior_registers(), and supply_fpregset().

## ◆ ppc_fbsd_gregset()

const struct regset* ppc_fbsd_gregset | ( | int | wordsize | ) |

Definition at line 121 of file ppc-fbsd-tdep.c.

References ppc32_fbsd_gregset, ppc64_fbsd_gregset, and wordsize.

Referenced by fill_gregset(), and supply_gregset().

## ◆ ppcfbsd_init_abi()

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

Definition at line 296 of file ppc-fbsd-tdep.c.

References fbsd_init_abi(), find_solib_trampoline_target(), floatformats_ieee_double, frame_unwind_append_unwinder(), gdbarch_tdep(), ppc64_convert_from_func_ptr_addr(), ppc64_elf_make_msymbol_special(), ppc64_skip_trampoline_code(), ppcfbsd_iterate_over_regset_sections(), ppcfbsd_return_value(), ppcfbsd_sigtramp_frame_unwind, set_gdbarch_convert_from_func_ptr_addr(), set_gdbarch_elf_make_msymbol_special(), set_gdbarch_fetch_tls_load_module_address(), set_gdbarch_gcore_bfd_target(), set_gdbarch_iterate_over_regset_sections(), set_gdbarch_long_double_bit(), set_gdbarch_long_double_format(), set_gdbarch_return_value(), set_gdbarch_skip_trampoline_code(), set_solib_svr4_fetch_link_map_offsets(), svr4_fetch_objfile_link_map(), svr4_ilp32_fetch_link_map_offsets(), svr4_lp64_fetch_link_map_offsets(), and gdbarch_tdep::wordsize.

Referenced by _initialize_ppcfbsd_tdep().

## ◆ ppcfbsd_iterate_over_regset_sections()

static void ppcfbsd_iterate_over_regset_sections | ( | struct gdbarch * | gdbarch,
|  | iterate_over_regset_sections_cb * | cb,
|  | void * | cb_data,
|  | const struct regcache * | regcache
| ) |  |
| static

Definition at line 135 of file ppc-fbsd-tdep.c.

References gdbarch_tdep(), ppc32_fbsd_fpregset, ppc32_fbsd_gregset, ppc64_fbsd_gregset, and gdbarch_tdep::wordsize.

Referenced by ppcfbsd_init_abi().

## ◆ ppcfbsd_return_value()

static enum return_value_convention ppcfbsd_return_value | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct type * | valtype,
|  | struct regcache * | regcache,
|  | gdb_byte * | readbuf,
|  | const gdb_byte * | writebuf
| ) |  |
| static

Definition at line 286 of file ppc-fbsd-tdep.c.

References ppc_sysv_abi_broken_return_value().

Referenced by ppcfbsd_init_abi().

## ◆ ppcfbsd_sigtramp_frame_cache()

static struct trad_frame_cache* ppcfbsd_sigtramp_frame_cache | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 211 of file ppc-fbsd-tdep.c.

References frame_id_build(), func, gdbarch_pc_regnum(), gdbarch_sp_regnum(), gdbarch_tdep(), get_frame_arch(), get_frame_pc(), get_frame_register_unsigned(), gdbarch_tdep::ppc_cr_regnum, gdbarch_tdep::ppc_ctr_regnum, gdbarch_tdep::ppc_gp0_regnum, PPC_INSN_SIZE, gdbarch_tdep::ppc_lr_regnum, ppc_num_gprs, gdbarch_tdep::ppc_xer_regnum, ppcfbsd_page_size, regnum, safe_frame_unwind_memory(), trad_frame_cache::this_frame, trad_frame_cache_zalloc(), trad_frame_set_id(), trad_frame_set_reg_addr(), and gdbarch_tdep::wordsize.

Referenced by ppcfbsd_sigtramp_frame_prev_register(), and ppcfbsd_sigtramp_frame_this_id().

## ◆ ppcfbsd_sigtramp_frame_prev_register()

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

Definition at line 267 of file ppc-fbsd-tdep.c.

References ppcfbsd_sigtramp_frame_cache(), regnum, trad_frame_cache::this_frame, and trad_frame_get_register().

## ◆ ppcfbsd_sigtramp_frame_sniffer()

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

Definition at line 163 of file ppc-fbsd-tdep.c.

References gdbarch::byte_order, extract_unsigned_integer(), find_pc_partial_function(), gdbarch_byte_order(), get_frame_arch(), get_frame_pc(), name, offset, PPC_INSN_SIZE, ppcfbsd_page_size, ppcfbsd_sigreturn_offset, and safe_frame_unwind_memory().

## ◆ ppcfbsd_sigtramp_frame_this_id()

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

Definition at line 257 of file ppc-fbsd-tdep.c.

References ppcfbsd_sigtramp_frame_cache(), trad_frame_cache::this_frame, trad_frame_cache::this_id, and trad_frame_get_id().

## Variable Documentation

## ◆ ppc32_fbsd_fpregset

const struct regset ppc32_fbsd_fpregset
| static

Initial value:
= {
&ppc32_fbsd_reg_offsets,
ppc_supply_fpregset,
ppc_collect_fpregset
}
ppc_supply_fpregset
void ppc_supply_fpregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
Definition: rs6000-tdep.c:561
ppc_collect_fpregset
void ppc_collect_fpregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *fpregs, size_t len)
Definition: rs6000-tdep.c:726
ppc32_fbsd_reg_offsets
static const struct ppc_reg_offsets ppc32_fbsd_reg_offsets
Definition: ppc-fbsd-tdep.c:42

Definition at line 114 of file ppc-fbsd-tdep.c.

Referenced by ppc_fbsd_fpregset(), and ppcfbsd_iterate_over_regset_sections().

## ◆ ppc32_fbsd_gregset

const struct regset ppc32_fbsd_gregset
| static

Initial value:
= {
&ppc32_fbsd_reg_offsets,
ppc_supply_gregset,
ppc_collect_gregset
}
ppc_collect_gregset
void ppc_collect_gregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t len)
Definition: rs6000-tdep.c:675
ppc32_fbsd_reg_offsets
static const struct ppc_reg_offsets ppc32_fbsd_reg_offsets
Definition: ppc-fbsd-tdep.c:42
ppc_supply_gregset
void ppc_supply_gregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len)
Definition: rs6000-tdep.c:511

Definition at line 98 of file ppc-fbsd-tdep.c.

Referenced by ppc_fbsd_gregset(), and ppcfbsd_iterate_over_regset_sections().

## ◆ ppc32_fbsd_reg_offsets

const struct ppc_reg_offsets ppc32_fbsd_reg_offsets
| static

Initial value:
=
{
0,
4,
4,
144,
-1,
132,
128,
140,
136,
-1,
0,
256,
8,
}

Definition at line 42 of file ppc-fbsd-tdep.c.

## ◆ ppc64_fbsd_gregset

const struct regset ppc64_fbsd_gregset
| static

Initial value:
= {
&ppc64_fbsd_reg_offsets,
ppc_supply_gregset,
ppc_collect_gregset
}
ppc64_fbsd_reg_offsets
static const struct ppc_reg_offsets ppc64_fbsd_reg_offsets
Definition: ppc-fbsd-tdep.c:70
ppc_collect_gregset
void ppc_collect_gregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t len)
Definition: rs6000-tdep.c:675
ppc_supply_gregset
void ppc_supply_gregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len)
Definition: rs6000-tdep.c:511

Definition at line 106 of file ppc-fbsd-tdep.c.

Referenced by ppc_fbsd_gregset(), and ppcfbsd_iterate_over_regset_sections().

## ◆ ppc64_fbsd_reg_offsets

const struct ppc_reg_offsets ppc64_fbsd_reg_offsets
| static

Initial value:
=
{
0,
8,
8,
288,
-1,
264,
256,
280,
272,
-1,
0,
256,
8,
}

Definition at line 70 of file ppc-fbsd-tdep.c.

## ◆ ppcfbsd_page_size

const int ppcfbsd_page_size = 4096
| static

Definition at line 151 of file ppc-fbsd-tdep.c.

Referenced by ppcfbsd_sigtramp_frame_cache(), and ppcfbsd_sigtramp_frame_sniffer().

## ◆ ppcfbsd_sigreturn_offset

const int ppcfbsd_sigreturn_offset[]
| static

Initial value:
= {
0xc,
-1
}

Definition at line 155 of file ppc-fbsd-tdep.c.

Referenced by ppcfbsd_sigtramp_frame_sniffer().

## ◆ ppcfbsd_sigtramp_frame_unwind

const struct frame_unwind ppcfbsd_sigtramp_frame_unwind
| static

Initial value:
= {
SIGTRAMP_FRAME,
default_frame_unwind_stop_reason,
ppcfbsd_sigtramp_frame_this_id,
ppcfbsd_sigtramp_frame_prev_register,
NULL,
ppcfbsd_sigtramp_frame_sniffer
}
SIGTRAMP_FRAME
Definition: frame.h:255
ppcfbsd_sigtramp_frame_this_id
static void ppcfbsd_sigtramp_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
Definition: ppc-fbsd-tdep.c:257
ppcfbsd_sigtramp_frame_sniffer
static int ppcfbsd_sigtramp_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
Definition: ppc-fbsd-tdep.c:163
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
ppcfbsd_sigtramp_frame_prev_register
static struct value * ppcfbsd_sigtramp_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
Definition: ppc-fbsd-tdep.c:267

Definition at line 276 of file ppc-fbsd-tdep.c.

Referenced by ppcfbsd_init_abi().