1  /* { dg-do compile } */
       2  /* { dg-require-effective-target arm_v8_2a_fp16_neon_ok } */
       3  /* { dg-add-options arm_v8_2a_fp16_neon } */
       4  /* { dg-additional-options "-O3 -funsafe-math-optimizations" } */
       5  
       6  #include "mve-compare-3.c"
       7  
       8  
       9  /* eq, ne, lt, le, gt, ge.  */
      10  /* ne uses eq+vmvn, lt/le use gt/ge with swapped operands.  */
      11  /* { dg-final { scan-assembler-times {\tvceq.f16\tq[0-9]+, q[0-9]+, q[0-9]+\n} 2 } } */
      12  /* { dg-final { scan-assembler-times {\tvmvn\tq[0-9]+, q[0-9]+\n} 1 } } */
      13  /* { dg-final { scan-assembler-times {\tvcgt.f16\tq[0-9]+, q[0-9]+, q[0-9]+\n} 2 } } */
      14  /* { dg-final { scan-assembler-times {\tvcge.f16\tq[0-9]+, q[0-9]+, q[0-9]+\n} 2 } } */