/* { dg-options "-O2 -floop-nest-optimize" } */ | |
void foo(int N, float *x, float *X) | |
{ | |
float sum = 0.; | |
for (int n = 0; n < N; ++n) | |
sum += x[n]; | |
X[0] = sum; | |
for (unsigned int k = 1; k < N; ++k) { | |
sum = 0.; | |
for (int n = 0; n < N; ++n) | |
sum += x[n] * ((float)(3.14159265358979323846 * (n + .5) * k / N)); | |
X[k] = sum; | |
} | |
} |