我需要相当于以下的原子操作代码:
__asm__ __volatile__ (
" lock;\n"
" addl %1, %0; \n"
" movl %0, %%eax"
: "=m"(a), "=a" (c)
: "ir"(b)
);
(在 Linux 上添加两个变量 a 和 b 以及存储在 a 和 c 中的输出)
在 Solaris(Sparc 架构)上需要与上述等效。有没有人可以帮帮我?