strlenopt-21.c (dg-options): Remove -fdump-tree-optimized.
[gcc.git] / gcc / testsuite / gcc.dg / ipa / inline-5.c
1 /* Check statements that are eliminated by inlining. */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fdump-ipa-inline-details -fno-early-inlining -fno-partial-inlining -fno-ipa-cp" } */
4 struct a {int a,b,c,d,e;};
5
6 void
7 accessfield (struct a a)
8 {
9 t(a.a);
10 /* Should compile as:
11 tmp = a.a
12 Will be eliminated by inlining
13 t (tmp); */
14 t2(&a);
15 t(a.a);
16 return;
17 /* Will be eliminated by inlining */
18 }
19 void
20 accessreference (struct a *a)
21 {
22 t(a->a);
23 /* Should compile as:
24 a.0_1 = a;
25 Will be eliminated by inlining
26 tmp = a.0_1->a;
27 50% will be eliminated by inlining
28 t (tmp) */
29 t2(&a);
30 return;
31 /* Will be eliminated by inlining */
32 }
33
34 /* { dg-final { scan-ipa-dump-times "Will be eliminated" 4 "inline" } } */
35 /* { dg-final { scan-ipa-dump-times "50. will be eliminated" 1 "inline" } } */
36 /* { dg-final { cleanup-ipa-dump "inline" } } */