/* { dg-do compile } */
/* { dg-options "-O2  -fdump-tree-optimized -ffast-math -ffp-contract=off" } */

unsigned int foo (unsigned int x, unsigned int y, unsigned int z)
{
  return x + (-y * z * z);
}

float bar (float x, float y, float z)
{
  return x + (-y * z * z);
}

float bar2 (float x, float y, float z)
{
  return x + (-y * z * z * 5.0f);
}

float bar3 (float x, float y, float z)
{
  return x + (-y * x * -z);
}

/* { dg-final { scan-tree-dump-times "_* = -y_" 0 "optimized" } } */
