blob: bbb9db527a33ac4947f903c328f9ee3ae3e387c6 [file] [log] [blame]
/* { dg-do compile } */
/* { dg-options "-O3 -mlsx" } */
/* { dg-final { scan-assembler "vavg.b" } } */
/* { dg-final { scan-assembler "vavg.bu" } } */
/* { dg-final { scan-assembler "vavg.hu" } } */
/* { dg-final { scan-assembler "vavg.h" } } */
#define N 1024
#define TEST(TYPE, NAME) \
TYPE a_##NAME[N], b_##NAME[N], c_##NAME[N]; \
void f_##NAME (void) \
{ \
int i; \
for (i = 0; i < N; i++) \
a_##NAME[i] = (b_##NAME[i] + c_##NAME[i]) >> 1; \
}
TEST(char, 1);
TEST(short, 2);
TEST(unsigned char, 3);
TEST(unsigned short, 4);