/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O2 -msse2" } */
/* { dg-final { scan-assembler "cmpunordss" } } */
/* { dg-final { scan-assembler "cmpunordps" } } */
/* { dg-final { scan-assembler "cmpunordsd" } } */
/* { dg-final { scan-assembler "cmpunordpd" } } */
/* { dg-final { scan-assembler-not "cmpordss" } } */
/* { dg-final { scan-assembler-not "cmpordps" } } */
/* { dg-final { scan-assembler-not "cmpordsd" } } */
/* { dg-final { scan-assembler-not "cmpordpd" } } */

#include <emmintrin.h>

__m128
f1 (__m128 x, __m128 y)
{
  return _mm_cmpunord_ss (x, y);
}

__m128
f2 (__m128 x, __m128 y)
{
  return _mm_cmpunord_ps (x, y);
}

__m128d
f3 (__m128d x, __m128d y)
{
  return _mm_cmpunord_sd (x, y);
}

__m128d
f4 (__m128d x, __m128d y)
{
  return _mm_cmpunord_pd (x, y);
}
