GCC __atomic函数:_n后缀vs显式宽度,例如_4

时间:2015-09-30 13:22:13

标签: c gcc atomic intrinsics

GCC FCKConfig.ProtectedSource.Add( /<script>[\s\S]*?<\/script>/g ); API具有以__atomic结尾的多个功能,例如

_n

编译器还支持将__atomic_load_n __atomic_store_n 替换为1,2,4,8或16的内部函数(您必须推断存在于文档中 - IMO文档对于n而言非常模糊应该改进!)。当使用显式数字时,它告诉编译器原子操作应该操作的数据的宽度。当使用__atomic时,我假设编译器会根据传递的类型推断宽度,否则会出错。

我通过将_n传递给void*检查了最后一个声明并且抱怨了,这并不是什么大惊喜。

所以我的问题是:

  • 我所说的是正确的吗?
  • 有没有理由不使用__atomic_load_n版本,除非你有一些不透明的指针,需要明确地告诉编译器它的指针有多宽?
  • 我还缺少其他任何细微之处?

由于

0 个答案:

没有答案