aboutsummaryrefslogtreecommitdiff
path: root/gdb/i386-tdep.c
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2004-05-20 00:53:06 +0000
committerJim Blandy <jimb@codesourcery.com>2004-05-20 00:53:06 +0000
commitbe07a590ed0a975673fb86e13d07362ff930c750 (patch)
tree45203347f4831ce8f5b982aaaa4174eb971ccd92 /gdb/i386-tdep.c
parente14ad0e71ad3ddfb0b603ef48b28f530c49024e7 (diff)
downloadgdb-be07a590ed0a975673fb86e13d07362ff930c750.zip
gdb-be07a590ed0a975673fb86e13d07362ff930c750.tar.gz
gdb-be07a590ed0a975673fb86e13d07362ff930c750.tar.bz2
Use a constructor function to create regset structures.
* regset.h (supply_regset_ftype, collect_regset_ftype): New typedefs. (struct regset): Use supply_regset_ftype. Add new 'collect_regset' member. (regset_xmalloc): New declaration. * regset.c: New file. * am64-tdep.c (amd64_regset_from_core_section): Use regset_xmalloc to construct regset structures. * amd64obsd-tdep.c (amd64obsd_regset_from_core_section): Same. * i386-tdep.c (i386_regset_from_core_section): Same. * i386nbsd-tdep.c (i386nbsd_aout_regset_from_core_section): Same. * i386obsd-tdep.c (i386obsd_aout_regset_from_core_section): Same. * sparc64fbsd-tdep.c (sparc64fbsd_init_abi): Same. * sparc64nbsd-tdep.c (sparc64nbsd_init_abi): Same. * sparc64obsd-tdep.c (sparc64obsd_init_abi): Same. * sparcnbsd-tdep.c (sparc32nbsd_init_abi): Same. * Makefile.in (COMMON_OBS): Add regset.o. (regset.o): New rule.
Diffstat (limited to 'gdb/i386-tdep.c')
-rw-r--r--gdb/i386-tdep.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index 5f39529..9981059 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -1662,11 +1662,7 @@ i386_regset_from_core_section (struct gdbarch *gdbarch,
if (strcmp (sect_name, ".reg") == 0 && sect_size == tdep->sizeof_gregset)
{
if (tdep->gregset == NULL)
- {
- tdep->gregset = XMALLOC (struct regset);
- tdep->gregset->descr = tdep;
- tdep->gregset->supply_regset = i386_supply_gregset;
- }
+ tdep->gregset = regset_xmalloc (tdep, i386_supply_gregset, NULL);
return tdep->gregset;
}
@@ -1675,11 +1671,7 @@ i386_regset_from_core_section (struct gdbarch *gdbarch,
&& sect_size == I387_SIZEOF_FXSAVE))
{
if (tdep->fpregset == NULL)
- {
- tdep->fpregset = XMALLOC (struct regset);
- tdep->fpregset->descr = tdep;
- tdep->fpregset->supply_regset = i386_supply_fpregset;
- }
+ tdep->fpregset = regset_xmalloc (tdep, i386_supply_fpregset, NULL);
return tdep->fpregset;
}