1 /* { dg-do compile } */
2 /* { dg-require-effective-target arm_neon_ok } */
3 /* { dg-options "-O1 -funsafe-math-optimizations -ftree-vectorize" }  */
4 /* { dg-add-options arm_neon } */
5 
6 #define MAX(a, b) (a > b ? a : b)
foo(int ilast,float * w,float * w2)7 void foo (int ilast,float* w, float* w2)
8 {
9   int i;
10   for (i = 0; i < ilast; ++i)
11   {
12     w[i] = MAX (0.0f, w2[i]);
13   }
14 }
15 
16 /* { dg-final { scan-assembler "vcgt\\.f32\[\\t \]*q\[0-9\]+,\[\\t \]*q\[0-9\]+,\[\\t \]*q\[0-9\]+" } } */
17 /* { dg-final { scan-assembler "vbsl|vbit|vbif\[\\t \]*q\[0-9\]+,\[\\t \]*q\[0-9\]+,\[\\t \]*q\[0-9\]+" } } */
18