【问题标题】:C built-in or inline-asm for lock ORC 内置或 inline-asm 用于锁定 OR
【发布时间】:2022-01-21 20:21:44
【问题描述】:

这个操作有内置的吗(在 C 中)?

lock or QWORD [...], ...

实际上,我正在 C 中搜索 lock or

如果没有内置的,我如何用 C inline-asm 编写它?

我使用的是 GCC(C 版本 11)。

【问题讨论】:

  • 取决于你使用的C语言的版本和扩展?
  • 似乎标准版本看起来像this(使用stdatomic.h)。

标签: c assembly gcc x86-64 atomic


【解决方案1】:

执行此操作的标准 C11 方法是使用 atomic_fetch_or。您可以执行以下操作:

#include <stdatomic.h>

atomic_int  var;

int res = atomic_fetch_or(&var, 0x100);

【讨论】:

  • 所以内置函数是__atomic_fetch_or 因为我正在寻找它的内置版本
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-29
  • 1970-01-01
  • 1970-01-01
  • 2019-01-31
  • 1970-01-01
  • 2016-09-18
相关资源
最近更新 更多