22 #include "elf/common.h" 70 #define ARM_MCONTEXT_REG_SIZE 4 71 #define ARM_MCONTEXT_VFP_REG_SIZE 8 72 #define ARM_SIGFRAME_UCONTEXT_OFFSET 64 73 #define ARM_UCONTEXT_MCONTEXT_OFFSET 16 74 #define ARM_MCONTEXT_VFP_PTR_OFFSET 72 92 for (
int i = 0; i < 16; i++)
105 && mcontext_vfp_addr != 0)
107 for (
int i = 0; i < 32; i++)
185 "VFP floating-point", cb_data);
void trad_frame_set_reg_addr(struct trad_frame_cache *this_trad_cache, int regnum, CORE_ADDR addr)
struct frame_id frame_id_build(CORE_ADDR stack_addr, CORE_ADDR code_addr)
static const struct regcache_map_entry arm_fbsd_gregmap[]
static const struct regcache_map_entry arm_fbsd_vfpregmap[]
#define TRAMP_SENTINEL_INSN
int safe_read_memory_unsigned_integer(CORE_ADDR memaddr, int len, enum bfd_endian byte_order, ULONGEST *return_value)
static const struct target_desc * arm_fbsd_core_read_description(struct gdbarch *gdbarch, struct target_ops *target, bfd *abfd)
struct target_desc * tdesc_arm_with_vfpv2
void() iterate_over_regset_sections_cb(const char *sect_name, int size, const struct regset *regset, const char *human_name, void *cb_data)
void trad_frame_set_id(struct trad_frame_cache *this_trad_cache, struct frame_id this_id)
enum arm_float_model fp_model
void regcache_supply_regset(const struct regset *regset, struct regcache *regcache, int regnum, const void *buf, size_t size)
struct target_desc * tdesc_arm_with_neon
#define ARM_MCONTEXT_REG_SIZE
struct link_map_offsets * svr4_ilp32_fetch_link_map_offsets(void)
#define ARM_UCONTEXT_MCONTEXT_OFFSET
static void arm_fbsd_sigframe_init(const struct tramp_frame *self, struct frame_info *this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
#define ARM_FBSD_SIZEOF_VFPREGSET
struct gdbarch_tdep * gdbarch_tdep(struct gdbarch *gdbarch)
static const struct tramp_frame arm_fbsd_sigframe
const struct regset arm_fbsd_gregset
const struct target_desc * arm_fbsd_read_description_auxv(struct target_ops *target)
int target_auxv_search(struct target_ops *ops, CORE_ADDR match, CORE_ADDR *valp)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
void set_solib_svr4_fetch_link_map_offsets(struct gdbarch *gdbarch, struct link_map_offsets *(*flmo)(void))
void regcache_collect_regset(const struct regset *regset, const struct regcache *regcache, int regnum, void *buf, size_t size)
void fbsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
#define ARM_MCONTEXT_VFP_REG_SIZE
static void arm_fbsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
ULONGEST get_frame_register_unsigned(struct frame_info *frame, int regnum)
void gdbarch_register_osabi(enum bfd_architecture arch, unsigned long machine, enum gdb_osabi osabi, void(*init_osabi)(struct gdbarch_info, struct gdbarch *))
void _initialize_arm_fbsd_tdep(void)
static void arm_fbsd_iterate_over_regset_sections(struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
void set_gdbarch_software_single_step(struct gdbarch *gdbarch, gdbarch_software_single_step_ftype software_single_step)
#define ARM_MCONTEXT_VFP_PTR_OFFSET
void tramp_frame_prepend_unwinder(struct gdbarch *gdbarch, const struct tramp_frame *tramp_frame)
unsigned long long ULONGEST
std::vector< CORE_ADDR > arm_software_single_step(struct regcache *regcache)
const struct regset arm_fbsd_vfpregset
void set_gdbarch_iterate_over_regset_sections(struct gdbarch *gdbarch, gdbarch_iterate_over_regset_sections_ftype iterate_over_regset_sections)
enum bfd_endian byte_order
struct target_desc * tdesc_arm_with_vfpv3
void set_gdbarch_core_read_description(struct gdbarch *gdbarch, gdbarch_core_read_description_ftype core_read_description)
struct gdbarch * get_frame_arch(struct frame_info *this_frame)
#define ARM_SIGFRAME_UCONTEXT_OFFSET
#define ARM_FBSD_SIZEOF_GREGSET