Re: RFA: use constructor to build 'struct regset' objects

Jim Blandy
2004-05-20T03:11:00Z

kettenis@gnu.org writes:
> From: Jim Blandy <jimb@redhat.com>
> Date: 18 May 2004 23:11:06 -0500
>
> How's this:
>
> 2004-05-17 Jim Blandy <jimb@redhat.com>
>
> 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.

Committed, thanks.