diff options
author | Kevin Buettner <kevinb@redhat.com> | 2004-03-13 01:24:20 +0000 |
---|---|---|
committer | Kevin Buettner <kevinb@redhat.com> | 2004-03-13 01:24:20 +0000 |
commit | b2d6d697ea2d4406beb407ee26ac116a1ab25f41 (patch) | |
tree | b279090a5be7bb1d21d9f5a1403a7e5345d72237 /gdb/frv-tdep.c | |
parent | 34ce532e6451c08faebc9a07c0c668d61fede4b5 (diff) | |
download | gdb-b2d6d697ea2d4406beb407ee26ac116a1ab25f41.zip gdb-b2d6d697ea2d4406beb407ee26ac116a1ab25f41.tar.gz gdb-b2d6d697ea2d4406beb407ee26ac116a1ab25f41.tar.bz2 |
Add FR450 support.
Diffstat (limited to 'gdb/frv-tdep.c')
-rw-r--r-- | gdb/frv-tdep.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gdb/frv-tdep.c b/gdb/frv-tdep.c index 6fd82f9..3b0fc1a 100644 --- a/gdb/frv-tdep.c +++ b/gdb/frv-tdep.c @@ -239,6 +239,15 @@ set_variant_abi_fdpic (struct gdbarch_tdep *var) 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 info, struct gdbarch_list *arches) 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 info, struct gdbarch_list *arches) 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 info, struct gdbarch_list *arches) break; case bfd_mach_fr400: + case bfd_mach_fr450: /* fr400-style hardware debugging support. */ var->num_hw_watchpoints = 2; var->num_hw_breakpoints = 4; |