csrci

RISC-V csrci 伪指令详解

汇编器伪指令

RISC-V csrci 是 CSR 立即数伪指令,展开为 csrrci x0, csr, imm。5 位 uimm 零扩展为 XLEN 位值,用作清除可写 CSR 位的掩码;uimm=0 时不写入 CSR,但仍读取。

你写下的是
csrci csr, imm
常见真实展开
csrrci x0, csr, imm

官方依据与阅读顺序

本页把伪指令当作汇编器层面的别名或宏来解释:先看它会展开成哪些真实指令,再回到官方 ISA 手册理解真实指令的行为。涉及 ABI、重定位或链接器松弛时,以 psABI 文档为准。

常见问题

csrci 的立即数如何解释?

CSRRCI 将 5 位 uimm 零扩展为 XLEN 位值,并以该值作为清除可写 CSR 位的掩码。

csrci 的 uimm=0 时还会访问 CSR 吗?

CSRRCI 仍读取 CSR,并产生相应的读取副作用。uimm=0 时不写入 CSR,也不产生 CSR 写副作用。rd=x0 丢弃读取结果,并不抑制读取。