1 /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
2 /* Check that we can use this idiom to define out-of-line copies of built-in
3    functions.  This is used by libgcc/sync.c, for example.  */
__sync_synchronize(void)4 void __sync_synchronize (void)
5 {
6   __sync_synchronize ();
7 }
8 /* { dg-final { scan-assembler "__sync_synchronize" } } */
9 /* { dg-final { scan-assembler "\t(lock|mfence)" } } */
10 /* { dg-final { scan-assembler-not "\tcall" } } */
11