This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libfortran/59227] [4.9 regression] FAIL: gfortran.dg/erf_3.F90 -O0 execution test
- From: "fxcoudert at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 21 Nov 2013 09:58:06 +0000
- Subject: [Bug libfortran/59227] [4.9 regression] FAIL: gfortran.dg/erf_3.F90 -O0 execution test
- Auto-submitted: auto-generated
- References: <bug-59227-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59227
--- Comment #6 from Francois-Xavier Coudert <fxcoudert at gcc dot gnu.org> ---
(In reply to Andreas Schwab from comment #5)
> 4.68542210148937626195884133993966578E-0002
> -1.87533922948603221391158058278771595E+0920
And this (at -O2)?
__float128 foo (__float128 x)
{
__float128 sum = 0, oldsum;
__float128 inv2x2 = 1 / (2 * x * x);
__float128 fac = 1;
int n = 1;
while (n < 200)
{
fac *= - (2*n - 1) * inv2x2;
oldsum = sum;
sum += fac;
__builtin_printf ("%lg\n", (double) fac);
if (sum == oldsum)
break;
n++;
}
return (1 + sum) / x * (1.1283791670955125738961589031215452Q / 2);
}
int main (void)
{
__float128 x = 12;
x = foo(x);
__builtin_printf ("%lg\n", (double) x);
}