(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
tree-ssa/
ssa-thread-15.c
       1  /* { dg-do compile } */ 
       2  /* { dg-options "-O2 -fdump-tree-vrp1" } */
       3  
       4  /* We should thread the if (!in_loop) completely leaving
       5     just two conditionals.  */
       6  /* { dg-final { scan-tree-dump-times "if \\(" 2 "vrp1" } } */
       7  
       8  
       9  union tree_node;
      10  typedef union tree_node *tree;
      11  
      12  enum size_type_kind
      13  {
      14    SIZETYPE,
      15    SSIZETYPE,
      16    BITSIZETYPE,
      17    SBITSIZETYPE,
      18    TYPE_KIND_LAST
      19  };
      20  extern tree size_int_kind (long, enum size_type_kind);
      21  
      22  
      23  
      24  typedef struct
      25  {
      26  
      27    tree base, step;
      28  
      29  } affine_iv;
      30  
      31  struct loop
      32  {
      33  
      34    int num;
      35  };
      36  extern unsigned char simple_iv ();
      37  
      38  unsigned char
      39  dr_analyze_innermost (struct loop *loop, tree poffset)
      40  {
      41    affine_iv offset_iv;
      42    unsigned char in_loop = (loop && loop->num);
      43  
      44  
      45    if (in_loop)
      46      simple_iv ();
      47  
      48    if (!in_loop)
      49      offset_iv.step = size_int_kind (0, SSIZETYPE);
      50  
      51  }