This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ 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: PATCH: New test for breakage from real.c rewrite on i386-unknown-freebsd


On Thu, Sep 19, 2002 at 03:40:52AM -0500, Loren James Rittle wrote:
> Well, I will not protest your statement but it is odd that it used to
> "work"; I guess we just got lucky with the old real.c code configuration.

Actually, it has nothing to do with the real.c implementation.
It has everything to do with the fact that we weren't using
float.h constants (or the _proper_ float.h constants) in 
std::numeric_limits.

> OK, based on reading the new documentation (sorry I didn't fish a bit
> more before posting my observations), a new correct way to get this C ABI:
> 
> 	`long double' using "64-bit double precision" IEEE mode
> 	(confirmed by close reading of system headers and other
> 	sources) with 96-bit size and alignments (but only god knows why)

Good heavens.  Why would they do this?  I hope this is going
to be fixed for freebsd5?

>         case 96:
> 	  if (FREEBSD_I386_LONG_DOUBLE_FORMAT)
> 	    return &ieee_double;

Nope.  You'll need a new structure.  I'll see about doing the 
cleanup on the real_format interface so that you can do this
in the backend.  (MIPS is gonna need this anyway.)



r~


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