1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -fdump-tree-dce2 -fdump-tree-forwprop1-details" } */
       3    
       4  int abarney[2];
       5  int afred[1];
       6   
       7  void foo(int edx, int eax)
       8  {
       9    if (eax == 100)
      10      {
      11        if (edx == 1)
      12          {
      13            abarney[0] = 5;
      14            abarney[1] = 6;
      15          }
      16      }
      17    if (eax == 100)
      18      {
      19        if (-- edx == 0)
      20          afred[0] = 2;
      21      }
      22  }
      23   
      24  
      25  /* Verify that we did a forward propagation.  */
      26  /* { dg-final { scan-tree-dump-times "gimple_simplified" 1 "forwprop1"} } */
      27  
      28  /* After dce we should have two IF statements remaining as the other
      29     two tests can be threaded.  */
      30  /* { dg-final { scan-tree-dump-times "if " 2 "dce2"} } */