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