40 #include "floatformat.h"
49 #include "opcode/nios2.h"
152 warning (
_(
"Dwarf-2 uses unmapped register #%d"), dw_reg);
163 "zero",
"at",
"r2",
"r3",
"r4",
"r5",
"r6",
"r7",
164 "r8",
"r9",
"r10",
"r11",
"r12",
"r13",
"r14",
"r15",
165 "r16",
"r17",
"r18",
"r19",
"r20",
"r21",
"r22",
"r23",
166 "et",
"bt",
"gp",
"sp",
"fp",
"ea",
"sstatus",
"ra",
168 "status",
"estatus",
"bstatus",
"ienable",
169 "ipending",
"cpuid",
"ctl6",
"exception",
170 "pteaddr",
"tlbacc",
"tlbmisc",
"eccinj",
171 "badaddr",
"config",
"mpubase",
"mpuacc"
282 static const struct nios2_opcode *
294 insn = (
unsigned int) memword;
297 return nios2_find_opcode_hash (insn, mach);
306 unsigned long mach,
int *ra,
int *rb,
int *rc)
308 if (op->match == MATCH_R1_ADD || op->match == MATCH_R1_MOV)
310 *ra = GET_IW_R_A (insn);
311 *rb = GET_IW_R_B (insn);
312 *rc = GET_IW_R_C (insn);
323 unsigned long mach,
int *ra,
int *rb,
int *rc)
325 if (op->match == MATCH_R1_SUB)
327 *ra = GET_IW_R_A (insn);
328 *rb = GET_IW_R_B (insn);
329 *rc = GET_IW_R_C (insn);
341 unsigned long mach,
int *ra,
int *rb,
int *imm)
343 if (op->match == MATCH_R1_ADDI)
345 *ra = GET_IW_I_A (insn);
346 *rb = GET_IW_I_B (insn);
347 *imm = (signed) (GET_IW_I_IMM16 (insn) << 16) >> 16;
359 unsigned long mach,
int *ra,
int *rb,
unsigned int *uimm)
361 if (op->match == MATCH_R1_ORHI)
363 *ra = GET_IW_I_A (insn);
364 *rb = GET_IW_I_B (insn);
365 *uimm = GET_IW_I_IMM16 (insn);
377 unsigned long mach,
int *ra,
int *rb,
int *imm)
379 if (op->match == MATCH_R1_STW || op->match == MATCH_R1_STWIO)
381 *ra = GET_IW_I_A (insn);
382 *rb = GET_IW_I_B (insn);
383 *imm = (signed) (GET_IW_I_IMM16 (insn) << 16) >> 16;
395 unsigned long mach,
int *ra,
int *rb,
int *imm)
397 if (op->match == MATCH_R1_LDW || op->match == MATCH_R1_LDWIO)
399 *ra = GET_IW_I_A (insn);
400 *rb = GET_IW_I_B (insn);
401 *imm = (signed) (GET_IW_I_IMM16 (insn) << 16) >> 16;
412 unsigned long mach,
int *ra,
int *rc)
414 if (op->match == MATCH_R1_RDCTL)
416 *ra = GET_IW_R_IMM5 (insn);
417 *rc = GET_IW_R_C (insn);
440 unsigned long mach,
int *ra,
int *rb,
int *imm,
469 *imm = (signed) (GET_IW_I_IMM16 (insn) << 16) >> 16;
470 *ra = GET_IW_I_A (insn);
471 *rb = GET_IW_I_B (insn);
481 unsigned long mach,
unsigned int *uimm)
483 if (op->match == MATCH_R1_JMPI)
485 *uimm = GET_IW_J_IMM26 (insn) << 2;
497 unsigned long mach,
unsigned int *uimm)
499 if (op->match == MATCH_R1_CALL)
501 *uimm = GET_IW_J_IMM26 (insn) << 2;
513 unsigned long mach,
int *ra)
518 *ra = GET_IW_I_A (insn);
539 unsigned long mach,
int *ra)
541 if (op->match == MATCH_R1_CALLR)
543 *ra = GET_IW_I_A (insn);
554 unsigned long mach,
unsigned int *uimm)
556 if (op->match == MATCH_R1_BREAK)
558 *uimm = GET_IW_R_IMM5 (insn);
569 unsigned long mach,
unsigned int *uimm)
571 if (op->match == MATCH_R1_TRAP)
573 *uimm = GET_IW_R_IMM5 (insn);
595 int ninsns, max_insns = 5;
597 const struct nios2_opcode *op = NULL;
605 if (current_pc <= start_pc)
619 for (ninsns = 0; ninsns < max_insns; ninsns++)
647 if (ninsns == max_insns)
736 int ninsns, max_insns = 50;
745 struct reg_value temp_value[NIOS2_NUM_REGS];
754 int exception_handler = 0;
768 "{ nios2_analyze_prologue start=%s, current=%s ",
776 prologue_end = start_pc;
777 for (ninsns = 0; ninsns < max_insns; ninsns++)
781 const struct nios2_opcode *op;
784 unsigned int reglist;
788 if (pc == current_pc)
794 memcpy (temp_value, value,
sizeof (temp_value));
852 if (value[rb].
reg == 0)
853 value[rc].
reg = value[ra].
reg;
854 else if (value[ra].
reg == 0)
855 value[rc].
reg = value[rb].
reg;
871 && value[rc].
reg != 0)
877 if (value[rb].
reg == 0)
878 value[rc].
reg = value[ra].
reg;
900 value[rb].
reg = value[ra].
reg;
915 value[rb].
reg = (value[ra].
reg == 0) ? 0 : -1;
927 int orig = value[rb].
reg;
945 exception_handler = 1;
975 for (i = 2 ; i <= 3 ; i++)
977 for (i = 9 ; i <= 15 ; i++)
1001 unsigned int next_insn;
1002 const struct nios2_opcode *next_op
1006 pc += next_op->size;
1015 unsigned int next_insn;
1016 const struct nios2_opcode *next_op
1040 if (this_frame == NULL)
1041 return prologue_end;
1050 if (exception_handler)
1095 if (ra == current_pc)
1100 "<noreturn ADJUST %s, r31@r%d+?>, r%d@r%d+?> }\n",
1149 cache->
cfa = frame_high;
1152 if (exception_handler)
1163 return prologue_end;
1183 if (post_prologue_pc != 0)
1184 return max (start_pc, post_prologue_pc);
1212 static const gdb_byte r1_breakpoint_le[] = {0xfa, 0x6f, 0x3b, 0x0};
1213 static const gdb_byte r1_breakpoint_be[] = {0x0, 0x3b, 0x6f, 0xfa};
1215 if (byte_order_for_code == BFD_ENDIAN_BIG)
1216 return r1_breakpoint_be;
1218 return r1_breakpoint_le;
1226 if (info->endian == BFD_ENDIAN_BIG)
1227 return print_insn_big_nios2 (memaddr, info);
1229 return print_insn_little_nios2 (memaddr, info);
1282 int stack_offset = 0;
1291 for (argnum = 0; argnum < nargs; argnum++)
1306 for (argnum = 0; argnum < nargs; argnum++)
1310 struct value *arg = args[argnum];
1322 int partial_len = (len < 4 ? len : 4);
1339 stack_offset +=
align_up (partial_len, 4);
1378 void **this_prologue_cache)
1385 if (*this_prologue_cache)
1386 return *this_prologue_cache;
1389 *this_prologue_cache = cache;
1412 if (cache->
base == 0)
1420 static struct value *
1477 nios2_frame_base_address
1493 if (*this_cache != NULL)
1496 *this_cache = this_trad_cache;
1512 return this_trad_cache;
1529 static struct value *
1531 void **this_cache,
int regnum)
1642 pc = (pc & 0xf0000000) | uimm;
1694 static struct gdbarch *
1697 struct gdbarch *gdbarch;
1699 int register_bytes, i;
1714 if (feature == NULL)
1797 if (tdep->
jb_pc >= 0)
1823 _(
"Set Nios II debugging."),
1824 _(
"Show Nios II debugging."),
1825 _(
"When on, Nios II specific debugging is enabled."),
void set_gdbarch_num_regs(struct gdbarch *gdbarch, int num_regs)
void set_gdbarch_double_bit(struct gdbarch *gdbarch, int double_bit)
void set_gdbarch_frame_align(struct gdbarch *gdbarch, gdbarch_frame_align_ftype frame_align)
void set_gdbarch_float_format(struct gdbarch *gdbarch, const struct floatformat **float_format)
ULONGEST extract_unsigned_integer(const gdb_byte *, int, enum bfd_endian)
CORE_ADDR(* syscall_next_pc)(struct frame_info *frame)
struct frame_id frame_id_build(CORE_ADDR stack_addr, CORE_ADDR code_addr)
CORE_ADDR extract_typed_address(const gdb_byte *buf, struct type *type)
#define NIOS2_BSTATUS_REGNUM
void set_gdbarch_get_longjmp_target(struct gdbarch *gdbarch, gdbarch_get_longjmp_target_ftype get_longjmp_target)
CORE_ADDR get_frame_address_in_block(struct frame_info *this_frame)
#define NIOS2_PTEADDR_REGNUM
initialize_file_ftype _initialize_nios2_tdep
struct type * builtin_func_ptr
static void nios2_setup_default(struct nios2_unwind_cache *cache)
void set_gdbarch_float_bit(struct gdbarch *gdbarch, int float_bit)
CORE_ADDR get_frame_pc(struct frame_info *frame)
static int nios2_stub_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **cache)
void gdbarch_init_osabi(struct gdbarch_info info, struct gdbarch *gdbarch)
static const char *const nios2_reg_names[NIOS2_NUM_REGS]
static struct nios2_unwind_cache * nios2_frame_unwind_cache(struct frame_info *this_frame, void **this_prologue_cache)
static int nios2_match_rdctl(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rc)
const struct floatformat * floatformats_ieee_double[BFD_ENDIAN_UNKNOWN]
struct value * frame_unwind_got_memory(struct frame_info *frame, int regnum, CORE_ADDR addr)
void warning(const char *fmt,...)
void trad_frame_set_reg_realreg(struct trad_frame_cache *this_trad_cache, int regnum, int realreg)
void set_gdbarch_stab_reg_to_regnum(struct gdbarch *gdbarch, gdbarch_stab_reg_to_regnum_ftype stab_reg_to_regnum)
void trad_frame_set_id(struct trad_frame_cache *this_trad_cache, struct frame_id this_id)
static int nios2_match_addi(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rb, int *imm)
static int nios2_dwarf_reg_to_regnum(struct gdbarch *gdbarch, int dw_reg)
ULONGEST align_down(ULONGEST v, int n)
ULONGEST frame_unwind_register_unsigned(struct frame_info *frame, int regnum)
void regcache_cooked_write_signed(struct regcache *regcache, int regnum, LONGEST val)
void set_gdbarch_short_bit(struct gdbarch *gdbarch, int short_bit)
static struct trad_frame_cache * nios2_stub_frame_cache(struct frame_info *this_frame, void **this_cache)
const struct builtin_type * builtin_type(struct gdbarch *gdbarch)
void frame_unwind_register(struct frame_info *frame, int regnum, gdb_byte *buf)
const char * tdesc_register_name(struct gdbarch *gdbarch, int regno)
static int nios2_match_break(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, unsigned int *uimm)
#define NIOS2_TLBMISC_REGNUM
int safe_read_memory_integer(CORE_ADDR memaddr, int len, enum bfd_endian byte_order, LONGEST *return_value)
#define NIOS2_ESTATUS_REGNUM
static int nios2_dwarf2gdb_regno_map[]
static int nios2_match_branch(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rb, int *imm, enum branch_condition *cond)
static CORE_ADDR nios2_analyze_prologue(struct gdbarch *gdbarch, const CORE_ADDR start_pc, const CORE_ADDR current_pc, struct nios2_unwind_cache *cache, struct frame_info *this_frame)
struct gdbarch_list * gdbarch_list_lookup_by_info(struct gdbarch_list *arches, const struct gdbarch_info *info)
CORE_ADDR skip_prologue_using_sal(struct gdbarch *gdbarch, CORE_ADDR func_addr)
static CORE_ADDR nios2_frame_align(struct gdbarch *gdbarch, CORE_ADDR addr)
static int nios2_match_callr(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra)
static void nios2_extract_return_value(struct gdbarch *gdbarch, struct type *valtype, struct regcache *regcache, gdb_byte *valbuf)
struct address_space * get_frame_address_space(struct frame_info *frame)
int gdbarch_num_regs(struct gdbarch *gdbarch)
#define NIOS2_EXCEPTION_REGNUM
#define NIOS2_OPCODE_SIZE
void set_gdbarch_dwarf2_reg_to_regnum(struct gdbarch *gdbarch, gdbarch_dwarf2_reg_to_regnum_ftype dwarf2_reg_to_regnum)
struct gdbarch_tdep * gdbarch_tdep(struct gdbarch *gdbarch)
void tdesc_data_cleanup(void *data_untyped)
void frame_unwind_append_unwinder(struct gdbarch *gdbarch, const struct frame_unwind *unwinder)
static struct type * nios2_register_type(struct gdbarch *gdbarch, int regno)
#define FRAME_OBSTACK_ZALLOC(TYPE)
const char * paddress(struct gdbarch *gdbarch, CORE_ADDR addr)
struct value * frame_unwind_got_constant(struct frame_info *frame, int regnum, ULONGEST val)
void gdbarch_register(enum bfd_architecture bfd_architecture, gdbarch_init_ftype *init, gdbarch_dump_tdep_ftype *dump_tdep)
void set_gdbarch_addr_bit(struct gdbarch *gdbarch, int addr_bit)
void trad_frame_get_id(struct trad_frame_cache *this_trad_cache, struct frame_id *this_id)
int tdesc_numbered_register(const struct tdesc_feature *feature, struct tdesc_arch_data *data, int regno, const char *name)
void frame_base_set_default(struct gdbarch *gdbarch, const struct frame_base *default_base)
static int nios2_match_sub(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rb, int *rc)
static int nios2_match_stw(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rb, int *imm)
static CORE_ADDR nios2_skip_prologue(struct gdbarch *gdbarch, CORE_ADDR start_pc)
static CORE_ADDR nios2_get_next_pc(struct frame_info *frame, CORE_ADDR pc)
void set_gdbarch_register_type(struct gdbarch *gdbarch, gdbarch_register_type_ftype register_type)
static void nios2_init_cache(struct nios2_unwind_cache *cache, CORE_ADDR pc)
struct type * check_typedef(struct type *type)
const gdb_byte * value_contents(struct value *value)
static void nios2_store_return_value(struct gdbarch *gdbarch, struct type *valtype, struct regcache *regcache, const gdb_byte *valbuf)
void initialize_file_ftype(void)
static int nios2_match_jmpi(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, unsigned int *uimm)
void set_gdbarch_stack_frame_destroyed_p(struct gdbarch *gdbarch, gdbarch_stack_frame_destroyed_p_ftype stack_frame_destroyed_p)
void set_gdbarch_sp_regnum(struct gdbarch *gdbarch, int sp_regnum)
static int nios2_match_trap(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, unsigned int *uimm)
void set_gdbarch_dummy_id(struct gdbarch *gdbarch, gdbarch_dummy_id_ftype dummy_id)
void fprintf_unfiltered(struct ui_file *stream, const char *format,...)
static CORE_ADDR nios2_unwind_sp(struct gdbarch *gdbarch, struct frame_info *this_frame)
void insert_single_step_breakpoint(struct gdbarch *gdbarch, struct address_space *aspace, CORE_ADDR next_pc)
static CORE_ADDR nios2_unwind_pc(struct gdbarch *gdbarch, struct frame_info *next_frame)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
#define NIOS2_IPENDING_REGNUM
int find_pc_partial_function(CORE_ADDR pc, const char **name, CORE_ADDR *address, CORE_ADDR *endaddr)
LONGEST get_frame_register_signed(struct frame_info *frame, int regnum)
#define NIOS2_FIRST_ARGREG
static void nios2_stub_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
void set_gdbarch_unwind_pc(struct gdbarch *gdbarch, gdbarch_unwind_pc_ftype unwind_pc)
void set_gdbarch_breakpoint_from_pc(struct gdbarch *gdbarch, gdbarch_breakpoint_from_pc_ftype breakpoint_from_pc)
struct type * builtin_uint32
int default_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_prologue_cache)
#define NIOS2_STATUS_REGNUM
static int nios2_match_calli(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, unsigned int *uimm)
static int nios2_print_insn(bfd_vma memaddr, disassemble_info *info)
struct reg_value reg_value[NIOS2_NUM_REGS]
static struct gdbarch * nios2_gdbarch_init(struct gdbarch_info info, struct gdbarch_list *arches)
struct trad_frame_cache * trad_frame_cache_zalloc(struct frame_info *this_frame)
void set_gdbarch_unwind_sp(struct gdbarch *gdbarch, gdbarch_unwind_sp_ftype unwind_sp)
static const struct frame_unwind nios2_frame_unwind
struct cmd_list_element * setdebuglist
#define NIOS2_LAST_ARGREG
ULONGEST get_frame_register_unsigned(struct frame_info *frame, int regnum)
struct ui_file * gdb_stdlog
void set_gdbarch_long_long_bit(struct gdbarch *gdbarch, int long_long_bit)
struct frame_info * this_frame
const struct target_desc * target_desc
static struct value * nios2_stub_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
void set_gdbarch_software_single_step(struct gdbarch *gdbarch, gdbarch_software_single_step_ftype software_single_step)
#define NIOS2_IENABLE_REGNUM
const struct floatformat * floatformats_ieee_single[BFD_ENDIAN_UNKNOWN]
#define NIOS2_ECCINJ_REGNUM
struct reg_saved reg_saved[NIOS2_NUM_REGS]
void tdesc_use_registers(struct gdbarch *gdbarch, const struct target_desc *target_desc, struct tdesc_arch_data *early_data)
const char const char int
int core_addr_lessthan(CORE_ADDR lhs, CORE_ADDR rhs)
#define NIOS2_TLBACC_REGNUM
#define NIOS2_BADADDR_REGNUM
ULONGEST align_up(ULONGEST v, int n)
static int nios2_software_single_step(struct frame_info *frame)
static int nios2_match_add(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rb, int *rc)
int frame_relative_level(struct frame_info *fi)
#define TYPE_CODE(thistype)
struct value * frame_unwind_got_register(struct frame_info *frame, int regnum, int new_regnum)
void regcache_cooked_write_unsigned(struct regcache *regcache, int regnum, ULONGEST val)
int target_read_memory(CORE_ADDR memaddr, gdb_byte *myaddr, ssize_t len)
CORE_ADDR find_function_addr(struct value *function, struct type **retval_type)
struct type * builtin_data_ptr
static int in_plt_section(CORE_ADDR pc)
void set_gdbarch_int_bit(struct gdbarch *gdbarch, int int_bit)
static enum return_value_convention nios2_return_value(struct gdbarch *gdbarch, struct value *function, struct type *type, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
struct type * tdesc_register_type(struct gdbarch *gdbarch, int regno)
static int nios2_match_ldw(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rb, int *imm)
#define NIOS2_CPUID_REGNUM
void dwarf2_append_unwinders(struct gdbarch *gdbarch)
enum register_status regcache_cooked_read(struct regcache *regcache, int regnum, gdb_byte *buf)
static int nios2_get_longjmp_target(struct frame_info *frame, CORE_ADDR *pc)
void trad_frame_set_this_base(struct trad_frame_cache *this_trad_cache, CORE_ADDR this_base)
static void nios2_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
void set_gdbarch_double_format(struct gdbarch *gdbarch, const struct floatformat **double_format)
struct tdesc_arch_data * tdesc_data_alloc(void)
static int nios2_match_orhi(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra, int *rb, unsigned int *uimm)
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
const struct tdesc_feature * tdesc_find_feature(const struct target_desc *target_desc, const char *name)
int register_size(struct gdbarch *gdbarch, int regnum)
static int nios2_match_jmpr(uint32_t insn, const struct nios2_opcode *op, unsigned long mach, int *ra)
struct type * value_type(const struct value *value)
void set_gdbarch_long_bit(struct gdbarch *gdbarch, int long_bit)
void set_gdbarch_return_value(struct gdbarch *gdbarch, gdbarch_return_value_ftype return_value)
const struct bfd_arch_info * gdbarch_bfd_arch_info(struct gdbarch *gdbarch)
static const gdb_byte * nios2_breakpoint_from_pc(struct gdbarch *gdbarch, CORE_ADDR *bp_addr, int *bp_size)
struct cmd_list_element * showdebuglist
int gdbarch_pc_regnum(struct gdbarch *gdbarch)
static CORE_ADDR nios2_frame_base_address(struct frame_info *this_frame, void **this_cache)
static const struct nios2_opcode * nios2_fetch_insn(struct gdbarch *gdbarch, CORE_ADDR pc, unsigned int *insnp)
#define NIOS2_MPUBASE_REGNUM
static struct frame_id nios2_dummy_id(struct gdbarch *gdbarch, struct frame_info *this_frame)
struct target_desc * tdesc_nios2
static void initialize_tdesc_nios2(void)
#define TYPE_LENGTH(thistype)
void set_gdbarch_ptr_bit(struct gdbarch *gdbarch, int ptr_bit)
void set_gdbarch_push_dummy_call(struct gdbarch *gdbarch, gdbarch_push_dummy_call_ftype push_dummy_call)
static struct value * nios2_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
ULONGEST read_memory_unsigned_integer(CORE_ADDR memaddr, int len, enum bfd_endian byte_order)
static int nios2_in_epilogue_p(struct gdbarch *gdbarch, CORE_ADDR current_pc, CORE_ADDR start_pc)
void write_memory(CORE_ADDR memaddr, const bfd_byte *myaddr, ssize_t len)
void set_gdbarch_skip_prologue(struct gdbarch *gdbarch, gdbarch_skip_prologue_ftype skip_prologue)
static struct gdbarch_data * tdesc_data
PTR xcalloc(size_t number, size_t size)
struct value * trad_frame_get_register(struct trad_frame_cache *this_trad_cache, struct frame_info *this_frame, int regnum)
enum bfd_endian gdbarch_byte_order_for_code(struct gdbarch *gdbarch)
void set_gdbarch_pc_regnum(struct gdbarch *gdbarch, int pc_regnum)
int tdesc_has_registers(const struct target_desc *target_desc)
void set_gdbarch_register_name(struct gdbarch *gdbarch, gdbarch_register_name_ftype register_name)
CORE_ADDR get_frame_func(struct frame_info *this_frame)
static int nios2_stack_frame_destroyed_p(struct gdbarch *gdbarch, CORE_ADDR pc)
struct gdbarch * gdbarch_alloc(const struct gdbarch_info *info, struct gdbarch_tdep *tdep)
void set_gdbarch_inner_than(struct gdbarch *gdbarch, gdbarch_inner_than_ftype inner_than)
struct gdbarch * get_frame_arch(struct frame_info *this_frame)
void add_setshow_boolean_cmd(const char *name, enum command_class theclass, int *var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_sfunc_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
void regcache_cooked_write(struct regcache *regcache, int regnum, const gdb_byte *buf)
#define NIOS2_MPUACC_REGNUM
#define NIOS2_CONFIG_REGNUM
void set_gdbarch_print_insn(struct gdbarch *gdbarch, gdbarch_print_insn_ftype print_insn)
const struct target_desc * gdbarch_target_desc(struct gdbarch *gdbarch)
static CORE_ADDR nios2_push_dummy_call(struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
static const char * nios2_register_name(struct gdbarch *gdbarch, int regno)
const ULONGEST const LONGEST len