CMGDK r49-rc2
宏定义
K:/CMGDKv18/SDK/Source/SQL/MySQL/include/atomic/x86-gcc.h文件参考

浏览该文件的源代码。

宏定义

#define MY_ATOMIC_MODE   "gcc-x86" LOCK_prefix
#define asm   __asm__
#define make_atomic_add_body(S)   asm volatile (LOCK_prefix "; xadd %0, %1;" : "+r" (v) , "+m" (*a))
#define make_atomic_fas_body(S)   asm volatile ("xchg %0, %1;" : "+r" (v) , "+m" (*a))
#define make_atomic_cas_body(S)
#define make_atomic_load_body(S)
#define make_atomic_store_body(S)   asm volatile ("; xchg %0, %1;" : "+m" (*a), "+r" (v))

宏定义文档

#define asm   __asm__
#define make_atomic_add_body (   S)    asm volatile (LOCK_prefix "; xadd %0, %1;" : "+r" (v) , "+m" (*a))
#define make_atomic_cas_body (   S)
值:
asm volatile (LOCK_prefix "; cmpxchg %3, %0; setz %2;"  \
               : "+m" (*a), "+a" (*cmp), "=q" (ret): "r" (set))
#define make_atomic_fas_body (   S)    asm volatile ("xchg %0, %1;" : "+r" (v) , "+m" (*a))
#define make_atomic_load_body (   S)
值:
ret=0;                          \
  asm volatile (LOCK_prefix "; cmpxchg %2, %0"          \
               : "+m" (*a), "+a" (ret): "r" (ret))
#define make_atomic_store_body (   S)    asm volatile ("; xchg %0, %1;" : "+m" (*a), "+r" (v))
#define MY_ATOMIC_MODE   "gcc-x86" LOCK_prefix
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义