libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / ssa-fre-75.c
blob54bfe731bdd230e3440736833ae09a83dea2f43f
1 /* { dg-do compile } */
2 /* { dg-require-effective-target int32plus } */
3 /* { dg-options "-O -fgimple -fdump-tree-fre1" } */
5 typedef int v4si __attribute__((vector_size(__SIZEOF_INT__ * 4)));
6 #if __SIZEOF_INT__ == 4
7 __GIMPLE (ssa) int foo (int *a)
9 v4si _2;
10 int _3;
11 int _4;
12 int _5;
13 int _6;
14 int _7;
15 int _8;
16 int _9;
18 __BB(2):
19 __MEM <unsigned char[3 * __SIZEOF_INT__]> ((char *)a_1(D) + 4) = _Literal (unsigned char[3 * __SIZEOF_INT__]) {};
20 __MEM <int> (a_1(D) + 8) = 2;
21 __MEM <int> (a_1(D)) = 1;
22 _2 = __MEM <v4si> (a_1(D));
23 _3 = __BIT_FIELD_REF <int> (_2, 32, 0);
24 _4 = __BIT_FIELD_REF <int> (_2, 32, 32);
25 _5 = __BIT_FIELD_REF <int> (_2, 32, 64);
26 _6 = __BIT_FIELD_REF <int> (_2, 32, 96);
27 _7 = _3 + _4;
28 _8 = _7 + _5;
29 _9 = _8 + _6;
30 return _9;
32 #endif
34 /* { dg-final { scan-tree-dump "return 3;" "fre1" } } */