for PPC, I guess sizeof is returning 16 for alignment reasons
With PPC, it actually uses the 16 bytes (in the form of 2 8-byte doubles).
There are other processors that use 12 bytes but assign 16 bytes (for alignment purposes, as you said).
Cheers, Rob | [reply] |
So if its vector math op (SSE, etc), its really 2 64 bit doubles and not a "long double". Long double would mean over 64 bits of double/precision. You have "packed data" not a "long double". Does your CPU have 128 bit FP math (see also) or not? Does your compiler emulate 128 bit FP math (GCC yes as __float128)?
| [reply] |
The basics of its arithmetic is here.
There's no 128 bit FP math with its gcc-4.6.3 compiler. I think the double-double technique precludes it. (Every other gcc-4.6.3 that I've seen has a quadmath.h that provides the __float128 type, but not this one - which is provided by Debian specifically for the PowerPC architecture.)
Cheers, Rob
| [reply] |