[Info-vax] xcc long double implementation

John Reagan xyzzy1959 at gmail.com
Fri Sep 3 18:16:04 EDT 2021


On Friday, September 3, 2021 at 8:03:59 AM UTC-4, osuv... at gmail.com wrote:
> The long double data type on the X86 cross compiler is broken, seriously broken. I'm just curious about what format they intend it to be. The sizeof operator says it's 16 bytes, implying it's using 128-bits. Are they assuming the assuming the hardware doesn't support 128-bit fp and trying to do a software implementation?

The release notes are pretty clear that it doesn't work.  Use /L_DOUBLE=64 for now.

LLVM 3.4.2 only supports the 10-byte/80-bit hardware floating point.  However, we want a 16-byte/128-bit floating type (IEEE X_float).  It is done by software on Itanium and Alpha.

Newer LLVMs support 3 forms:  1.  80-bit hardware floating in a 10-byte container; 2. 80-bit hardware floating in a 16-byte container; 3. 128-bit software floating in a 16-byte container (this is the one that matches the OpenVMS version).



More information about the Info-vax mailing list