blob: 8b24b337efa602198c96504cbe647cfc3b1cd5ff [file] [log] [blame]
/* { dg-do compile } */
/* { dg-require-effective-target vect_float } */
/* { dg-require-effective-target vect_hw_misalign } */
/* { dg-additional-options "-O3 -funroll-loops -fvect-cost-model=dynamic" } */
class mydata {
public:
mydata() {Set(-1.0);}
void Set (float);
static int upper() {return 8;}
float data[8];
};
void mydata::Set (float x)
{
for (int i=0; i<upper(); i++)
data[i] = x;
}
/* For targets without vector loop peeling the loop becomes cheap
enough to be vectorized. */
/* { dg-final { scan-tree-dump-times "basic block vectorized" 1 "slp1" { xfail { ! vect_peeling_profitable } } } } */