GDB (xrefs)

Macros | Functions | Variables
/tmp/gdb-8.1/gdb/aarch64-fbsd-tdep.c File Reference
`#include "defs.h"`
`#include "gdbarch.h"`
`#include "fbsd-tdep.h"`
`#include "aarch64-tdep.h"`
`#include "aarch64-fbsd-tdep.h"`
`#include "osabi.h"`
`#include "solib-svr4.h"`
`#include "target.h"`
`#include "tramp-frame.h"`
`#include "trad-frame.h"`

Go to the source code of this file.

## Macros
#define | AARCH64_MCONTEXT_REG_SIZE 8
#define | AARCH64_MCONTEXT_FPREG_SIZE 16
#define | AARCH64_SIGFRAME_UCONTEXT_OFFSET 80
#define | AARCH64_UCONTEXT_MCONTEXT_OFFSET 16
#define | AARCH64_MCONTEXT_FPREGS_OFFSET 272
#define | AARCH64_MCONTEXT_FLAGS_OFFSET 800
#define | AARCH64_MCONTEXT_FLAG_FP_VALID 0x1

## Functions
static void | aarch64_fbsd_sigframe_init (const struct tramp_frame *self, struct frame_info *this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
static void | aarch64_fbsd_iterate_over_regset_sections (struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
static void | aarch64_fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
void | _initialize_aarch64_fbsd_tdep (void)

## Variables
static const struct tramp_frame | aarch64_fbsd_sigframe
static const struct regcache_map_entry | aarch64_fbsd_gregmap []
static const struct regcache_map_entry | aarch64_fbsd_fpregmap []
const struct regset | aarch64_fbsd_gregset
const struct regset | aarch64_fbsd_fpregset

## Macro Definition Documentation

## ◆ AARCH64_MCONTEXT_FLAG_FP_VALID

#define AARCH64_MCONTEXT_FLAG_FP_VALID 0x1

Definition at line 58 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_sigframe_init().

## ◆ AARCH64_MCONTEXT_FLAGS_OFFSET

#define AARCH64_MCONTEXT_FLAGS_OFFSET 800

Definition at line 57 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_sigframe_init().

## ◆ AARCH64_MCONTEXT_FPREG_SIZE

#define AARCH64_MCONTEXT_FPREG_SIZE 16

Definition at line 53 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_sigframe_init().

## ◆ AARCH64_MCONTEXT_FPREGS_OFFSET

#define AARCH64_MCONTEXT_FPREGS_OFFSET 272

Definition at line 56 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_sigframe_init().

## ◆ AARCH64_MCONTEXT_REG_SIZE

#define AARCH64_MCONTEXT_REG_SIZE 8

Definition at line 52 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_sigframe_init().

## ◆ AARCH64_SIGFRAME_UCONTEXT_OFFSET

#define AARCH64_SIGFRAME_UCONTEXT_OFFSET 80

Definition at line 54 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_sigframe_init().

## ◆ AARCH64_UCONTEXT_MCONTEXT_OFFSET

#define AARCH64_UCONTEXT_MCONTEXT_OFFSET 16

Definition at line 55 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_sigframe_init().

## Function Documentation

## ◆ _initialize_aarch64_fbsd_tdep()

void _initialize_aarch64_fbsd_tdep | ( | void |  | ) |

Definition at line 201 of file aarch64-fbsd-tdep.c.

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

## ◆ aarch64_fbsd_init_abi()

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

Definition at line 181 of file aarch64-fbsd-tdep.c.

References aarch64_fbsd_iterate_over_regset_sections(), aarch64_fbsd_sigframe, fbsd_init_abi(), gdbarch_tdep(), gdbarch_tdep::jb_pc, set_gdbarch_iterate_over_regset_sections(), set_solib_svr4_fetch_link_map_offsets(), svr4_lp64_fetch_link_map_offsets(), and tramp_frame_prepend_unwinder().

Referenced by _initialize_aarch64_fbsd_tdep().

## ◆ aarch64_fbsd_iterate_over_regset_sections()

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

Definition at line 167 of file aarch64-fbsd-tdep.c.

References aarch64_fbsd_fpregset, aarch64_fbsd_gregset, AARCH64_FBSD_SIZEOF_FPREGSET, and AARCH64_FBSD_SIZEOF_GREGSET.

Referenced by aarch64_fbsd_init_abi().

## ◆ aarch64_fbsd_sigframe_init()

static void aarch64_fbsd_sigframe_init | ( | const struct tramp_frame * | self,
|  | struct frame_info * | this_frame,
|  | struct trad_frame_cache * | this_cache,
|  | CORE_ADDR | func
| ) |  |
| static

Definition at line 63 of file aarch64-fbsd-tdep.c.

References AARCH64_CPSR_REGNUM, AARCH64_FPCR_REGNUM, AARCH64_FPSR_REGNUM, AARCH64_LR_REGNUM, AARCH64_MCONTEXT_FLAG_FP_VALID, AARCH64_MCONTEXT_FLAGS_OFFSET, AARCH64_MCONTEXT_FPREG_SIZE, AARCH64_MCONTEXT_FPREGS_OFFSET, AARCH64_MCONTEXT_REG_SIZE, AARCH64_PC_REGNUM, AARCH64_SIGFRAME_UCONTEXT_OFFSET, AARCH64_SP_REGNUM, AARCH64_UCONTEXT_MCONTEXT_OFFSET, AARCH64_V0_REGNUM, AARCH64_X0_REGNUM, gdbarch::byte_order, extract_unsigned_integer(), frame_id_build(), func, gdbarch_byte_order(), get_frame_arch(), get_frame_register_unsigned(), target_read_memory(), trad_frame_set_id(), and trad_frame_set_reg_addr().

## Variable Documentation

## ◆ aarch64_fbsd_fpregmap

const struct regcache_map_entry aarch64_fbsd_fpregmap[]
| static

Initial value:
=
{
{ 32, AARCH64_V0_REGNUM, 16 },
{ 1, AARCH64_FPSR_REGNUM, 4 },
{ 1, AARCH64_FPCR_REGNUM, 4 },
{ 0 }
}
AARCH64_FPSR_REGNUM
Definition: aarch64.h:38
AARCH64_FPCR_REGNUM
Definition: aarch64.h:39
AARCH64_V0_REGNUM
Definition: aarch64.h:36

Definition at line 142 of file aarch64-fbsd-tdep.c.

## ◆ aarch64_fbsd_fpregset

const struct regset aarch64_fbsd_fpregset

Initial value:
=
{
aarch64_fbsd_fpregmap,
regcache_supply_regset, regcache_collect_regset
}
regcache_supply_regset
void regcache_supply_regset(const struct regset *regset, struct regcache *regcache, int regnum, const void *buf, size_t size)
Definition: regcache.c:1192
aarch64_fbsd_fpregmap
static const struct regcache_map_entry aarch64_fbsd_fpregmap[]
Definition: aarch64-fbsd-tdep.c:142
regcache_collect_regset
void regcache_collect_regset(const struct regset *regset, const struct regcache *regcache, int regnum, void *buf, size_t size)
Definition: regcache.c:1211

Definition at line 158 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_fetch_inferior_registers(), aarch64_fbsd_iterate_over_regset_sections(), and aarch64_fbsd_store_inferior_registers().

## ◆ aarch64_fbsd_gregmap

const struct regcache_map_entry aarch64_fbsd_gregmap[]
| static

Initial value:
=
{
{ 30, AARCH64_X0_REGNUM, 8 },
{ 1, AARCH64_LR_REGNUM, 8 },
{ 1, AARCH64_SP_REGNUM, 8 },
{ 1, AARCH64_PC_REGNUM, 8 },
{ 1, AARCH64_CPSR_REGNUM, 4 },
{ 0 }
}
AARCH64_CPSR_REGNUM
Definition: aarch64.h:35
AARCH64_SP_REGNUM
Definition: aarch64.h:33
AARCH64_PC_REGNUM
Definition: aarch64.h:34
AARCH64_LR_REGNUM
Definition: aarch64.h:32
AARCH64_X0_REGNUM
Definition: aarch64.h:30

Definition at line 132 of file aarch64-fbsd-tdep.c.

## ◆ aarch64_fbsd_gregset

const struct regset aarch64_fbsd_gregset

Initial value:
=
{
aarch64_fbsd_gregmap,
regcache_supply_regset, regcache_collect_regset
}
aarch64_fbsd_gregmap
static const struct regcache_map_entry aarch64_fbsd_gregmap[]
Definition: aarch64-fbsd-tdep.c:132
regcache_supply_regset
void regcache_supply_regset(const struct regset *regset, struct regcache *regcache, int regnum, const void *buf, size_t size)
Definition: regcache.c:1192
regcache_collect_regset
void regcache_collect_regset(const struct regset *regset, const struct regcache *regcache, int regnum, void *buf, size_t size)
Definition: regcache.c:1211

Definition at line 152 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_fetch_inferior_registers(), aarch64_fbsd_iterate_over_regset_sections(), and aarch64_fbsd_store_inferior_registers().

## ◆ aarch64_fbsd_sigframe

const struct tramp_frame aarch64_fbsd_sigframe
| static

Initial value:
=
{
SIGTRAMP_FRAME,
4,
{
{0x910003e0, -1},
{0x91014000, -1},
{0xd2803428, -1},
{0xd4000001, -1},
{TRAMP_SENTINEL_INSN, -1}
},
aarch64_fbsd_sigframe_init
}
TRAMP_SENTINEL_INSN
#define TRAMP_SENTINEL_INSN
Definition: tramp-frame.h:44
SIGTRAMP_FRAME
Definition: frame.h:255
aarch64_fbsd_sigframe_init
static void aarch64_fbsd_sigframe_init(const struct tramp_frame *self, struct frame_info *this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
Definition: aarch64-fbsd-tdep.c:63

Definition at line 116 of file aarch64-fbsd-tdep.c.

Referenced by aarch64_fbsd_init_abi().