This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [patch/rfc] Eliminate INVALID_FLOAT (almost)
- From: Andrew Cagney <ac131313 at cygnus dot com>
- To: Andrew Cagney <ac131313 at cygnus dot com>
- Cc: gdb-patches at sources dot redhat dot com
- Date: Mon, 28 Jan 2002 22:04:00 -0500
- Subject: Re: [patch/rfc] Eliminate INVALID_FLOAT (almost)
- References: <3C4A02C3.3020308@cygnus.com>
I've checked this in.
Andrew
> Hello,
>
> Two targets define the macro INVALID_FLOAT: VAX and ns32k.
>
> The ns32k definition was commented out long ago so I'm removing it.
>
> The VAX definition is more interesting. The current macro is very non-portable (byte order). Further, studying the VAX source code suggests that its floating-point support is pretty bit-rotten. For it to work correctly / portably it will need to do things like define TARGET_FLOAT_FORMAT et.al. to floatformat_vax_f et.al. This being made more difficult since floatformat_vax_f, vax_d and vax_g (?) have yet to be specified (my manual is so old that the G format isn't documented :-)
>
> The attached patch removes the macro INVALID_FLOAT from core code.
> It also moves the VAXes definition of INVALID_FLOAT to vax-tdep.c adding comments explaining why it is problematic.
>
> If someone would like to work on fixing the VAX target (which would include multi-arching it) they are most welcome.
>
> I intend checking this in in a few days.
>
> Andrew
>
> PS: What _were_ all those people in the VAX 11 architecture manual smoking?
>
>
> 2002-01-19 Andrew Cagney <ac131313@redhat.com>
>
> * config/vax/tm-vax.h (INVALID_FLOAT): Move macro from here...
> * vax-tdep.c (INVALID_FLOAT): To here. Document why it is broken.
>
> * rs6000-tdep.c (rs6000_do_registers_info): Delete code wrapped in
> #ifdef INVALID_FLOAT.
> * infcmd.c (do_registers_info): Ditto.
> * values.c (unpack_double): Ditto. Add comment.
>
> * config/ns32k/tm-umax.h (INVALID_FLOAT): Delete macro that was
> already commented out.
>
>