OSDN Git Service

PR rtl-optimization/52139
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / tree-ssa / loadpre5.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-pre-stats" } */
3 int p;
4 int r;
5
6 __attribute__ ((noinline))
7 static int a(void)
8 {
9   return p;
10 }
11 int foo(int argc)
12 {
13   int q;
14   q = a();
15
16   /* We should be able to move the call to a into the if path.
17      in a perfect world, we'd actually decide that it can't touch
18      r, and not recompute it at all!.  */
19   if (argc)
20     r = 9;
21   return q + a();
22 }
23 /* { dg-final { scan-tree-dump-times "Eliminated: 1" 1 "pre"} } */
24 /* { dg-final { cleanup-tree-dump "pre" } } */