1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -msse2" } */
       3  /* { dg-final { scan-assembler "cmpunordss" } } */
       4  /* { dg-final { scan-assembler "cmpunordps" } } */
       5  /* { dg-final { scan-assembler "cmpunordsd" } } */
       6  /* { dg-final { scan-assembler "cmpunordpd" } } */
       7  /* { dg-final { scan-assembler-not "cmpordss" } } */
       8  /* { dg-final { scan-assembler-not "cmpordps" } } */
       9  /* { dg-final { scan-assembler-not "cmpordsd" } } */
      10  /* { dg-final { scan-assembler-not "cmpordpd" } } */
      11  
      12  #include <emmintrin.h>
      13  
      14  __m128
      15  f1 (__m128 x, __m128 y)
      16  {
      17    return _mm_cmpunord_ss (x, y);
      18  }
      19  
      20  __m128
      21  f2 (__m128 x, __m128 y)
      22  {
      23    return _mm_cmpunord_ps (x, y);
      24  }
      25  
      26  __m128d
      27  f3 (__m128d x, __m128d y)
      28  {
      29    return _mm_cmpunord_sd (x, y);
      30  }
      31  
      32  __m128d
      33  f4 (__m128d x, __m128d y)
      34  {
      35    return _mm_cmpunord_pd (x, y);
      36  }