1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -mavx512fp16" } */
       3  
       4  _Float16
       5  __attribute__ ((noinline, noclone))
       6  do_max (_Float16 __A, _Float16 __B)
       7  {
       8    return __A > __B ? __A : __B;
       9  }
      10  
      11  _Float16
      12  __attribute__ ((noinline, noclone))
      13  do_min (_Float16 __A, _Float16 __B)
      14  {
      15    return __A < __B ? __A : __B;
      16  }
      17  
      18  /* { dg-final { scan-assembler-times "vmaxsh\[ \\t\]" 1 } } */
      19  /* { dg-final { scan-assembler-times "vminsh\[ \\t\]" 1 } } */
      20  /* { dg-final { scan-assembler-not "vmovsh\[ \\t\]" { target { ! ia32 } } } } */
      21  /* { dg-final { scan-assembler-not "vcomish\[ \\t\]" } } */