blob: 5a3d3b75aa834c7794816a16b18b462ed29c6287 [file] [log] [blame]
/* { dg-do compile } */
/* { dg-require-effective-target vect_double } */
double x[1024];
void bar (void);
void foo (void)
{
double tem1 = x[0];
double tem2 = x[1];
for (int i = 0; i < 511; ++i)
{
x[2*i] = tem1;
x[2*i+1] = tem2;
bar ();
tem1 = x[2*(i+1)];
tem2 = x[2*(i+1)+1];
}
}
/* We should be able to vectorize the cycle in one SLP attempt including
both load groups. */
/* { dg-final { scan-tree-dump-times "transform load" 2 "slp1" } } */
/* { dg-final { scan-tree-dump-times "optimized: basic block" 1 "slp1" } } */