[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: passing floats



> MPW seems to treat every 'double' as extended.

Not really, but both SANE and the FPUs with (and in) the 680x0 line do
convert to extended (either 10 or 12 bytes, depending on the phase of the
moon) to do all their computations.

But...with powerPC, the world is changing.  As one starts preparing for the
powerPC future, one should conditionally compile such that one uses double
for native powerPC code (or even float, if it has the range and precision
you need).  The needed conditionals are said to be in the "universal"
headers now in pre-release form but widely "out"...I have them but haven't
looked.

powerPC chips support IEEE 4 byte (C float) and IEEE 8 byte (C double), but
know nothing about SANE extended, 68xxx FPU 12-byte extended, or THINK
"universal" (HA!...even Symantec C++ doesn't "do" the "universal" which
THINK invented).  powerPC also has some support for a 128-bit long double,
which adds precision to double but no range and comes with a recommendation
of avoidance unless the precision is needed.

None of which answers Tobias' question...but it's something to begin
thinking about.
   --John

--
jwbaxter@pt.olympus.net (John W. Baxter)  Port Ludlow, WA
finger me to prove I'm all wet (Port Ludlow rainfall numbers).