[PATCH 09/11] Handle arrays for CodeView
[official-gcc.git] / gcc / testsuite / gcc.dg / vect / pr64404.c
blob6fecf9ecae18e49808a58fe17a6b912786bdbad3
1 /* { dg-additional-options "--param=sccvn-max-alias-queries-per-access=1" } */
3 #include "tree-vect.h"
5 extern void abort (void);
7 typedef struct
9 int l, h;
10 } tFPinterval;
12 tFPinterval X[1024];
13 tFPinterval Y[1024];
14 tFPinterval Z[1024];
16 void __attribute__((noinline))
17 Compute (void)
19 int d;
20 for (d = 0; d < 1024; d++)
22 Y[d].l = X[d].l + X[d].h;
23 Y[d].h = Y[d].l;
24 Z[d].l = X[d].l;
25 Z[d].h = X[d].h;
29 int
30 main (void)
32 int d;
34 check_vect ();
36 for (d = 0; d < 1024; d++)
38 X[d].l = d;
39 X[d].h = d + 1;
40 __asm__ volatile ("");
43 Compute ();
45 #pragma GCC novector
46 for (d = 0; d < 1024; d++)
48 if (Y[d].l != X[d].l + X[d].h
49 || Y[d].h != Y[d].l
50 || Z[d].l != X[d].l
51 || Z[d].h != X[d].h)
52 abort ();
53 __asm__ volatile ("");
56 return 0;