Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gcc.dg/vect/bb-slp-29.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
7 #define B 4 | 7 #define B 4 |
8 #define N 256 | 8 #define N 256 |
9 | 9 |
10 short src[N], dst[N]; | 10 short src[N], dst[N]; |
11 | 11 |
12 void foo (short * __restrict__ dst, short * __restrict__ src, int h, int stride, int dummy) | 12 void foo (short * __restrict__ dst, short * __restrict__ src, int h, |
13 int stride) | |
13 { | 14 { |
14 int i; | 15 int i; |
15 h /= 16; | 16 h /= 16; |
16 for (i = 0; i < h; i++) | 17 for (i = 0; i < h; i++) |
17 { | 18 { |
23 dst[5] = A*src[5] + B*src[6]; | 24 dst[5] = A*src[5] + B*src[6]; |
24 dst[6] = A*src[6] + B*src[7]; | 25 dst[6] = A*src[6] + B*src[7]; |
25 dst[7] = A*src[7] + B*src[8]; | 26 dst[7] = A*src[7] + B*src[8]; |
26 dst += stride; | 27 dst += stride; |
27 src += stride; | 28 src += stride; |
28 if (dummy == 32) | 29 asm volatile ("" ::: "memory"); |
29 abort (); | |
30 } | 30 } |
31 } | 31 } |
32 | 32 |
33 | 33 |
34 int main (void) | 34 int main (void) |
41 { | 41 { |
42 dst[i] = 0; | 42 dst[i] = 0; |
43 src[i] = i; | 43 src[i] = i; |
44 } | 44 } |
45 | 45 |
46 foo (dst, src, N, 8, 0); | 46 foo (dst, src, N, 8); |
47 | 47 |
48 for (i = 0; i < N/2; i++) | 48 for (i = 0; i < N/2; i++) |
49 { | 49 { |
50 if (dst[i] != A * src[i] + B * src[i+1]) | 50 if (dst[i] != A * src[i] + B * src[i+1]) |
51 abort (); | 51 abort (); |