【发布时间】:2025-11-23 05:20:04
【问题描述】:
我对 x86 上的顺序一致加载操作感兴趣。
据我从汇编程序列表中看到的,由编译器生成的它是作为 x86 上的普通加载实现的,但据我所知,普通加载保证具有获取语义,而普通存储保证具有释放。
p>顺序一致的存储被实现为锁定的 xchg,而加载作为普通加载。这听起来很奇怪,你能详细解释一下吗?
添加
刚刚在互联网上发现,只要使用锁定的 xchg 完成存储,就可以像简单的 mov 一样完成顺序一致的原子加载,但没有证据,也没有文档链接。
【问题讨论】:
标签: assembly x86 atomic memory-barriers memory-model