59 |
case memory_order_seq_cst: |
case memory_order_seq_cst: |
60 |
#ifdef _ARCH_PPC |
#ifdef _ARCH_PPC |
61 |
asm volatile("sync" : : : "memory"); |
asm volatile("sync" : : : "memory"); |
62 |
#elif defined(__i386__) || defined(__x86_64__) |
#elif defined(__i386__) |
63 |
asm volatile("lock; addl $0,0(%%esp)" : : : "memory"); |
asm volatile("lock; addl $0,0(%%esp)" : : : "memory"); |
64 |
|
#elif defined(__x86_64__) |
65 |
|
asm volatile("mfence" : : : "memory"); |
66 |
#else |
#else |
67 |
asm volatile("" : : : "memory"); |
asm volatile("" : : : "memory"); |
68 |
#endif |
#endif |