Mail Archives: pgcc/1998/03/16/15:16:37
>> - If you want extended precision -> store values in memory with 10 bytes.
>> You'll get always 80 bits precision.
>> - If you want to use `double' format with some extra precision,
>> just set high precision on and use doubles.
>> - If you want IEEE-compliance, set FPU to low precision and everything is
>> right again.
>
>but imho, the very very large speed penalty of this approach renders
"this"? Which one of these? The first approach (using long doubles) is
slow, but you wouldn't use that if you want IEEE-compatible floats/doubles
anyway.
The third approach (setting low precision to FPU CW) doesn't slow
at all -- if you use the same precision with same type of data
(double/float) all the time and the compiler knows it.
Doing it like gcc with -ffloat-store, may be actually a good but slow way
to get IEEE-compilance from Pentium. The problem is that it's difficult for
C compiler to keep track what CW contains.
>my c64 is as ieee compliant as the intel chips, then (it could also
True. So that's why Intel can honestly say their chips are fully
IEEE-compatible ;)
After I thought about floats & IEEE compliance last weekend I noticed that
"just setting the CW right" isn't at all so simple unlike I first thought.
--
| Tuukka Toivonen <tuukkat AT ee DOT oulu DOT fi> [PGP public key
| Homepage: http://www.ee.oulu.fi/~tuukkat/ available]
| Try also finger -l tuukkat AT ee DOT oulu DOT fi
| Studying information engineering at the University of Oulu
+-----------------------------------------------------------
- Raw text -