先看 vl
当前 vl 决定 body 元素数量。典型代码会先执行 vsetvli、vsetivli 或 vsetvl,再执行本页指令。
窄浮点操作数相乘,扩展后的 2*SEW 结果写入 vd。
VFWMUL.VF 是扩展浮点乘法,不是累加指令。f[rs1] 与 vs2[i] 相乘。结果以 2*SEW 宽度写入 vd。 向量 FP32/FP64 操作需要相应标量 F/D 支持;FP16 由相应向量半精度扩展控制,基础 V 扩展不自动包含半精度算术。
VFWMUL.VF 只做扩展乘法:窄输入相乘,宽结果写入 vd。
阅读 VFWMUL.VF 时,不要只看助记符。官方 V 扩展语义还依赖当前 vl、vtype 和掩码状态。.vf:一个向量源和一个浮点标量源参与运算。
当前 vl 决定 body 元素数量。典型代码会先执行 vsetvli、vsetivli 或 vsetvl,再执行本页指令。
当前 vtype 提供 SEW、LMUL、tail policy 和 mask policy;这些规则影响元素宽度、寄存器组大小以及非活动/尾部目标元素。
带 vm 的普通向量指令在 vm=0 时用 v0 作为执行掩码,vm=1 表示未掩码。VMERGE 等少数形式会把 v0 当作数据选择输入。
结合 «vsetvli t0, a0, e16, m1, ta, ma vfwmul.vf v2, ft0, v4» 等实际代码理解该场景。
结合 «vsetvli t0, a0, e16, m1, ta, ma vfwmul.vf v2, ft0, v4» 等实际代码理解该场景。
不使用。浮点算术和转换使用 frm 或指令规定的固定舍入;vxrm 用于定点舍入指令。