This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: RFA: Remove D10V-specific code from arch-independent modules
- To: Andrew Cagney <ac131313 at cygnus dot com>
- Subject: Re: RFA: Remove D10V-specific code from arch-independent modules
- From: Jim Blandy <jimb at zwingli dot cygnus dot com>
- Date: 05 Jul 2001 17:39:42 -0500
- Cc: gdb-patches at sources dot redhat dot com
- References: <20010629000735.132405E9CB@zwingli.cygnus.com><3B43FE67.5000106@cygnus.com>
This patch is withdrawn for revision; see below.
Andrew Cagney <ac131313@cygnus.com> writes:
> > + struct type *code_ptr_type;
>
>
> should this be a builtin_type? GDB has:
>
>
> > /* Address/pointer types: */
> > /* (C) Language pointer type. Some target platforms use an implicitly
> > {sign,zero} -extended 32 bit C language pointer on a 64 bit ISA. */
> > extern struct type *builtin_type_ptr;
>
> I think having:
>
> extern struct type *builtin_type_data_ptr;
> extern struct type *builtin_type_{func,insn,???}_ptr;
>
> would make more sense. It would also eliminate the need for the hack:
>
> > ! /* We can't create this type until the D10V gdbarch object has been
> > ! made current, or else the size will be wrong. This means we
> > ! can't initialize it in d10v_gdbarch_init. So we do it here, the
> > ! first time we need it. */
> > ! if (! tdep->code_ptr_type)
> > ! tdep->code_ptr_type
> > ! = lookup_pointer_type (lookup_function_type (builtin_type_void));
> > !
Yes. I've submitted another patch that does this.
> The s/D10V_MAKE_IADDR/d10v_make_iaddr/ et.al. applied to d10v-tdep.c can
> go straight in as an obvious fix. This should make the final patch a
> lot smaller :-)
Yes. I've committed a change that does this.
> The convert to/from virtual/raw register functions are borderline
> deprecated. They are being replaced by the much simpler functions
> gdbarch_register_{read,write}. If, for the d10v, those conversion
> functions are being eliminated then I'd just delete them.
The D10V no longer has any convertible registers, so those functions
certainly should never be called. I just assumed I'd get a gdbarch
error if I didn't provide some value for them. Are you saying I can
just delete the set_gdbarch_* calls altogether, and the dummy
functions they register? (I guess since the corresponding macros are
optional, that would make sense...)
> Once I've got a more concrete feel for the change (the examples) I'll go
> back through this.
Thanks for looking it over!