From what I know about the x86 long double is that, for PPC, I guess sizeof is returning 16 for alignment reasons. 12 is the actual used portion. A long double is 80 bits/10 bytes on x86. Mingw claims it is 12 bytes in a sizeof.
Re^3: powerpc double-double arithmetic
Replies are listed 'Best First'.
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)?
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.)