1/* { dg-do compile } */
2/* { dg-require-effective-target lp64 } */
3/* { dg-options "-O2 -mcx16" } */
4
5typedef int TItype __attribute__ ((mode (TI)));
6
7TItype m_128;
8
9void test(TItype x_128)
10{
11  m_128 = __sync_val_compare_and_swap (&m_128, x_128, m_128);
12}
13
14/* { dg-final { scan-assembler "cmpxchg16b" } } */
15