frcsr

RISC-V frcsr 伪指令详解

汇编器伪指令

RISC-V frcsr 伪指令按 RISC-V Assembly Programmer's Manual 展开为 csrrs rd, fcsr, x0;ISA 第 21.2 节说明它把 fcsr 复制到整数寄存器 rd。

你写下的是
frcsr rd
常见真实展开
csrrs rd, fcsr, x0

这条伪指令到底在帮你省什么

frcsr rd 用于读取浮点控制/状态寄存器 fcsr。

可用性与扩展条件

基础条件
  • 适用于实现所述 fcsr CSR 的环境。

展开过程怎么理解

步骤 1
CSRRS 读取 fcsr;rs1=x0 时 CSRRS 不写入该 CSR。

汇编写法与真实指令

本页只记录官方展开;RISC-V Assembly Programmer's Manual 将这些拼写列为伪指令。

官方依据与阅读顺序

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

什么时候优先想到它

使用 frcsr rd 读取 fcsr。

容易混淆 / 常见误区

CSRRS 始终读取目标 CSR;rs1=x0 只抑制写入。

常见问题

frcsr 是独立硬件 opcode 吗?

不是。RISC-V Assembly Programmer's Manual 将 frcsr 列为汇编器伪指令;行为来自所列 CSR 指令展开。

frcsr 的官方展开是什么?

RISC-V Assembly Programmer's Manual 列出:csrrs rd, fcsr, x0。