/* { dg-do run } */
/* { dg-options "-O2 -mcx16" { target { { i?86-*-* x86_64-*-* } && lp64 } } } */

#ifdef __x86_64__
#include "cpuid.h"
#endif

double d = 1.5;
long double ld = 3;
extern void abort (void);

void
test (void)
{
#pragma omp atomic
  d *= 1.25;
#pragma omp atomic
  ld /= 0.75;
  if (d != 1.875 || ld != 4.0L)
    abort ();
}

int
main (void)
{
#ifdef __x86_64__
  unsigned int eax, ebx, ecx, edx;

  if (!__get_cpuid (1, &eax, &ebx, &ecx, &edx))
    return 0;

  if (!(ecx & bit_CMPXCHG16B))
    return 0;
#endif
  test ();
  return 0;
}
