Questions with long double implementation

Edmar Wienskoski edmar@freescale.com
Thu Sep 7 20:16:00 GMT 2006


I am trying to use g++ and gfortran from gcc-trunk, snapshot of 20060905.
The compiler was configure with
--target=powerpc-unknown-linux-gnuspe --enable-e500_double,
(It is the Freescale 8548 cpu).

Almost all of g++ and gfortran programs fails to link with undefined 
references to:
__floatunsitf
__getf2
__eqtf2
__floatsitf
__gcc_qmul
__fixunstfsi
__lttf2
__netf2
__gcc_qsub
__gcc_qdiv
__negtf2
__gcc_qadd

I managed to partialy fix this, by changing rs6000/fprules-softfp. Not 
sure if that is the right
approach....

diff -u t-fprules-softfp~ t-fprules-softfp
--- t-fprules-softfp~   2006-08-09 14:20:24.000000000 -0500
+++ t-fprules-softfp    2006-09-06 12:39:17.000000000 -0500
@@ -1,4 +1,4 @@
-softfp_float_modes := sf df
+softfp_float_modes := sf df tf
 softfp_int_modes := si di
 softfp_extensions := sfdf
 softfp_truncations := dfsf

But I don't know what to do to fix these undefined references:
__gcc_qadd
__gcc_qsub
__gcc_qmul
__gcc_qdiv

Wouldn't be better they were references to addtf3 instead ?
Any directions ?

Thanks
Edmar




More information about the Gcc-help mailing list