aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/vect/vect-mult-pattern-1.c
blob: 764d0e34c320496aa700f9cf1e64e9525383f00c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* { dg-do compile } */
/* { dg-require-effective-target vect_int } */
/* { dg-require-effective-target vect_shift } */

unsigned  long int __attribute__ ((aligned (64)))arr[100];
int i;

void test_for_vectorshifts_via_mul_with_power2_const ()
{
  for (i=0; i<=99; i++)
    arr[i] = arr[i] * 4;
}

void test_for_vectorshifts_via_mul_with_negative_power2_const ()
{
  for (i=0; i<=99; i++)
    arr[i] = arr[i] * (-4);
}

/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect"  {target  { ! { vect_int_mult } } } } } */
/* { dg-final { scan-tree-dump-times "vect_recog_mult_pattern: detected" 2 "vect" {target  { ! { vect_int_mult } } } } } */