This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[PATCH/FR-V] Add FR450 support
- From: Kevin Buettner <kevinb at redhat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Fri, 12 Mar 2004 18:31:26 -0700
- Subject: [PATCH/FR-V] Add FR450 support
- Organization: Red Hat
I've just committed the patch below.
* frv-tdep.c (set_variant_scratch_registers): New function.
* frv-tdep.h (scr0_regnum, scr1_regnum, scr2_regnum, scr3_regnum):
New constants.
From Richard Sandiford <rsandifo@redhat.com>:
* frv-tdep.c (frv_gdbarch_init): Add FR450 support.
Index: frv-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/frv-tdep.c,v
retrieving revision 1.75
diff -u -p -r1.75 frv-tdep.c
--- frv-tdep.c 13 Mar 2004 01:13:04 -0000 1.75
+++ frv-tdep.c 13 Mar 2004 01:21:09 -0000
@@ -239,6 +239,15 @@ set_variant_abi_fdpic (struct gdbarch_td
var->register_names[fdpic_loadmap_interp_regnum] = xstrdup ("loadmap_interp");
}
+static void
+set_variant_scratch_registers (struct gdbarch_tdep *var)
+{
+ var->register_names[scr0_regnum] = xstrdup ("scr0");
+ var->register_names[scr1_regnum] = xstrdup ("scr1");
+ var->register_names[scr2_regnum] = xstrdup ("scr2");
+ var->register_names[scr3_regnum] = xstrdup ("scr3");
+}
+
static const char *
frv_register_name (int reg)
{
@@ -1362,6 +1371,7 @@ frv_gdbarch_init (struct gdbarch_info in
break;
case bfd_mach_fr400:
+ case bfd_mach_fr450:
set_variant_num_gprs (var, 32);
set_variant_num_fprs (var, 32);
break;
@@ -1378,6 +1388,9 @@ frv_gdbarch_init (struct gdbarch_info in
if (elf_flags & EF_FRV_FDPIC)
set_variant_abi_fdpic (var);
+ if (elf_flags & EF_FRV_CPU_FR450)
+ set_variant_scratch_registers (var);
+
gdbarch = gdbarch_alloc (&info, var);
set_gdbarch_short_bit (gdbarch, 16);
@@ -1448,6 +1461,7 @@ frv_gdbarch_init (struct gdbarch_info in
break;
case bfd_mach_fr400:
+ case bfd_mach_fr450:
/* fr400-style hardware debugging support. */
var->num_hw_watchpoints = 2;
var->num_hw_breakpoints = 4;
Index: frv-tdep.h
===================================================================
RCS file: /cvs/src/src/gdb/frv-tdep.h,v
retrieving revision 1.3
diff -u -p -r1.3 frv-tdep.h
--- frv-tdep.h 13 Mar 2004 01:13:04 -0000 1.3
+++ frv-tdep.h 13 Mar 2004 01:21:09 -0000
@@ -58,6 +58,10 @@ enum {
dbar1_regnum = 138,
dbar2_regnum = 139,
dbar3_regnum = 140,
+ scr0_regnum = 141,
+ scr1_regnum = 142,
+ scr2_regnum = 143,
+ scr3_regnum = 144,
lr_regnum = 145,
lcr_regnum = 146,
iacc0h_regnum = 147,