This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[RFA] Eliminate hard coded constant num_regs in mips_gdbarch_init
- From: fnf at intrinsity dot com (Fred Fish)
- To: gdb-patches at sources dot redhat dot com
- Cc: fnf at intrinsity dot com (Fred Fish)
- Date: Fri, 27 Jun 2003 12:28:33 -0500 (CDT)
- Subject: [RFA] Eliminate hard coded constant num_regs in mips_gdbarch_init
- Reply-to: fnf at intrinsity dot com (Fred Fish)
It seems wrong to hard code the number of registers in
mips_gdbarch_init. Here is one way to fix it, for the case
"num_regs=90", and possibly for the "num_regs=71" case also.
However using sizeof(mips_generic_reg_names) is somewhat of a
misleading way to find the number of strings in MIPS_REGISTER_NAMES
and I'm not too thrilled about using a hard coded 32 instead of
something like "sizeof(mips_gpr_names)/sizeof(char*)".
-Fred
2003-06-25 Fred Fish <fnf@intrinsity.com>
* mips-tdep.c (mips_gdbarch_init): Set num_regs to be the number
of base registers (32) plus the number of machine dependent
register names, which should equal the number of machine dependent
registers.
Index: mips-tdep.c
===================================================================
RCS file: /mips/newtools/fsf/gdb/gdb/mips-tdep.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -c -p -r1.21 -r1.22
*** mips-tdep.c 2003/06/23 14:31:26 1.21
--- mips-tdep.c 2003/06/26 02:36:53 1.22
*************** mips_gdbarch_init (struct gdbarch_info i
*** 5908,5914 ****
if (info.osabi == GDB_OSABI_IRIX)
num_regs = 71;
else
! num_regs = 90;
set_gdbarch_num_regs (gdbarch, num_regs);
set_gdbarch_num_pseudo_regs (gdbarch, num_regs);
--- 5908,5914 ----
if (info.osabi == GDB_OSABI_IRIX)
num_regs = 71;
else
! num_regs = 32 + sizeof(mips_generic_reg_names)/sizeof(char *);
set_gdbarch_num_regs (gdbarch, num_regs);
set_gdbarch_num_pseudo_regs (gdbarch, num_regs);