[Info-vax] xcc long double implementation
John Dallman
jgd at cix.co.uk
Fri Sep 3 12:05:00 EDT 2021
In article <sgtcua$1urv$2 at gioia.aioe.org>, arne at vajhoej.dk (Arne Vajhøj)
wrote:
> x86 had the weird 80 bit FP's.
>
> But wasn't those ditched in x86-64?
No. The short answer is that 80-bit float /can/ be used in 64-bit x86
code, and context switches on most (or all) OSes will save and restore
the relevant registers, but there's a strong convention of not doing it.
That convention is shared between Windows, Linux, and macOS to my
knowledge, and likely applies on many other OSEs.
80-bit floating-point is poor value: it doesn't give you much more
precision, no other modern hardware supports it (the Motorola 68000
family floating-point did, but that's dead), and it takes up a lot of
memory: 12 byes (two wasted) or 16 bytes (six wasted).
The registers and instructions that give access to 80-bit float have been
retained because there is old 32-bit software that uses that instruction
set, although rarely for 80-bit. Intel and AMD would probably be happy to
drop it, but there would inevitably be complaints.
If one company did it first, the other would exploit the fact to gain
market share; if they agreed to do it together, an anti-trust suit would
likely succeed, and the costs of replacing "faulty" processors would be
horrific.
John
More information about the Info-vax
mailing list