Right now the rs6000 backend of the GCC compiler is rather inconsistant in the names used for the IBM extended double floating point.
For the basic operations it used __gcc_q<op>: __gcc_qadd __gcc_qsub __gcc_qmul __gcc_qdiv __gcc_qneg __gcc_qne __gcc_qgt __gcc_qlt __gcc_qle In theory the conversions also use the __gcc_ format, but while it is set in rs6000.c, the compiler ignores these names and uses: __dpd_extendddtf __dpd_extendsdtf __dpd_extendtftd __dpd_trunctdtf __dpd_trunctfdd __dpd_trunctfsd __fixtfdi __fixtfti __fixunstfdi __fixunstfti __floatditf __floattitf __floatunditf __floatuntitf __powitf2 This means if have a flag day and change all of long double to IEEE 128-bit, we run the risk of the user inadvertently calling the wrong function. As I see it, we have a choice to have something like multilibs where you select which library to use, or we have to use alternate names for all of the IEEE 128-bit emulation functions. -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.vnet.ibm.com, phone: +1 (978) 899-4797