81#define AARCH64_SIGFRAME_UCONTEXT_OFFSET 80
82#define AARCH64_UCONTEXT_MCONTEXT_OFFSET 16
83#define AARCH64_MCONTEXT_FPREGS_OFFSET 272
84#define AARCH64_MCONTEXT_FLAGS_OFFSET 800
85#define AARCH64_MCONTEXT_FLAG_FP_VALID 0x1
98 CORE_ADDR mcontext_addr
123 {0x910003e0, ULONGEST_MAX},
124 {0x91014000, ULONGEST_MAX},
125 {0xd2803428, ULONGEST_MAX},
126 {0xd4000001, ULONGEST_MAX},
192 "TLS register", cb_data);
201 asection *tls = bfd_get_section_by_name (abfd,
".reg-aarch-tls");
213 CORE_ADDR
lm_addr, CORE_ADDR offset)
225 error (_(
"Unable to fetch %%tpidr"));
229 CORE_ADDR dtv_addr = tpidr;
const struct regset aarch64_fbsd_fpregset
static void aarch64_fbsd_sigframe_init(const struct tramp_frame *self, frame_info_ptr this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
static const struct regcache_map_entry aarch64_fbsd_gregmap[]
#define AARCH64_MCONTEXT_FLAG_FP_VALID
static void aarch64_fbsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
#define AARCH64_UCONTEXT_MCONTEXT_OFFSET
#define AARCH64_MCONTEXT_FPREGS_OFFSET
#define AARCH64_SIGFRAME_UCONTEXT_OFFSET
void _initialize_aarch64_fbsd_tdep()
const struct regset aarch64_fbsd_gregset
static const struct regcache_map_entry aarch64_fbsd_tls_regmap[]
static const struct tramp_frame aarch64_fbsd_sigframe
#define AARCH64_MCONTEXT_FLAGS_OFFSET
const struct regset aarch64_fbsd_tls_regset
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_collect_tls_regset(const struct regset *regset, const struct regcache *regcache, int regnum, void *buf, size_t size)
static void aarch64_fbsd_supply_tls_regset(const struct regset *regset, struct regcache *regcache, int regnum, const void *buf, size_t size)
static CORE_ADDR aarch64_fbsd_get_thread_local_address(struct gdbarch *gdbarch, ptid_t ptid, CORE_ADDR lm_addr, CORE_ADDR offset)
static const struct target_desc * aarch64_fbsd_core_read_description(struct gdbarch *gdbarch, struct target_ops *target, bfd *abfd)
static const struct regcache_map_entry aarch64_fbsd_fpregmap[]
#define AARCH64_FBSD_SIZEOF_GREGSET
#define AARCH64_FBSD_SIZEOF_FPREGSET
#define AARCH64_FBSD_SIZEOF_TLSREGSET
const target_desc * aarch64_read_description(const aarch64_features &features)
enum register_status cooked_read(int regnum, gdb_byte *buf)
void collect_regset(const struct regset *regset, int regbase, int regnum, void *buf, size_t size) const
void supply_regset(const struct regset *regset, int regbase, int regnum, const void *buf, size_t size)
static ULONGEST extract_unsigned_integer(gdb::array_view< const gdb_byte > buf, enum bfd_endian byte_order)
CORE_ADDR fbsd_get_thread_local_address(struct gdbarch *gdbarch, CORE_ADDR dtv_addr, CORE_ADDR lm_addr, CORE_ADDR offset)
void fbsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
ULONGEST get_frame_register_unsigned(frame_info_ptr frame, int regnum)
struct frame_id frame_id_build(CORE_ADDR stack_addr, CORE_ADDR code_addr)
struct gdbarch * get_frame_arch(frame_info_ptr this_frame)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
void set_gdbarch_get_thread_local_address(struct gdbarch *gdbarch, gdbarch_get_thread_local_address_ftype *get_thread_local_address)
void set_gdbarch_core_read_description(struct gdbarch *gdbarch, gdbarch_core_read_description_ftype *core_read_description)
void set_gdbarch_fetch_tls_load_module_address(struct gdbarch *gdbarch, gdbarch_fetch_tls_load_module_address_ftype *fetch_tls_load_module_address)
void set_gdbarch_iterate_over_regset_sections(struct gdbarch *gdbarch, gdbarch_iterate_over_regset_sections_ftype *iterate_over_regset_sections)
void iterate_over_regset_sections_cb(const char *sect_name, int supply_size, int collect_size, const struct regset *regset, const char *human_name, void *cb_data)
struct inferior * current_inferior(void)
static CORE_ADDR lm_addr(struct so_list *so)
void gdbarch_register_osabi(enum bfd_architecture arch, unsigned long machine, enum gdb_osabi osabi, void(*init_osabi)(struct gdbarch_info, struct gdbarch *))
void regcache_collect_regset(const struct regset *regset, const struct regcache *regcache, int regnum, void *buf, size_t size)
struct regcache * get_thread_arch_regcache(process_stratum_target *target, ptid_t ptid, struct gdbarch *gdbarch)
void regcache_supply_regset(const struct regset *regset, struct regcache *regcache, int regnum, const void *buf, size_t size)
static int regcache_map_entry_size(const struct regcache_map_entry *map)
void(* func)(remote_target *remote, char *)
void set_solib_svr4_fetch_link_map_offsets(struct gdbarch *gdbarch, struct link_map_offsets *(*flmo)(void))
struct link_map_offsets * svr4_lp64_fetch_link_map_offsets(void)
CORE_ADDR svr4_fetch_objfile_link_map(struct objfile *objfile)
std::vector< tdesc_feature_up > features
void target_fetch_registers(struct regcache *regcache, int regno)
int target_read_memory(CORE_ADDR memaddr, gdb_byte *myaddr, ssize_t len)
void trad_frame_set_reg_regmap(struct trad_frame_cache *this_trad_cache, const struct regcache_map_entry *regmap, CORE_ADDR addr, size_t size)
void trad_frame_set_id(struct trad_frame_cache *this_trad_cache, struct frame_id this_id)
void tramp_frame_prepend_unwinder(struct gdbarch *gdbarch, const struct tramp_frame *tramp_frame)
#define TRAMP_SENTINEL_INSN