public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad  type
@ 2009-05-30  9:40 Uros Bizjak
  0 siblings, 0 replies; 9+ messages in thread
From: Uros Bizjak @ 2009-05-30  9:40 UTC (permalink / raw)
  To: GCC Patches; +Cc: David Billinghurst, Kai Tietz

Hello!

> Kai Tietz wrote:
>
>     I tested your suggested patch for i686-pc-mingw32 and for
>     x86_64-pc-mingw32 and it works. I would like to add this for mingw
>     targets, too..
>
>
>     Cheers,
>     Kai
>
>
> It is pre-approved if it passes testing.
> See http://gcc.gnu.org/ml/gcc-patches/2009-05/msg01458.html

Yes, please go ahead and enable __float128 for mingw targets.

Uros.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad  type
  2009-05-29  9:47   ` Kai Tietz
@ 2009-05-29 11:14     ` David Billinghurst
  0 siblings, 0 replies; 9+ messages in thread
From: David Billinghurst @ 2009-05-29 11:14 UTC (permalink / raw)
  To: Kai Tietz; +Cc: gcc-patches

Kai Tietz wrote:

> I tested your suggested patch for i686-pc-mingw32 and for
> x86_64-pc-mingw32 and it works. I would like to add this for mingw
> targets, too..
> 
> Cheers,
> Kai
> 

It is pre-approved if it passes testing.
See http://gcc.gnu.org/ml/gcc-patches/2009-05/msg01458.html

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad   type
  2009-05-29  8:46 ` David Billinghurst
@ 2009-05-29  9:47   ` Kai Tietz
  2009-05-29 11:14     ` David Billinghurst
  0 siblings, 1 reply; 9+ messages in thread
From: Kai Tietz @ 2009-05-29  9:47 UTC (permalink / raw)
  To: David Billinghurst; +Cc: gcc-patches

Hello Uros,

2009/5/29 David Billinghurst <dbcygwin@gmail.com>:
> 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.
>

I tested your suggested patch for i686-pc-mingw32 and for
x86_64-pc-mingw32 and it works. I would like to add this for mingw
targets, too..

Cheers,
Kai

-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad  type
  2009-05-22  8:29 Uros Bizjak
  2009-05-22 10:11 ` Joseph S. Myers
  2009-05-22 23:27 ` David Billinghurst
@ 2009-05-29  8:46 ` David Billinghurst
  2009-05-29  9:47   ` Kai Tietz
  2 siblings, 1 reply; 9+ messages in thread
From: David Billinghurst @ 2009-05-29  8:46 UTC (permalink / raw)
  Cc: gcc-patches

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.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad  type
  2009-05-22  8:29 Uros Bizjak
  2009-05-22 10:11 ` Joseph S. Myers
@ 2009-05-22 23:27 ` David Billinghurst
  2009-05-29  8:46 ` David Billinghurst
  2 siblings, 0 replies; 9+ messages in thread
From: David Billinghurst @ 2009-05-22 23:27 UTC (permalink / raw)
  To: Uros Bizjak; +Cc: GCC Patches

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.
>>

> 
> 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.
> 
> Uros.

Thanks for your feedback and guidance.  I will test your patch.

	David

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad    type
  2009-05-22 10:11 ` Joseph S. Myers
@ 2009-05-22 12:04   ` Dave Korn
  0 siblings, 0 replies; 9+ messages in thread
From: Dave Korn @ 2009-05-22 12:04 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: Uros Bizjak, GCC Patches, David Billinghurst

Joseph S. Myers wrote:
> On Fri, 22 May 2009, Uros Bizjak wrote:
> 
>> Assuming that soft-fp also works for mingw (it is trivial to add soft-fp
>> nowadays ;), we can simply add:
> 
> Note that for targets with symbol versioning a target-specific version 
> list is needed to reflect the versions at which these symbols were added 
> for that target - but I don't think this affects Windows targets.
> 

   Confirmed that it doesn't, but thanks for the heads-up.

    cheers,
      DaveK


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad   type
  2009-05-22  8:29 Uros Bizjak
@ 2009-05-22 10:11 ` Joseph S. Myers
  2009-05-22 12:04   ` Dave Korn
  2009-05-22 23:27 ` David Billinghurst
  2009-05-29  8:46 ` David Billinghurst
  2 siblings, 1 reply; 9+ messages in thread
From: Joseph S. Myers @ 2009-05-22 10:11 UTC (permalink / raw)
  To: Uros Bizjak; +Cc: GCC Patches, David Billinghurst

On Fri, 22 May 2009, Uros Bizjak wrote:

> Assuming that soft-fp also works for mingw (it is trivial to add soft-fp
> nowadays ;), we can simply add:

Note that for targets with symbol versioning a target-specific version 
list is needed to reflect the versions at which these symbols were added 
for that target - but I don't think this affects Windows targets.

