1  /* { dg-do compile } */
       2  /* { dg-require-effective-target vect_int } */
       3  /* { dg-require-effective-target vect_float } */
       4  /* { dg-require-effective-target vect_condition } */
       5  
       6  float a,b,c,d;
       7  
       8  float z[1024]; int ok[1024];
       9  const float rBig = 150.;
      10  
      11  void foo()
      12  {
      13    int i;
      14  
      15    for (i=0; i!=1024; ++i)
      16      {
      17        float rR = a*z[i];
      18        float rL = b*z[i];
      19        float rMin = (rR<rL) ? rR : rL;
      20        float rMax = (rR<rL) ? rL : rR;
      21        rMin = (rMax>0) ? rMin : rBig;
      22        rMin = (rMin>0) ? rMin : rMax;
      23        ok[i] = rMin-c<rMax+d;
      24      }
      25  }
      26  
      27  /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { vect_floatint_cvt } xfail { ! vect_cond_mixed } } } } */