/* PR tree-optimization/55281 */ | |
/* { dg-do compile } */ | |
static inline float | |
bar (float k, float j) | |
{ | |
float l = 0.0f; | |
if (k > j) | |
l = k; | |
float t = k / j; | |
float v = t * t; | |
if (k == 0) | |
v = 0.0f; | |
if (t > 0.4f) | |
v += 0.7; | |
if (l != 0) | |
v = 1.5 - v; | |
return v; | |
} | |
void | |
foo (int *a, int b, float *d, float *e, int *f) | |
{ | |
int i, l; | |
for (l = 0; l != b; ++l) | |
for (i = 0; i != 8; ++i) | |
f[i] = e[i] + bar (a[i], d[i]); | |
} | |
/* { dg-final { cleanup-tree-dump "vect" } } */ |