Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2023-01-11 Thread Michael Meissner via Gcc-patches
On Tue, Nov 01, 2022 at 10:42:30PM -0400, Michael Meissner wrote: > This patch fixes the issue that GCC cannot build when the default long double > is IEEE 128-bit. It fails in building libgcc, specifically when it is trying > to buld the __mulkc3 function in libgcc. It is failing in >

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-16 Thread Michael Meissner via Gcc-patches
On Fri, Dec 16, 2022 at 11:55:27AM -0600, Segher Boessenkool wrote: > Hi! > > On Thu, Dec 15, 2022 at 07:09:38PM -0500, Michael Meissner wrote: > > On Thu, Dec 15, 2022 at 11:59:49AM -0600, Segher Boessenkool wrote: > > > On Wed, Dec 14, 2022 at 10:36:03AM +0100, Jakub Jelinek wrote: > > > > The

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-16 Thread Segher Boessenkool
Hi! On Thu, Dec 15, 2022 at 07:09:38PM -0500, Michael Meissner wrote: > On Thu, Dec 15, 2022 at 11:59:49AM -0600, Segher Boessenkool wrote: > > On Wed, Dec 14, 2022 at 10:36:03AM +0100, Jakub Jelinek wrote: > > > The hacks with different precisions of powerpc 128-bit floating types are > > > very

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-15 Thread Michael Meissner via Gcc-patches
On Thu, Dec 15, 2022 at 11:59:49AM -0600, Segher Boessenkool wrote: > Hi! > > On Wed, Dec 14, 2022 at 10:36:03AM +0100, Jakub Jelinek wrote: > > On Wed, Dec 14, 2022 at 04:46:07PM +0800, Kewen.Lin via Gcc-patches wrote: > > > Since function useless_type_conversion_p considers two float types are

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-15 Thread Segher Boessenkool
On Thu, Dec 15, 2022 at 07:56:14PM +0100, Jakub Jelinek wrote: > On Thu, Dec 15, 2022 at 12:49:27PM -0600, Segher Boessenkool wrote: > > Certainly. But different types with the same mode having different > > precision is not so very reasonable, and will likely cause other > > problems as well. >

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-15 Thread Jakub Jelinek via Gcc-patches
On Thu, Dec 15, 2022 at 12:49:27PM -0600, Segher Boessenkool wrote: > On Thu, Dec 15, 2022 at 06:28:19PM +, Joseph Myers wrote: > > On Thu, 15 Dec 2022, Kewen.Lin via Gcc-patches wrote: > > > By investigating the exposed NaN failures, I found it's due to that it > > > wants > > > to convert

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-15 Thread Segher Boessenkool
On Thu, Dec 15, 2022 at 06:28:19PM +, Joseph Myers wrote: > On Thu, 15 Dec 2022, Kewen.Lin via Gcc-patches wrote: > > By investigating the exposed NaN failures, I found it's due to that it wants > > to convert _Float128 type constant to long double type constant, it goes > > through function

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-15 Thread Joseph Myers
On Thu, 15 Dec 2022, Kewen.Lin via Gcc-patches wrote: > By investigating the exposed NaN failures, I found it's due to that it wants > to convert _Float128 type constant to long double type constant, it goes > through function real_convert which clears the signalling bit in the context > of

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-15 Thread Segher Boessenkool
Hi! On Wed, Dec 14, 2022 at 10:36:03AM +0100, Jakub Jelinek wrote: > On Wed, Dec 14, 2022 at 04:46:07PM +0800, Kewen.Lin via Gcc-patches wrote: > > Since function useless_type_conversion_p considers two float types are > > compatible > > if they have the same mode, so it doesn't require the

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-14 Thread Kewen.Lin via Gcc-patches
on 2022/12/14 18:33, Jakub Jelinek wrote: > On Wed, Dec 14, 2022 at 06:11:26PM +0800, Kewen.Lin wrote: >>> The hacks with different precisions of powerpc 128-bit floating types are >>> very unfortunate, it is I assume because the middle-end asserted that scalar >>> floating point types with

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-14 Thread Kewen.Lin via Gcc-patches
>> I bet the above workaround in generic code was added for a reason, it would >> surprise me if _Float128 worked at all without that hack. > > OK, I'll have a look at those nan failures soon. By investigating the exposed NaN failures, I found it's due to that it wants to convert _Float128 type

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-14 Thread Jakub Jelinek via Gcc-patches
On Wed, Dec 14, 2022 at 06:11:26PM +0800, Kewen.Lin wrote: > > The hacks with different precisions of powerpc 128-bit floating types are > > very unfortunate, it is I assume because the middle-end asserted that scalar > > floating point types with different modes have different precision. > > We

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-14 Thread Kewen.Lin via Gcc-patches
Hi Jakub, Thanks for the comments! on 2022/12/14 17:36, Jakub Jelinek wrote: > On Wed, Dec 14, 2022 at 04:46:07PM +0800, Kewen.Lin via Gcc-patches wrote: >> on 2022/12/6 19:27, Kewen.Lin via Gcc-patches wrote: >>> Hi Mike, >>> >>> Thanks for fixing this, some comments are inlined below. >>> >>>

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-14 Thread Jakub Jelinek via Gcc-patches
On Wed, Dec 14, 2022 at 04:46:07PM +0800, Kewen.Lin via Gcc-patches wrote: > on 2022/12/6 19:27, Kewen.Lin via Gcc-patches wrote: > > Hi Mike, > > > > Thanks for fixing this, some comments are inlined below. > > > > on 2022/11/2 10:42, Michael Meissner wrote: > >> This patch fixes the issue that

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-14 Thread Kewen.Lin via Gcc-patches
on 2022/12/6 19:27, Kewen.Lin via Gcc-patches wrote: > Hi Mike, > > Thanks for fixing this, some comments are inlined below. > > on 2022/11/2 10:42, Michael Meissner wrote: >> This patch fixes the issue that GCC cannot build when the default long double >> is IEEE 128-bit. It fails in building

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-06 Thread Kewen.Lin via Gcc-patches
Hi Mike, Thanks for fixing this, some comments are inlined below. on 2022/11/2 10:42, Michael Meissner wrote: > This patch fixes the issue that GCC cannot build when the default long double > is IEEE 128-bit. It fails in building libgcc, specifically when it is trying > to buld the __mulkc3

