This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad type


Uros Bizjak wrote:
Hello!

This patch enables support for the __float128 (TFmode) IEEE quad type in
libgcc on cygwin.  It uses the same approach as for IA-32 on darwin.

With this patch the tests gcc.dg/torture/fp-int-convert-float128*.c pass
on cygwin.  Previously the tests failed to link.  See:
 - http://gcc.gnu.org/ml/gcc-patches/2009-05/msg00959.html
 - http://gcc.gnu.org/ml/gcc-patches/2009-05/msg01028.html

soft-fp is added for other x86 targets in "miscellaneous part" of config.gcc. Assuming that soft-fp also works for mingw (it is trivial to add soft-fp nowadays ;), we can simply add:


i[34567]86-*-pe | i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp"


to the "miscellaneous part" of config.gcc.

i386/32/t-fprules-softfp actually filters out TImode conversions that are not valid on x86_32. Please note, that there is no i386/64/t-fprules-softp.
+       ;;
+i[34567]86-*-mingw*)
+       extra_parts="crtbegin.o crtend.o crtfastmath.o"
        tmake_file="i386/t-cygming i386/t-crtfm"
        ;;
 x86_64-*-mingw*)

Please add windows targets to existing target groups. It will just work out-of-the-box.

I have attached (untested) patch that implements suggested approaches. I'm not able to test it on windows targets. If it bootstraps OK for you, then it is OK for mainline SVN. Technically, testsuite failures are all regressions, but this patch enables new functionality on cygwin targets, so you will have to discuss backport to 4.4 with cygwin maintainers.

I have committed this for cygwin only. I can't test the other targets.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]