1 /* { dg-do compile } */
2
3 /* Copied from PR 88915. */
pixel_avg(unsigned char * dst,int i_dst_stride,unsigned char * src1,int i_src1_stride,unsigned char * src2,int i_src2_stride,int i_width,int i_height)4 void pixel_avg( unsigned char *dst, int i_dst_stride,
5 unsigned char *src1, int i_src1_stride,
6 unsigned char *src2, int i_src2_stride,
7 int i_width, int i_height )
8 {
9 for( int y = 0; y < i_height; y++ )
10 {
11 for( int x = 0; x < i_width; x++ )
12 dst[x] = ( src1[x] + src2[x] + 1 ) >> 1;
13 dst += i_dst_stride;
14 src1 += i_src1_stride;
15 src2 += i_src2_stride;
16 }
17 }
18
19 /* { dg-final { scan-tree-dump "LOOP EPILOGUE VECTORIZED" "vect" { target vect_multiple_sizes xfail { { arm32 && be } || vect_partial_vectors_usage_2 } } } } */
20