81 0x67, 0x77, 0x10, 0xf2,
129 0x97, 0xf0, 0x00, 0xad, 0x10, 0xf2, 0xf0, 0x00,
183 if (
name == NULL || strstr (
name,
"sigaction") != NULL)
187 return (strcmp (
"__restore",
name) == 0
188 || strcmp (
"__restore_rt",
name) == 0);
230 CORE_ADDR sigcontext_addr, addr;
233 if ((*this_cache) != NULL)
236 (*this_cache) = cache;
240 sigcontext_addr = cache->
base + 4;
250 sigcontext_addr += 128;
281 void **this_cache,
int regnum)
305 "m32r linux sigtramp",
344#define PSW_OFFSET (4 * 19)
345#define BBPSW_OFFSET (4 * 21)
346#define SPU_OFFSET (4 * 23)
347#define SPI_OFFSET (4 * 26)
349#define M32R_LINUX_GREGS_SIZE (4 * 28)
354 const void *gregs,
size_t size)
356 const gdb_byte *regs = (
const gdb_byte *) gregs;
357 enum bfd_endian byte_order =
366 psw = ((0x00c1 & bbpsw) << 8) | ((0xc100 & psw) >> 8);
399 gdb_byte *regs = (gdb_byte *) gregs;
401 enum bfd_endian byte_order =
bool find_pc_partial_function(CORE_ADDR pc, const char **name, CORE_ADDR *address, CORE_ADDR *endaddr, const struct block **block)
void raw_collect(int regnum, void *buf) const override
void raw_supply(int regnum, const void *buf) override
static void store_unsigned_integer(gdb_byte *addr, int len, enum bfd_endian byte_order, ULONGEST val)
static ULONGEST extract_unsigned_integer(gdb::array_view< const gdb_byte > buf, enum bfd_endian byte_order)
enum unwind_stop_reason default_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
void frame_unwind_append_unwinder(struct gdbarch *gdbarch, const struct frame_unwind *unwinder)
ULONGEST get_frame_register_unsigned(frame_info_ptr frame, int regnum)
CORE_ADDR get_frame_pc(frame_info_ptr frame)
struct frame_id frame_id_build(CORE_ADDR stack_addr, CORE_ADDR code_addr)
CORE_ADDR get_frame_func(frame_info_ptr this_frame)
bool safe_frame_unwind_memory(frame_info_ptr this_frame, CORE_ADDR addr, gdb::array_view< gdb_byte > buffer)
#define FRAME_OBSTACK_ZALLOC(TYPE)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
void set_gdbarch_skip_trampoline_code(struct gdbarch *gdbarch, gdbarch_skip_trampoline_code_ftype *skip_trampoline_code)
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_num_regs(struct gdbarch *gdbarch, int num_regs)
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)
link_map_offsets * linux_ilp32_fetch_link_map_offsets()
void linux_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch, int num_disp_step_buffers)
static CORE_ADDR m32r_linux_sigtramp_start(CORE_ADDR pc, frame_info_ptr this_frame)
static struct m32r_frame_cache * m32r_linux_sigtramp_frame_cache(frame_info_ptr this_frame, void **this_cache)
static void m32r_linux_supply_gregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t size)
static int m32r_linux_pc_in_sigtramp(CORE_ADDR pc, const char *name, frame_info_ptr this_frame)
void _initialize_m32r_linux_tdep()
static const gdb_byte linux_sigtramp_code[]
static void m32r_linux_sigtramp_frame_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
static const gdb_byte linux_rt_sigtramp_code[]
static struct value * m32r_linux_sigtramp_frame_prev_register(frame_info_ptr this_frame, void **this_cache, int regnum)
static const struct regset m32r_linux_gregset
static const struct frame_unwind m32r_linux_sigtramp_frame_unwind
static void m32r_linux_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
static int m32r_linux_sc_reg_offset[]
static CORE_ADDR m32r_linux_rt_sigtramp_start(CORE_ADDR pc, frame_info_ptr this_frame)
static int m32r_pt_regs_offset[]
static void m32r_linux_collect_gregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t size)
static void m32r_linux_iterate_over_regset_sections(struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
#define M32R_LINUX_GREGS_SIZE
static int m32r_linux_sigtramp_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
CORE_ADDR find_solib_trampoline_target(frame_info_ptr frame, CORE_ADDR pc)
void gdbarch_register_osabi(enum bfd_architecture arch, unsigned long machine, enum gdb_osabi osabi, void(*init_osabi)(struct gdbarch_info, struct gdbarch *))
void set_solib_svr4_fetch_link_map_offsets(struct gdbarch *gdbarch, struct link_map_offsets *(*flmo)(void))
CORE_ADDR svr4_fetch_objfile_link_map(struct objfile *objfile)
trad_frame_saved_reg * saved_regs
void set_addr(LONGEST addr)
trad_frame_saved_reg * trad_frame_alloc_saved_regs(struct gdbarch *gdbarch)
struct value * trad_frame_get_prev_register(frame_info_ptr this_frame, trad_frame_saved_reg this_saved_regs[], int regnum)