这些浮点指令使用 vxrm 吗?
不使用。普通 RVV 浮点运算和浮点转换使用浮点舍入模式 frm 或指令指定的固定舍入;vxrm 用于定点舍入指令。
将vs2的每个浮点元素乘以f寄存器rs1,结果写入vd。
VFMUL.VF 执行向量浮点乘法。浮点结果按 IEEE 754/RVV 浮点规则产生;源和目标为当前 SEW 宽度。 向量 FP32/FP64 操作需要实现相应标量 F/D 支持;FP16 由相应的向量半精度扩展控制;不要假定基础 V 扩展自动包含半精度算术。
VFMUL.VF 的关键是融合语义:乘积不会先舍入再加/减,因此不能按普通 MUL 后 ADD 的两步结果理解。
结合 «vsetvli t0, a0, e32, m1, ta, ma vfmul.vf v1, v2, ft0 # v1[i] = v2[i] * ft0» 等实际代码理解该场景。
结合 «vsetvli t0, a0, e32, m1, ta, ma vfmul.vf v1, v2, ft0 # v1[i] = v2[i] * ft0» 等实际代码理解该场景。
不使用。普通 RVV 浮点运算和浮点转换使用浮点舍入模式 frm 或指令指定的固定舍入;vxrm 用于定点舍入指令。