RISC-V ISA Explorer · Single-Letter Extensions

Q: Quad-Precision Float (128-bit)

Ratified 2019-04 · version 2.2.0

Quad-precision IEEE 754 arithmetic on 128-bit floating-point registers, for math needing more range than double.

Typical use: High-precision scientific math

Specification

Open Q in the explorer

Dependencies

Requires

Instructions (34)

MnemonicNameEncodingMatchMask
FADD.QFloating-point Add Quad-Precision0000011------------------10100110x60000530xfe00007f
FCLASS.QFloating-Point Classify Quad-Precision111001100000-----001-----10100110xe60010530xfff0707f
FCVT.D.QFloating-Point Convert Quad-Precision to Double-Precision010000100011-------------10100110x423000530xfff0007f
FCVT.L.QFloating-Point Convert Quad-Precision to Long110001100010-------------10100110xc62000530xfff0007f
FCVT.LU.QFloating-Point Convert Quad-Precision to Unsigned Long110001100011-------------10100110xc63000530xfff0007f
FCVT.Q.DFloating-Point Convert Double-Precision to Quad-Precision010001100001-------------10100110x461000530xfff0007f
FCVT.Q.LFloating-Point Convert Long to Quad-Precision110101100010-------------10100110xd62000530xfff0007f
FCVT.Q.LUFloating-Point Convert Unsigned Long to Quad-Precision110101100011-------------10100110xd63000530xfff0007f
FCVT.Q.SFloating-Point Convert Single-Precision to Quad-Precision010001100000-------------10100110x460000530xfff0007f
FCVT.Q.WFloating-Point Convert Word to Quad-Precision110101100000-------------10100110xd60000530xfff0007f
FCVT.Q.WUFloating-Point Convert Unsigned Word to Quad-Precision110101100001-------------10100110xd61000530xfff0007f
FCVT.S.QFloating-Point Convert Quad-Precision to Single-Precision010000000011-------------10100110x403000530xfff0007f
FCVT.W.QFloating-point Convert Quad-precision to Word110001100000-------------10100110xc60000530xfff0007f
FCVT.WU.QFloating-Point Convert Unsigned Quad-Precision to Word110001100001-------------10100110xc61000530xfff0007f
FDIV.QFloating-Point Divide Quad-Precision0001111------------------10100110x1e0000530xfe00007f
FEQ.QFloating-Point Equal Quad-Precision1010011----------010-----10100110xa60020530xfe00707f
FLE.QFloating-Point Less Than or Equal Quad-Precision1010011----------000-----10100110xa60000530xfe00707f
FLQFloating-Point Load Quad-Precision-----------------100-----00001110x40070x707f
FLT.QFloating-Point Less Than Quad-Precision1010011----------001-----10100110xa60010530xfe00707f
FMADD.QFloating-Point Multiply-Add Quad-Precision-----11------------------10000110x60000430x600007f
FMAX.QFloating-Point Maximum-Number Quad-Precision0010111----------001-----10100110x2e0010530xfe00707f
FMIN.QFloating-Point Minimum-Number Quad-Precision0010111----------000-----10100110x2e0000530xfe00707f
FMSUB.QFloating-Point Multiply-Subtract Quad-Precision-----11------------------10001110x60000470x600007f
FMUL.QFloating-point Multiply Quad-Precision0001011------------------10100110x160000530xfe00007f
FMV.Q.X111100110000-----000-----10100110xf30000530xfff0707f
FMV.X.Q111000110000-----000-----10100110xe30000530xfff0707f
FNMADD.QFloating-Point Negate-Multiply-Add Quad-Precision-----11------------------10011110x600004f0x600007f
FNMSUB.QFloating-Point Negate-Multiply-Subtract Quad-Precision-----11------------------10010110x600004b0x600007f
FSGNJ.QFloating-Point Sign-Inject Quad-Precision0010011----------000-----10100110x260000530xfe00707f
FSGNJN.QFloating-Point Sign-Inject Negate Quad-Precision0010011----------001-----10100110x260010530xfe00707f
FSGNJX.QFloating-Point Sign-Inject XOR Quad-Precision0010011----------010-----10100110x260020530xfe00707f
FSQFloating-Point Store Quad-Precision-----------------100-----01001110x40270x707f
FSQRT.QFloating-Point Square Root Quad-Precision010111100000-------------10100110x5e0000530xfff0007f
FSUB.QFloating-Point Subtract Quad-Precision0000111------------------10100110xe0000530xfe00007f