This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH applied], 3 PowerPC long double patches applied
- From: Michael Meissner <meissner at linux dot ibm dot com>
- To: Joseph Myers <joseph at codesourcery dot com>
- Cc: Michael Meissner <meissner at linux dot ibm dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>, Segher Boessenkool <segher at kernel dot crashing dot org>, David Edelsohn <dje dot gcc at gmail dot com>, Bill Schmidt <wschmidt at linux dot vnet dot ibm dot com>
- Date: Mon, 18 Jun 2018 15:48:13 -0400
- Subject: Re: [PATCH applied], 3 PowerPC long double patches applied
- References: <20180618193437.GA9045@ibm-toto.the-meissners.org> <alpine.DEB.2.20.1806181938520.7412@digraph.polyomino.org.uk>
On Mon, Jun 18, 2018 at 07:40:46PM +0000, Joseph Myers wrote:
> On Mon, 18 Jun 2018, Michael Meissner wrote:
>
> > gcc.target/powerpc/pr70117.c (bug in isnormal on IEEE 128)
>
> Doesn't look like a bug in isnormal to me. That test is explicitly using
> an IBM long double representation and can't possibly be expected to work
> with IEEE long double - either it needs to be disabled for IEEE long
> double, or to use -mabi=ibmlongdouble explicitly, or to use __ibm128 (but
> if you use __ibm128 you can't then test the type-specific __builtin_isinfl
> like it does at present).
I've fixed the test to use __ibm128 already in my branch. The issue is the
compiler generates different code for __ibm128 (when long double is IEEE
128-bit) than it does for long double using IBM extended double. The code
fails for __ibm128, but does not fail normally.
I haven't fully investigated why the code is different.
--
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meissner@linux.ibm.com, phone: +1 (978) 899-4797