PR testsuite/52641
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / sra-8.c
blobd43bbe0d8a3b6d66a5241d4262ef0d5038fd83c8
1 /* A testcase for PR 40744. We do not want to create replacements for object
2 that are dead or have only a single use, whenever it can be avoided
3 simply. */
4 /* { dg-do compile } */
5 /* { dg-options "-O1 -fdump-tree-esra-details" } */
7 struct X { int i; int j; };
9 void foo(void)
11 struct X x;
12 x.i = 1;
13 x.j = 2;
17 int bar(struct X x)
19 return x.i;
23 extern void do_something (struct X);
25 void bar2(int i, int j)
27 struct X x;
29 x.i = i;
30 x.j = j;
31 do_something (x);
34 /* { dg-final { scan-tree-dump-times "Created a replacement" 0 "esra"} } */
35 /* { dg-final { cleanup-tree-dump "esra" } } */