Do these floating-point instructions use vxrm?
No. Ordinary RVV floating-point operations and FP conversions use floating-point frm or an instruction-specified fixed rounding mode; vxrm is for fixed-point rounding instructions.
Add SEW float elements of vs2 with f[rs1], writing widened result (2×SEW) to vd.
VFWADD.VF performs widening floating-point addition. SEW-wide source elements are added and the result is written to a 2*SEW-wide vd. Vector FP32/FP64 operation requires the corresponding scalar F/D support; FP16 is controlled by the relevant vector half-precision extensions; do not assume the base V extension includes half-precision arithmetic.
VFWADD.VF keeps the add result at wider precision, unlike single-width VFADD.
Understand this scenario with real code like «vsetvli t0, a0, e32, m1, ta, ma vfwadd.vf v2, v4, ft0 # 32b→64b result in v2-v3».
Understand this scenario with real code like «vsetvli t0, a0, e32, m1, ta, ma vfwadd.vf v2, v4, ft0 # 32b→64b result in v2-v3».
No. Ordinary RVV floating-point operations and FP conversions use floating-point frm or an instruction-specified fixed rounding mode; vxrm is for fixed-point rounding instructions.