28 #include "elf/tic6x.h" 31 #define TIC6X_SP_RT_SIGFRAME 8 33 #define TIC6X_SIGINFO_SIZE 128 36 #define TIC6X_STACK_T_SIZE (3 * 4) 62 return 4 * (
regnum - 0 + 8);
66 return 4 * (
regnum - 34 + 23);
68 return 4 * (tdep->
has_gp ? 55 : 23);
98 for (i = 0; i < 10; i++)
115 for (i = 34; i < 34 + 32; i++)
139 {0x000045aa, 0x0fffffff},
156 if (syscall_number == 139 )
182 switch (bfd_elf_get_obj_attr_int (info.
abfd, OBJ_ATTR_PROC, Tag_ISA))
184 case C6XABI_Tag_ISA_C64XP:
185 case C6XABI_Tag_ISA_C67XP:
const gdb_byte tic6x_bkpt_illegal_opcode_be[]
CORE_ADDR(* syscall_next_pc)(struct frame_info *frame)
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 void tic6x_uclinux_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
CORE_ADDR get_frame_pc(struct frame_info *frame)
#define TRAMP_SENTINEL_INSN
#define TIC6X_SP_RT_SIGFRAME
CORE_ADDR frame_unwind_caller_pc(struct frame_info *this_frame)
void set_solib_ops(struct gdbarch *gdbarch, const struct target_so_ops *new_ops)
void trad_frame_set_id(struct trad_frame_cache *this_trad_cache, struct frame_id this_id)
const gdb_byte * breakpoint
void linux_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
struct gdbarch_tdep * gdbarch_tdep(struct gdbarch *gdbarch)
static CORE_ADDR tic6x_linux_syscall_next_pc(struct frame_info *frame)
struct target_so_ops dsbt_so_ops
static unsigned int tic6x_register_sigcontext_offset(unsigned int regnum, struct gdbarch *gdbarch)
void _initialize_tic6x_linux_tdep(void)
static struct tramp_frame tic6x_linux_rt_sigreturn_tramp_frame
#define TIC6X_STACK_T_SIZE
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 *))
static void tic6x_linux_rt_sigreturn_init(const struct tramp_frame *self, struct frame_info *this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
void tramp_frame_prepend_unwinder(struct gdbarch *gdbarch, const struct tramp_frame *tramp_frame)
unsigned long long ULONGEST
static const gdb_byte tic6x_bkpt_bnop_le[]
enum bfd_endian byte_order
static const gdb_byte tic6x_bkpt_bnop_be[]
struct gdbarch * get_frame_arch(struct frame_info *this_frame)
const gdb_byte tic6x_bkpt_illegal_opcode_le[]
#define TIC6X_SIGINFO_SIZE