/* Target-dependent code for the Renesas RX for GDB, the GNU debugger.
- Copyright (C) 2008, 2009
- Free Software Foundation, Inc.
+ Copyright (C) 2008-2012 Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
RX_FP_REGNUM = 6,
RX_R15_REGNUM = 15,
RX_PC_REGNUM = 19,
- RX_NUM_REGS = 25
+ RX_ACC_REGNUM = 25,
+ RX_NUM_REGS = 26
};
/* Architecture specific data. */
"r13",
"r14",
"r15",
- "isp",
"usp",
- "intb",
- "pc",
+ "isp",
"psw",
- "bpc",
+ "pc",
+ "intb",
"bpsw",
- "vct",
- "fpsw"
+ "bpc",
+ "fintv",
+ "fpsw",
+ "acc"
};
return reg_names[regnr];
{
if (reg_nr == RX_PC_REGNUM)
return builtin_type (gdbarch)->builtin_func_ptr;
+ else if (reg_nr == RX_ACC_REGNUM)
+ return builtin_type (gdbarch)->builtin_unsigned_long_long;
else
return builtin_type (gdbarch)->builtin_unsigned_long;
}
}
else if (opc.id == RXO_branch
&& opc.op[0].type == RX_Operand_Immediate
- && opc.op[1].type == RX_Operand_Condition
&& next_pc < opc.op[0].addend)
{
/* When a loop appears as the first statement of a function
static CORE_ADDR
rx_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc)
{
- char *name;
+ const char *name;
CORE_ADDR func_addr, func_end;
struct rx_prologue p;
static const struct frame_unwind rx_frame_unwind = {
NORMAL_FRAME,
+ default_frame_unwind_stop_reason,
rx_frame_this_id,
rx_frame_prev_register,
NULL,
}
/* Implement the "breakpoint_from_pc" gdbarch method. */
-const gdb_byte *
+static const gdb_byte *
rx_breakpoint_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr, int *lenptr)
{
static gdb_byte breakpoint[] = { 0x00 };
return gdbarch;
}
+/* -Wmissing-prototypes */
+extern initialize_file_ftype _initialize_rx_tdep;
+
/* Register the above initialization routine. */
+
void
_initialize_rx_tdep (void)
{