This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[rfc] [13/15] Add gdbarch to register_name callback in i386
- From: Markus Deuling <deuling at de dot ibm dot com>
- To: GDB Patches <gdb-patches at sourceware dot org>
- Cc: Ulrich Weigand <uweigand at de dot ibm dot com>, Mark Kettenis <mark dot kettenis at xs4all dot nl>
- Date: Wed, 31 Oct 2007 11:46:10 +0100
- Subject: [rfc] [13/15] Add gdbarch to register_name callback in i386
Hi,
this patch adds gdbarch to register_name callback in i386-tdep.{c,h} and i386-linux-tdep.c
Is this ok to commit?
ChangeLog:
* i386-tdep.c (i386_register_name): Add gdbarch parameter. Replace
current_gdbarch by gdbarch.
(i386_register_type): Replace ·current_gdbarch by gdbarch.
* i386-tdep.h (i386_register_name): Add gdbarch parameter.
* i386-linux-tdep.c (i386_linux_register_name): Add gdbarch parameter.
--
Markus Deuling
GNU Toolchain for Linux on Cell BE
deuling@de.ibm.com
diff -urpN src/gdb/i386-linux-tdep.c dev/gdb/i386-linux-tdep.c
--- src/gdb/i386-linux-tdep.c 2007-10-19 14:26:33.000000000 +0200
+++ dev/gdb/i386-linux-tdep.c 2007-10-31 07:52:31.000000000 +0100
@@ -38,13 +38,13 @@
/* Return the name of register REG. */
static const char *
-i386_linux_register_name (int reg)
+i386_linux_register_name (struct gdbarch *gdbarch, int reg)
{
/* Deal with the extra "orig_eax" pseudo register. */
if (reg == I386_LINUX_ORIG_EAX_REGNUM)
return "orig_eax";
- return i386_register_name (reg);
+ return i386_register_name (gdbarch, reg);
}
/* Return non-zero, when the register is in the corresponding register
diff -urpN src/gdb/i386-tdep.c dev/gdb/i386-tdep.c
--- src/gdb/i386-tdep.c 2007-10-24 22:29:14.000000000 +0200
+++ dev/gdb/i386-tdep.c 2007-10-31 07:52:26.000000000 +0100
@@ -152,9 +152,9 @@ i386_fpc_regnum_p (int regnum)
/* Return the name of register REGNUM. */
const char *
-i386_register_name (int regnum)
+i386_register_name (struct gdbarch *gdbarch, int regnum)
{
- if (i386_mmx_regnum_p (current_gdbarch, regnum))
+ if (i386_mmx_regnum_p (gdbarch, regnum))
return i386_mmx_names[regnum - I387_MM0_REGNUM];
if (regnum >= 0 && regnum < i386_num_register_names)
@@ -1750,7 +1750,7 @@ i386_register_type (struct gdbarch *gdba
return i386_sse_type (gdbarch);
#define I387_ST0_REGNUM I386_ST0_REGNUM
-#define I387_NUM_XMM_REGS (gdbarch_tdep (current_gdbarch)->num_xmm_regs)
+#define I387_NUM_XMM_REGS (gdbarch_tdep (gdbarch)->num_xmm_regs)
if (regnum == I387_MXCSR_REGNUM)
return i386_mxcsr_type;
diff -urpN src/gdb/i386-tdep.h dev/gdb/i386-tdep.h
--- src/gdb/i386-tdep.h 2007-08-23 20:08:34.000000000 +0200
+++ dev/gdb/i386-tdep.h 2007-10-31 07:52:26.000000000 +0100
@@ -168,7 +168,7 @@ extern struct type *i386_sse_type (struc
extern CORE_ADDR i386_pe_skip_trampoline_code (CORE_ADDR pc, char *name);
/* Return the name of register REGNUM. */
-extern char const *i386_register_name (int regnum);
+extern char const *i386_register_name (struct gdbarch * gdbarch, int regnum);
/* Return non-zero if REGNUM is a member of the specified group. */
extern int i386_register_reggroup_p (struct gdbarch *gdbarch, int regnum,