This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][GCC][PATCHv3] Improve fpclassify w.r.t IEEE like numbers in GIMPLE.
- From: Tamar Christina <Tamar dot Christina at arm dot com>
- To: Christophe Lyon <christophe dot lyon at linaro dot org>, Markus Trippelsdorf <markus at trippelsdorf dot de>
- Cc: Joseph Myers <joseph at codesourcery dot com>, Jeff Law <law at redhat dot com>, "GCC Patches" <gcc-patches at gcc dot gnu dot org>, Wilco Dijkstra <Wilco dot Dijkstra at arm dot com>, "rguenther at suse dot de" <rguenther at suse dot de>, Michael Meissner <meissner at linux dot vnet dot ibm dot com>, nd <nd at arm dot com>
- Date: Thu, 8 Jun 2017 15:40:06 +0000
- Subject: Re: [PATCH][GCC][PATCHv3] Improve fpclassify w.r.t IEEE like numbers in GIMPLE.
- Authentication-results: sourceware.org; auth=none
- Authentication-results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com;
- Nodisclaimer: True
- References: <VI1PR0801MB20313CD2538258D3AAA60F5DFF910@VI1PR0801MB2031.eurprd08.prod.outlook.com> <72535306-7d9c-bc2d-b7a3-06360633cfef@redhat.com> <alpine.DEB.2.20.1701181641540.1980@digraph.polyomino.org.uk> <alpine.DEB.2.20.1701181703580.1980@digraph.polyomino.org.uk> <VI1PR0801MB2031DC35E0B3ADDF40EB5A0AFF7E0@VI1PR0801MB2031.eurprd08.prod.outlook.com> <alpine.DEB.2.20.1701191439001.4255@digraph.polyomino.org.uk> <VI1PR0801MB2031901A2466FC38A4610577FF7E0@VI1PR0801MB2031.eurprd08.prod.outlook.com> <alpine.DEB.2.20.1701191619270.12012@digraph.polyomino.org.uk> <VI1PR0801MB20319A4433E724B869E8423BFF7E0@VI1PR0801MB2031.eurprd08.prod.outlook.com> <alpine.DEB.2.20.1701191819370.12012@digraph.polyomino.org.uk> <20170608103058.GA285@x4> <CAKdteOZ6T8OB-R7HHkUuWgoVrxA-D6rPnH1U3n=9VAU5h4W0eg@mail.gmail.com>,<VI1PR0801MB2031575376F996A705CE73C4FFC90@VI1PR0801MB2031.eurprd08.prod.outlook.com>
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
The testcase does something unexpected
extern "C" int isnan ();
void foo(float a) {
int (*xx)(...);
xx = isnan;
if (xx(a))
g++;
}
and I'm wondering if this is a valid thing to do with a builtin. The issue is that at the point where gimple lowering is done xx hasn't been resolved to isnan yet.
So it never recognizes the alias. Previously these builtins were being resolved in expand, which happens late enough that it has replaced xx with isnan.
I can obviously fix the ICE by having the expand code leave the call as a call instead of a builtin. But if this is a valid thing for a builtin i'm not sure how to
best resolve this case.
________________________________________
From: Tamar Christina
Sent: Thursday, June 8, 2017 1:21:44 PM
To: Christophe Lyon; Markus Trippelsdorf
Cc: Joseph Myers; Jeff Law; GCC Patches; Wilco Dijkstra; rguenther@suse.de; Michael Meissner; nd
Subject: RE: [PATCH][GCC][PATCHv3] Improve fpclassify w.r.t IEEE like numbers in GIMPLE.
Thanks, I'm looking at the failure.
My final validate seems to have only run the GCC tests.
> -----Original Message-----
> From: Christophe Lyon [mailto:christophe.lyon@linaro.org]
> Sent: 08 June 2017 13:00
> To: Markus Trippelsdorf
> Cc: Joseph Myers; Tamar Christina; Jeff Law; GCC Patches; Wilco Dijkstra;
> rguenther@suse.de; Michael Meissner; nd
> Subject: Re: [PATCH][GCC][PATCHv3] Improve fpclassify w.r.t IEEE like
> numbers in GIMPLE.
>
> On 8 June 2017 at 12:30, Markus Trippelsdorf <markus@trippelsdorf.de>
> wrote:
> > On 2017.01.19 at 18:20 +0000, Joseph Myers wrote:
> >> On Thu, 19 Jan 2017, Tamar Christina wrote:
> >>
> >> > Hi Joseph,
> >> >
> >> > I made the requested changes and did a quick pass over the rest of
> >> > the fp cases.
> >>
> >> I've no further comments, but watch out for any related test failures
> >> being reported.
> >
> > g++.dg/opt/pr60849.C started ICEing on both X86_64 and ppc64le.
> >
>
> Same on arm/aarch64, but there are also other regressions on big-endian
> configs:
> See http://people.linaro.org/~christophe.lyon/cross-
> validation/gcc/trunk/249005/report-build-info.html
>
>
> > --
> > Markus