1  /* { dg-do compile } */
       2  /* { dg-options "-O -fdump-tree-optimized-details-blocks" } */
       3  
       4  /* Testcase for PR31657.  */
       5  
       6  int foo (int x, int a, int b)
       7  {
       8    int c = 1 << a;
       9    if (x & c)
      10      if (x & (1 << b))
      11        /* returning 1 causes phiopt to trigger in */
      12        return 2;
      13    return 0;
      14  }
      15  
      16  /* { dg-final { scan-tree-dump "\\|" "optimized" } } */
      17  /* { dg-final { scan-tree-dump-not "Invalid sum" "optimized" } } */