SD.AQRL 可以写 offset(rs1) 吗?
不可以。官方语法是 sd.aqrl rs2, (rs1),没有 offset 立即数字段;地址直接来自 rs1。
Zalasr 原子存储 8 字节,带 acquire+release-RCsc 排序标注(RV64-only)。
SD.AQRL 是 Zalasr 独立原子 load-acquire/store-release 家族中的 8 字节有序原子存储。它把 x[rs2] 的低 64 位原子写入 x[rs1] 指向的地址;语法没有 offset 字段,编码中的 rd 固定为 x0。地址默认必须按访问宽度自然对齐,除非 misaligned atomicity granule PMA 放宽该要求;D 宽度形式仅 RV64 定义。
展示 Zalasr 独立 store-release 的 AMO 编码、无 offset 地址语法、64-bit 数据传输和 aq/rl 排序标注。
SD.AQRL 只把 rs2 的低 64 位写入内存;rs2 高位不参与本次存储值。
该动画展示 Zalasr 的 ISA 可见原子 load/store 与 aq/rl 排序标注;不模拟 LR/SC 预留、AMO read-modify-write 旧值返回、cache、总线或流水线时序。
SD.AQRL 直接使用 rs1 作为地址,原子写入 rs2 的低 64 位;aq/rl 位提供排序标注,不会改变写入数据。
结合 «sd.aqrl x5, (x6)» 等实际代码理解该场景。
结合 «sd.aqrl x5, (x6)» 等实际代码理解该场景。
不可以。官方语法是 sd.aqrl rs2, (rs1),没有 offset 立即数字段;地址直接来自 rs1。
不是。Zalasr 这些指令是单条有序原子 load/store;动画不展示预留状态或旧值返回。
不会。aq/rl 是排序标注;存储值仍是 rs2 的低 64 位。