https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127876
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
__attribute__((noipa))
double f (double *a, int n)
{
double r = 0.0;
for (int i = 0; i < n; i++)
if (a[i] > 100.0)
r = -0.0;
return r;
}
int main (void)
{
double a[32];
#pragma GCC novector
for (int i = 0; i < 32; i++)
a[i] = 1.0;
a[7] = 200.0;
double r = f (a, 32);
if (__builtin_copysign (1., r) != -1.)
__builtin_abort ();
return 0;
}
