mips64 ieee754 data structures

Alexandre Oliva aoliva@redhat.com
Fri Mar 14 06:40:00 GMT 2003


On Mar 14, 2003, Alexandre Oliva <aoliva@redhat.com> wrote:

> This patch introduces data structures describing the internal
> structures of float, double and long double on o32, n32 and n64.  They
> only differ in long double, in that it's the same as double on o32 and
> a 128-bit IEEE quad on mips64-linux (it's a completely different,
> unsupported animal on say Irix).

In private discussion, Roland suggested me to try to fold all of
mips/ieee754.h, ieee754/ieee754.h and ieee754/ldbl-128/ieee754.h into
a single file.  This patch implements this solution.  It may enable
other port maintainers to get rid of their port-specific ieee754.h as
well.  Using float.h instead of __LONG_DOUBLE_BIT__ like the earlier
revision of the patch did, enables us to remain compilable with GCC
3.2 as well.  Ok?

> +#if 0
> +    union ieee754_double pair[2];
> +#else
> +    /* This is all wrong!  This is not the format used for long
> +       doubles.  */

Oops.  This should have been removed a long time ago, when it was
decided that mips64-linux would use IEEE quads, and not the
non-standard pair-of-doubles format used on IRIX.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: generic-ieee754.patch
Type: text/x-patch
Size: 9529 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20030314/c23af82b/attachment.bin>
-------------- next part --------------

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                 aoliva@{redhat.com, gcc.gnu.org}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist                Professional serial bug killer


More information about the Libc-alpha mailing list