1  /* PR tree-optimization/91029 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-O2 -fdump-tree-evrp" } */
       4  
       5  void kill (void);
       6  int xx;
       7  
       8  void f1 (int i, int j)
       9  {
      10    if ((i % j) == 3)
      11      {
      12        xx = (j <= 3 && j >= -3);
      13        if (xx)
      14          kill ();
      15      }
      16  }
      17  
      18  void f2 (int i, int j)
      19  {
      20    if ((i % j) > 0)
      21      {
      22        xx = (j <= 1 && j >= -1);
      23        if (xx)
      24          kill ();
      25      }
      26  }
      27  
      28  void f3 (int i, int j)
      29  {
      30    if ((i % j) == -3)
      31      {
      32        xx = (j <= 3 && j >= -3);
      33        if (xx)
      34          kill ();
      35      }
      36  }
      37  
      38  void f4 (int i, int j)
      39  {
      40    if ((i % j) < 0)
      41      {
      42        xx = (j <= 1 && j >= -1);
      43        if (xx)
      44          kill ();
      45      }
      46  }
      47  
      48  void f5 (int i, int j)
      49  {
      50    if ((i % j) > 42)
      51      {
      52        xx = (j <= 43 && j >= -43);
      53        if (xx)
      54          kill ();
      55      }
      56  }
      57  
      58  void f6 (int i, int j)
      59  {
      60    if ((i % j) < -124)
      61      {
      62        xx = (j <= 125 && j >= -125);
      63        if (xx)
      64          kill ();
      65      }
      66  }
      67  
      68  void f7 (unsigned int i, unsigned int j)
      69  {
      70    if ((i % j) == 3)
      71      {
      72        xx = (j <= 3);
      73        if (xx)
      74          kill ();
      75      }
      76  }
      77  
      78  void f8 (unsigned int i, unsigned int j)
      79  {
      80    if ((i % j) > 0)
      81      {
      82        xx = (j <= 1);
      83        if (xx)
      84          kill ();
      85      }
      86  }
      87  
      88  void f9 (unsigned int i, unsigned int j)
      89  {
      90    if ((i % j) >= 124)
      91      {
      92        xx = (j <= 124);
      93        if (xx)
      94          kill ();
      95      }
      96  }
      97  
      98  /* { dg-final { scan-tree-dump-not "kill" "evrp" } }  */