[Info-vax] xcc long double implementation

John Reagan xyzzy1959 at gmail.com
Fri Sep 3 18:31:09 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 other interesting twist to long double is parameters and functions that return them.  On Alpha & Itanium, they are returned by hidden parameter as the largest immediate return is 64-bits.  On the AMD64 ABI, long doubles come back in xmm0.  Unfortunately for us, the GEM CIL representation exposes this knowledge about that.  This isn't something our GEM to LLVM converter can easily paper over.



More information about the Info-vax mailing list