How is FMV.W.X different from FCVT?
FMV copies the bit pattern; FCVT performs numeric conversion, can round, and can set exception flags.
Bit-copy low integer-register bits into a single-precision floating-point register.
FMV.W.X bit-copies the low 32 bits of x[rs1] into f[rd] as a single-precision floating-point encoding; in a wider FLEN register the result is NaN-boxed. This is a bit move, not a numeric conversion.
FMV.W.X's core idea is bit-pattern movement. Use FCVT for numeric conversion and rounding; use FMV forms when preserving NaN payloads or inspecting raw encodings.
Understand this scenario with real code like «fmv.w.x f0, x10 # f0 gets bits from x10[31:0], NaN-boxed if FLEN>32».
Understand this scenario with real code like «fmv.w.x f0, x10 # f0 gets bits from x10[31:0], NaN-boxed if FLEN>32».
FMV copies the bit pattern; FCVT performs numeric conversion, can round, and can set exception flags.
No. It is neither arithmetic nor numeric conversion.