gcc5 caused an unexpected error for 128 bit floating point numbers

Jukka Ukkonen jau789 at gmail.com
Sun Dec 20 10:16:15 UTC 2015


Hello all,

I installed gcc5 from ports (gcc5-5.3.0) expecting it to be
able to handle 128 bit floating point numbers on ppc64.
It turns out, this does not work quite right. Apparently gcc5
tries to compile any basic 128 bit floating point operations
to calls to functions like __gcc_qmul, _gcc_qdiv, etc.
If such function wrappers are used at all, I guess they should
be implemented as inline assebler wrappers or something instead
of genuine functions, right?

--jau
-------------- next part --------------
/tmp//ccUnqEJs.o: In function `ppc64_float128_test':
ppc64_float128_test.c:(.text+0xa8): undefined reference to `__gcc_qmul'
ppc64_float128_test.c:(.text+0xdc): undefined reference to `__gcc_qadd'
ppc64_float128_test.c:(.text+0x100): undefined reference to `__gcc_qmul'
ppc64_float128_test.c:(.text+0x180): undefined reference to `__gcc_qdiv'
ppc64_float128_test.c:(.text+0x190): undefined reference to `__gcc_qadd'
/tmp//ccUnqEJs.o: In function `main':
ppc64_float128_test.c:(.text.startup+0xd8): undefined reference to `__gcc_qmul'
ppc64_float128_test.c:(.text.startup+0x108): undefined reference to `__gcc_qadd'
ppc64_float128_test.c:(.text.startup+0x12c): undefined reference to `__gcc_qmul'
ppc64_float128_test.c:(.text.startup+0x1ac): undefined reference to `__gcc_qdiv'
ppc64_float128_test.c:(.text.startup+0x1bc): undefined reference to `__gcc_qadd'
collect2: error: ld returned 1 exit status


More information about the freebsd-ppc mailing list