This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA/mips] 128-bit long doubles for N32/N64


On Aug  3, 2004, Paul Koning <pkoning@equallogic.com> wrote:

> Then again, I'm not sure why MIPS N32 is defined to have 128 bit
> floats in the first place.  It seems rather silly considering that
> there isn't any such data type in the machine instruction set.

The idea is of implementing long double as a pair of doubles is to
gain additional precision.  You can use the regular double floating
point instructions for all computations, and they can be implemented
somewhat efficiently.

This is the way IRIX does it; mips64-linux just uses standard IEEE
128-bit long doubles, so it has to be emulated.  That's mostly because
neither GCC nor glibc supported emulation with the IRIX format at the
time the port was written.  glibc still doesn't, AFAIK; GCC got
support for it, but IIRC it's darwin-specific.  AIX and Darwin also
use pairs of doubles as long doubles, but IIRC they have slightly
different conventions because AIX and IRIX disagree on the precision
they claim to support.

Hope this helps,

-- 
Alexandre Oliva             http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   aoliva@{redhat.com, gcc.gnu.org}
Free Software Evangelist  oliva@{lsd.ic.unicamp.br, gnu.org}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]