Ping #3: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-12-02 Thread Michael Meissner via Gcc-patches
__float128 use the _Float128 type, PR target/107299 | Message-ID: | https://gcc.gnu.org/pipermail/gcc-patches/2022-November/604836.html -- Michael Meissner, IBM PO Box 98, Ayer, Massachusetts, USA, 01432 email: meiss...@linux.ibm.com

Re: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-11-29 Thread Michael Meissner via Gcc-patches
Can we get the three patches in this patch set reviewed? Without the patches applied, GCC 13 will not build on Fedora 37, which uses long double defaulting to IEEE 128-bit. | Date: Tue, 1 Nov 2022 22:42:30 -0400 | Subject: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

Ping: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-11-07 Thread Michael Meissner via Gcc-patches
Ping patch: | Date: Tue, 1 Nov 2022 22:42:30 -0400 | Subject: [PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299 | Message-ID: This patch is needed to build GCC on Fedora 36 which has switched the long double default to be IEEE 128-bit. -- Michael Meissner, IBM PO Box 98

[PATCH 2/3] Make __float128 use the _Float128 type, PR target/107299

2022-11-01 Thread Michael Meissner via Gcc-patches
This patch fixes the issue that GCC cannot build when the default long double is IEEE 128-bit. It fails in building libgcc, specifically when it is trying to buld the __mulkc3 function in libgcc. It is failing in gimple-range-fold.cc during the evrp pass. Ultimately it is failing because the