When does rm matter for fcvt.lu.q?
When conversion requires rounding, rm or dynamic frm selects the rounding direction; out-of-range or NaN inputs follow the official invalid-conversion rule.
Convert quad FP to unsigned 64-bit int [RV64]. R-type, fmt=LU(11), rs2=source Q(11).
fcvt.lu.q converts a quad-precision source operand to an unsigned 64-bit integer result. Floating-point-to-integer conversion rounds according to rm and writes integer register rd.
fcvt.lu.q converts a quad-precision source operand to an unsigned 64-bit integer result. Floating-point-to-integer conversion rounds according to rm and writes integer register rd.
Understand this scenario with real code like «fcvt.lu.q x10, f0, rtz # x10 = (ulong)f0 (RV64)».
Understand this scenario with real code like «fcvt.lu.q x10, f0, rtz # x10 = (ulong)f0 (RV64)».
When conversion requires rounding, rm or dynamic frm selects the rounding direction; out-of-range or NaN inputs follow the official invalid-conversion rule.
It differs by source/destination format, integer signedness, RV64 restrictions, and whether rounding or invalid conversion can occur.