This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch, arm] Consistent display of registers in corefile
- From: Yao Qi <yao at codesourcery dot com>
- To: gdb-patches at sourceware dot org
- Date: Thu, 13 Jan 2011 06:38:33 -0600
- Subject: Re: [patch, arm] Consistent display of registers in corefile
- References: <4D022D1A.7030701@codesourcery.com>
On 12/10/2010 07:37 AM, Yao Qi wrote:
> gdb/
> * arm-tdep.c (arm_register_reggroup_p): New.
> (arm_gdbarch_init): Set arm_register_reggroup_p for hook
> register_reggroup_p.
+static int
+arm_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
+ struct reggroup *group)
+{
+ /* FPS register's type is INT, but belongs to float_group. */
+ if (regnum == ARM_FPS_REGNUM)
+ return (group == float_reggroup);
FPS belongs to float_reggroup, save_reggroup, and restore_reggroup,
instead of float_reggroup only.
OK to apply?
+ else
+ return default_register_reggroup_p (gdbarch, regnum, group);
+}
--
Yao Qi
gdb/
* arm-tdep.c (arm_register_reggroup_p): FPS register is in
save_reggroup and restore_reggroup.
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index 9ec410d..d32b685 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -7234,9 +7234,12 @@ static int
arm_register_reggroup_p (struct gdbarch *gdbarch, int regnum,
struct reggroup *group)
{
- /* FPS register's type is INT, but belongs to float_group. */
+ /* FPS register's type is INT, but belongs to float_reggroup,
+ save_regroup, and restore_reggroup. */
if (regnum == ARM_FPS_REGNUM)
- return (group == float_reggroup);
+ return (group == float_reggroup
+ || group == save_reggroup
+ || group == restore_reggroup);
else
return default_register_reggroup_p (gdbarch, regnum, group);
}