1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -fdump-tree-ivopts" } */
       3  
       4  void bar (int, int, int);
       5  void foo (int left, int rite, int element)
       6  {
       7    while (left <= rite)
       8      {
       9        rite -= element;
      10        bar (left, rite, element);
      11        left += element;
      12      }
      13  }
      14  
      15  /* { dg-final { scan-tree-dump-times "rite_\[0-9\]* = rite_\[0-9\]* - element" 1 "ivopts"} } */
      16  /* { dg-final { scan-tree-dump-times "left_\[0-9\]* = left_\[0-9\]* \\+ element|left_\[0-9\]* = element_\[0-9\]*\\(D\\) \\+ left" 1 "ivopts"} } */