aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/i386/pr85694.c
blob: b730d23c70b0465e4985d28555ca9aebbcf5553a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* { dg-do compile }
/* { dg-options "-msse2 -O2 -ftree-vectorize" } */
/* { dg-final { scan-assembler "pavgb" } } */
/* { dg-final { scan-assembler "pavgw" } } */

#define N 1024

#define TEST(TYPE)						\
  unsigned TYPE a_##TYPE[N], b_##TYPE[N], c_##TYPE[N];		\
  void f_##TYPE (void)						\
  {								\
    int i;							\
    for (i = 0; i < N; i++)					\
      a_##TYPE[i] = (b_##TYPE[i] + c_##TYPE[i] + 1) >> 1;	\
  }

TEST(char);
TEST(short);