------- Comment #4 from jakub at gcc dot gnu dot org  2009-04-23 08:50 -------
Even more reduced:

extern double pow (double, double);
extern double fabs (double);
void foo (double *);

static double
bar (double x, double e)
{
  if ((int) e == 1)
    return x;
  return pow (x, e);
}

void
test (double *x, double *y)
{
  double r;

  if (x[2])
    bar (x[2], y[1]);
  if (x[0])
    r = bar (fabs (x[1]), y[0]);
  if (x[2])
    x[2] *= (1 + r);
  foo (x);
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39856

Reply via email to