1 /* { dg-do compile } */
2 /* { dg-require-effective-target vect_int } */
3 /* { dg-require-effective-target vect_shift } */
4 
5 unsigned  long int __attribute__ ((aligned (64)))arr[100];
6 int i;
7 
test_for_vectorshifts_via_mul_with_power2_const()8 void test_for_vectorshifts_via_mul_with_power2_const ()
9 {
10   for (i=0; i<=99; i++)
11     arr[i] = arr[i] * 4;
12 }
13 
test_for_vectorshifts_via_mul_with_negative_power2_const()14 void test_for_vectorshifts_via_mul_with_negative_power2_const ()
15 {
16   for (i=0; i<=99; i++)
17     arr[i] = arr[i] * (-4);
18 }
19 
20 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect"  {target  { ! { vect_int_mult } } } } } */
21 /* { dg-final { scan-tree-dump-times "vect_recog_mult_pattern: detected" 2 "vect" {target  { ! { vect_int_mult } } } } } */
22