1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-dse1" } */
3 
4 int a, b, c;
5 int
foo()6 foo ()
7 {
8   int *p;
9   if (c)
10     p = &a;
11   else
12     p = &b;
13 
14   *p = 3;
15   *p = 4;
16   return *p;
17 }
18 
19 
20 /* We should eliminate the first assignment to *p, but not the second.  */
21 /* { dg-final { scan-tree-dump-times " = 3" 0 "dse1"} } */
22 /* { dg-final { scan-tree-dump-times " = 4" 1 "dse1"} } */
23 
24