// { dg-do run { target i?86-*-* } }
// { dg-options "-O2" }

inline double foo (double x)
{
  register double r;
  asm volatile ("fsqrt" : "=t" (r) : "0" (x));
  return r;
}

struct X
{
  ~X() {}
};

int b;

double bar (X x)
{
  if (b)
    return 1.0;
  return 36.0 * foo (36.0);
}

int main ()
{
  X x;
  if (bar (x) != 216.0)
    return 1;
  return 0;
}
