1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-pre-stats" } */
3 typedef int type[2];
foo(type * a,int argc,int t)4 int foo(type *a, int argc, int t)
5 {
6   type c = {0, 1};
7   int d, e;
8 
9   /* Should be able to eliminate the second load of *a along the main path. */
10   d = (*a)[t];
11   if (argc)
12     {
13       a = &c;
14     }
15   e = (*a)[t];
16   return d + e;
17 }
18 /* { dg-final { scan-tree-dump-times "Eliminated: 1" 1 "pre"} } */
19