blob: 14826b53cab2686a293195ee4c08ae86283e91fa [file] [log] [blame]
/* { dg-do compile } */
/* { dg-require-effective-target vect_int } */
/* { dg-require-effective-target vect_shift } */
int x[4];
int j[4];
void foo()
{
x[0] = (x[0] << j[0]) + j[0];
x[1] = (x[1] << j[0]) + j[1];
x[2] = (x[2] << j[0]) + j[2];
x[3] = (x[3] << j[0]) + j[3];
}
/* The scalar shift argument should be extracted from the available vector. */
/* { dg-final { scan-tree-dump "BIT_FIELD_REF" "slp2" { target sse2 } } } */
/* { dg-final { scan-tree-dump "optimized: basic block" "slp2" } } */