From mboxrd@z Thu Jan 1 00:00:00 1970 From: kettenis@gnu.org To: jimb@redhat.com Cc: gdb-patches@sources.redhat.com Subject: Re: RFA: use constructor to build 'struct regset' objects Date: Wed, 19 May 2004 08:36:00 -0000 Message-id: <200405190836.i4J8aXKn030936@gatekeeper.osp.nl> References: <200405172148.i4HLm0bc014264@elgar.kettenis.dyndns.org> X-SW-Source: 2004-05/msg00560.html From: Jim Blandy Date: 18 May 2004 23:11:06 -0500 How's this: 2004-05-17 Jim Blandy Use a constructor function to create regset structures. * regset.h (supply_regset_ftype, fill_regset_ftype): New typedefs. (struct regset): Use supply_regset_ftype. Add new 'fill_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. Could you use collect_regset instead of fill_regset. I deliberately added regcache_raw_collect instead of regcache_raw_fill. Oh, and your prototype for fill_regset_ftype is wrong. Should be: typedef void (collect_regset_ftype) (const struct regsecache *, const struct regcache *, int, void *, size_t); (watch the `const'). Consider a patch with those changes pre-approved. Mark