libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / ssa-fre-102.c
blobafd48050819c0d997461103e021cc8fa1a797e15
1 /* PR/111715 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fdump-tree-fre1" } */
5 struct B {
6 struct { int len; } l;
7 long n;
8 };
9 struct A {
10 struct B elts[8];
13 static void
14 set_len (struct B *b, int len)
16 b->l.len = len;
19 static int
20 get_len (struct B *b)
22 return b->l.len;
25 int foo (struct A *a, int i, long *q)
27 set_len (&a->elts[i], 1);
28 *q = 2;
29 return get_len (&a->elts[i]);
32 /* { dg-final { scan-tree-dump "return 1;" "fre1" } } */