This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libfortran/59227] [4.9 regression] FAIL: gfortran.dg/erf_3.F90 -O0 execution test


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);
}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]