blob: 16f53dacc66cd71e16e2a78045b52ae8c25029c4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
/* { dg-do compile } */
/* { dg-require-effective-target vect_int } */
typedef unsigned char uint8_t;
vsad16_c (void *c, uint8_t * s1, uint8_t * s2, int stride, int h)
{
int score = 0;
int x, y;
for (x = 0; x < 16; x++)
score += ((s1[x] - s1[x + stride] + s2[x + stride]) >= 0 ?
s1[x] + s2[x + stride] :
s2[x + stride]);
return score;
}
/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_condition } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
|