https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109004

--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
The program uses xsmincdp and xsmaxcdp instructions and it feels as if qemu
implements the latter exactly the same as the former.
So, I guess simpler testcase would be compile with -O2 -mcpu=power9 -ffast-math
__attribute__((noipa)) float
mymin (float x, float y)
{
  return __builtin_fminf (x, y);
}

__attribute__((noipa)) float
mymax (float x, float y)
{
  return __builtin_fmaxf (x, y);
}

int
main ()
{
  if (mymin (1.0f, 2.0f) != 1.0f)
    __builtin_abort ();
  if (mymax (1.0f, 2.0f) != 2.0f)
    __builtin_abort ();
}
and see if it aborts under qemu or not.

Reply via email to