alibaba/AliSQL
storage/ndb/ndb_configure.cmake
:156
CHECK_CXX_SOURCE_RUNS("
#define HAVE_ATOMIC_H ${HAVE_ATOMIC_H}
#include \"${CMAKE_SOURCE_DIR}/storage/ndb/src/kernel/vm/mt-asm.h\"
int main()
{
unsigned int a = 0;
volatile unsigned int *ap = (volatile unsigned int*)&a;
#ifdef NDB_HAVE_XCNG
a = xcng(ap, 1);
cpu_pause();
#endif
mb();
* ap = 2;
rmb();
* ap = 1;
wmb();
* ap = 0;
read_barrier_depends();
return a;
}"
NDB_BUILD_NDBMTD)