[Info-vax] xcc long double implementation

Stephen Hoffman seaohveh at hoffmanlabs.invalid
Fri Sep 3 10:12:54 EDT 2021


On 2021-09-03 12:03:57 +0000, David Jones said:

> 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?

Cross compilers are such sour sorrow.

long double is... weird... on x86.

It's usually 80 bits of actual floating point content stored inside a 
larger 12- or 16-byte bag, but it's also sometimes "just" double, 
depending on the compiler.

I'd suspect VSI is planning to follow gcc and clang here, and will be 
using the x87 80-bit representation and not the 64-bit double 
representation, but haven't confirmed.

Thankfully, I don't need to use that corner of C on the local stuff as yet.



-- 
Pure Personal Opinion | HoffmanLabs LLC 




More information about the Info-vax mailing list