(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
vect/
vect-cond-arith-2.c
       1  /* { dg-do compile } */
       2  /* { dg-additional-options "-fgimple -fdump-tree-optimized -ffast-math" } */
       3  
       4  double __GIMPLE (ssa, startwith("loop"))
       5  neg_xi (double *x)
       6  {
       7    int i;
       8    long unsigned int index;
       9    long unsigned int offset;
      10    double * xi_ptr;
      11    double xi;
      12    double neg_xi;
      13    double res;
      14    unsigned int ivtmp;
      15  
      16   __BB(5):
      17    goto __BB2;
      18  
      19   __BB(2):
      20    res_1 = __PHI (__BB5: 0.0, __BB3: res_2);
      21    i_4 = __PHI (__BB5: 0, __BB3: i_5);
      22    ivtmp_6 = __PHI (__BB5: 100U, __BB3: ivtmp_7);
      23    index = (long unsigned int) i_4;
      24    offset = index * 8UL;
      25    xi_ptr = x_8(D) + offset;
      26    xi = *xi_ptr;
      27    neg_xi = -xi;
      28    res_2 = neg_xi + res_1;
      29    i_5 = i_4 + 1;
      30    ivtmp_7 = ivtmp_6 - 1U;
      31    if (ivtmp_7 != 0U)
      32      goto __BB3;
      33    else
      34      goto __BB4;
      35  
      36   __BB(3):
      37    goto __BB2;
      38  
      39   __BB(4):
      40    res_3 = __PHI (__BB2: res_2);
      41    return res_3;
      42  }
      43  
      44  /* { dg-final { scan-tree-dump { = \.COND_ADD} "vect" { target { vect_double_cond_arith && vect_fully_masked } } } } */
      45  /* { dg-final { scan-tree-dump { = \.COND_SUB} "optimized" { target { vect_double_cond_arith && vect_fully_masked } } } } */