-- 
Joseph S. Myers
joseph@codesourcery.com

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad  type
@ 2009-05-22  8:29 Uros Bizjak
  2009-05-22 10:11 ` Joseph S. Myers
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Uros Bizjak @ 2009-05-22  8:29 UTC (permalink / raw)
  To: GCC Patches; +Cc: David Billinghurst

[-- Attachment #1: Type: text/plain, Size: 2981 bytes --]

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
>
> OK for trunk, then 4.4.
>
> 2009-05-21 David Billinghurst <billingd@gcc.gnu.org>
>
> * config.gcc: Enable support for the __float128 (TFmode) for 
> i?86-*-cygwin.
>
> * config.host: Enable support for the __float128 (TFmode) for 
> i?86-*-cygwin.
>
> Index: gcc/config.gcc
> ===================================================================
> --- gcc/config.gcc      (revision 147701)
> +++ gcc/config.gcc      (working copy)
> @@ -1267,7 +1267,7 @@
>         else
>                 tmake_eh_file="i386/t-sjlj-eh"
>         fi
> -       tmake_file="${tmake_file} ${tmake_eh_file} i386/t-cygming i386/t-cygwin"
> +       tmake_file="${tmake_file} ${tmake_eh_file} i386/t-cygming i386/t-cygwin i386/t-fprules-softfp soft-fp/t-softfp"
>         target_gtfiles="\$(srcdir)/config/i386/winnt.c"
>         extra_options="${extra_options} i386/cygming.opt"
>         extra_objs="winnt.o winnt-stubs.o"

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.

> Index: libgcc/config.host
> ===================================================================
> --- libgcc/config.host  (revision 147701)
> +++ libgcc/config.host  (working copy)
> @@ -323,8 +323,12 @@
>         ;;
>  i[34567]86-*-pe)
>         ;;
> -i[34567]86-*-cygwin* | i[34567]86-*-mingw*)
> +i[34567]86-*-cygwin*)
>         extra_parts="crtbegin.o crtend.o crtfastmath.o"
> +       tmake_file="i386/t-cygming i386/t-crtfm t-softfp i386/${host_address}/t-fprules-softfp"
>   

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.

Uros.

[-- Attachment #2: p.diff.txt --]
[-- Type: text/plain, Size: 1225 bytes --]

Index: gcc/config.gcc
===================================================================
--- gcc/config.gcc	(revision 147792)
+++ gcc/config.gcc	(working copy)
@@ -3127,6 +3127,9 @@
 	i[34567]86-*-linux* | x86_64-*-linux* | i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu)
 		tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp i386/t-linux"
 		;;
+	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"
+		;;
 	ia64*-*-linux*)
 		tmake_file="${tmake_file} ia64/t-fprules-softfp soft-fp/t-softfp"
 		;;
Index: libgcc/config.host
===================================================================
--- libgcc/config.host	(revision 147792)
+++ libgcc/config.host	(working copy)
@@ -562,7 +562,9 @@
 case ${host} in
 i[34567]86-*-darwin* | x86_64-*-darwin* | \
   i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
-  i[34567]86-*-linux* | x86_64-*-linux*)
+  i[34567]86-*-linux* | x86_64-*-linux* |\
+  i[34567]86-*-pe | i[34567]86-*-cygwin* | \
+  i[34567]86-*-mingw* | x86_64-*-mingw*)
 	if test "${host_address}" = 32; then
 		tmake_file="${tmake_file} t-softfp i386/${host_address}/t-fprules-softfp"
 	fi

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad type
@ 2009-05-21 12:29 David Billinghurst
  0 siblings, 0 replies; 9+ messages in thread
From: David Billinghurst @ 2009-05-21 12:29 UTC (permalink / raw)
  To: gcc-patches

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

OK for trunk, then 4.4.

2009-05-21  David Billinghurst <billingd@gcc.gnu.org>

	* config.gcc: Enable support for the __float128 (TFmode) for i?86-*-cygwin.

	* config.host: Enable support for the __float128 (TFmode) for i?86-*-cygwin.


Index: gcc/config.gcc
===================================================================
--- gcc/config.gcc      (revision 147701)
+++ gcc/config.gcc      (working copy)
@@ -1267,7 +1267,7 @@
         else
                 tmake_eh_file="i386/t-sjlj-eh"
         fi
-       tmake_file="${tmake_file} ${tmake_eh_file} i386/t-cygming i386/t-cygwin"
+       tmake_file="${tmake_file} ${tmake_eh_file} i386/t-cygming i386/t-cygwin i386/t-fprules-softfp soft-fp/t-softfp"
         target_gtfiles="\$(srcdir)/config/i386/winnt.c"
         extra_options="${extra_options} i386/cygming.opt"
         extra_objs="winnt.o winnt-stubs.o"

Index: libgcc/config.host
===================================================================
--- libgcc/config.host  (revision 147701)
+++ libgcc/config.host  (working copy)
@@ -323,8 +323,12 @@
         ;;
  i[34567]86-*-pe)
         ;;
-i[34567]86-*-cygwin* | i[34567]86-*-mingw*)
+i[34567]86-*-cygwin*)
         extra_parts="crtbegin.o crtend.o crtfastmath.o"
+       tmake_file="i386/t-cygming i386/t-crtfm t-softfp i386/${host_address}/t-fprules-softfp"
+       ;;
+i[34567]86-*-mingw*)
+       extra_parts="crtbegin.o crtend.o crtfastmath.o"
         tmake_file="i386/t-cygming i386/t-crtfm"
         ;;
  x86_64-*-mingw*)

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2009-05-30  8:32 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-30  9:40 [cygwin patch] Enable Support for __float128 (TFmode) IEEE quad type Uros Bizjak
  -- strict thread matches above, loose matches on Subject: below --
2009-05-22  8:29 Uros Bizjak
2009-05-22 10:11 ` Joseph S. Myers
2009-05-22 12:04   ` Dave Korn
2009-05-22 23:27 ` David Billinghurst
2009-05-29  8:46 ` David Billinghurst
2009-05-29  9:47   ` Kai Tietz
2009-05-29 11:14     ` David Billinghurst
2009-05-21 12:29 David Billinghurst

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).