PR tree-optimization/84740
[official-gcc.git] / gcc / testsuite / gcc.dg / vect / pr78558.c
blob2606d4ec10d3fa18a4c0e4b8e9dd02131cb57ba7
1 /* PR tree-optimization/78558 */
3 #include "tree-vect.h"
5 struct S
7 char p[48];
8 unsigned long long q, r, s;
9 } s[50];
11 struct D
13 unsigned long long q, r;
14 } d[50];
16 void
17 foo (void)
19 unsigned long i;
20 for (i = 0; i < 50; ++i)
22 d[i].q = s[i].q;
23 d[i].r = s[i].r;
27 int
28 main ()
30 check_vect ();
31 unsigned long i;
32 for (i = 0; i < 50; ++i)
34 s[i].q = i;
35 s[i].r = 50 * i;
37 asm volatile ("" : : "g" (s), "g" (d) : "memory");
38 foo ();
39 asm volatile ("" : : "g" (s), "g" (d) : "memory");
40 for (i = 0; i < 50; ++i)
41 if (d[i].q != i || d[i].r != 50 * i)
42 abort ();
43 return 0;