RISC-V ISA Explorer · Single-Letter Extensions
D: Double-Precision Float (64-bit)
Ratified 2019-12 · version 2.2.0
Double-precision IEEE 754 arithmetic on 64-bit floating-point registers, building on the F extension.
Typical use: Numerical code that needs 64-bit precision
Open D in the explorerDependencies
Requires
Required by
Instructions (32)
| Mnemonic | Name | Encoding | Match | Mask |
|---|---|---|---|---|
FADD.D | Floating-Point Add Double-Precision | 0000001------------------1010011 | 0x2000053 | 0xfe00007f |
FCLASS.D | Floating-Point Classify Double-Precision | 111000100000-----001-----1010011 | 0xe2001053 | 0xfff0707f |
FCVT.D.L | Floating-Point Convert Long to Double-Precision | 110100100010-------------1010011 | 0xd2200053 | 0xfff0007f |
FCVT.D.LU | Floating-Point Convert Unsigned Long to Double-Precision | 110100100011-------------1010011 | 0xd2300053 | 0xfff0007f |
FCVT.D.S | Floating-Point Convert Single-Precision to Double-Precision | 010000100000-------------1010011 | 0x42000053 | 0xfff0007f |
FCVT.D.W | Floating-Point Convert Word to Double-Precision | 110100100000-------------1010011 | 0xd2000053 | 0xfff0007f |
FCVT.D.WU | Floating-Point Convert Unsigned Word to Double-Precision | 110100100001-------------1010011 | 0xd2100053 | 0xfff0007f |
FCVT.L.D | Floating-Point Convert Double-Precision to Long | 110000100010-------------1010011 | 0xc2200053 | 0xfff0007f |
FCVT.LU.D | Floating-Point Convert Double-Precision to Unsigned Long | 110000100011-------------1010011 | 0xc2300053 | 0xfff0007f |
FCVT.S.D | Floating-Point Convert Double-Precision to Single-Precision | 010000000001-------------1010011 | 0x40100053 | 0xfff0007f |
FCVT.W.D | Floating-Point Convert Double-Precision to Word | 110000100000-------------1010011 | 0xc2000053 | 0xfff0007f |
FCVT.WU.D | Floating-Point Convert Double-Precision to Unsigned Word | 110000100001-------------1010011 | 0xc2100053 | 0xfff0007f |
FDIV.D | Floating-Point Divide Double-Precision | 0001101------------------1010011 | 0x1a000053 | 0xfe00007f |
FEQ.D | Floating-Point Equal Double-Precision | 1010001----------010-----1010011 | 0xa2002053 | 0xfe00707f |
FLD | Floating-Point Load Double-Precision | -----------------011-----0000111 | 0x3007 | 0x707f |
FLE.D | Floating-Point Less Than or Equal Double-Precision | 1010001----------000-----1010011 | 0xa2000053 | 0xfe00707f |
FLT.D | Floating-Point Less Than Double-Precision | 1010001----------001-----1010011 | 0xa2001053 | 0xfe00707f |
FMADD.D | Floating-Point Multiply-Add Double-Precision | -----01------------------1000011 | 0x2000043 | 0x600007f |
FMAX.D | Floating-Point Maximum-Number Double-Precision | 0010101----------001-----1010011 | 0x2a001053 | 0xfe00707f |
FMIN.D | Floating-Point Minimum-Number Double-Precision | 0010101----------000-----1010011 | 0x2a000053 | 0xfe00707f |
FMSUB.D | Floating-Point Multiply-Subtract Double-Precision | -----01------------------1000111 | 0x2000047 | 0x600007f |
FMUL.D | Floating-Point Multiply Double-Precision | 0001001------------------1010011 | 0x12000053 | 0xfe00007f |
FMV.D.X | Floating-Point Move Double-Precision from Integer Register | 111100100000-----000-----1010011 | 0xf2000053 | 0xfff0707f |
FMV.X.D | Floating-Point Move Double-Precision to Integer Register | 111000100000-----000-----1010011 | 0xe2000053 | 0xfff0707f |
FNMADD.D | Floating-Point Negate-Multiply-Add Double-Precision | -----01------------------1001111 | 0x200004f | 0x600007f |
FNMSUB.D | Floating-Point Negate-Multiply-Subtract Double-Precision | -----01------------------1001011 | 0x200004b | 0x600007f |
FSD | Floating-Point Store Double-Precision | -----------------011-----0100111 | 0x3027 | 0x707f |
FSGNJ.D | Floating-Point Sign-Inject Double-Precision | 0010001----------000-----1010011 | 0x22000053 | 0xfe00707f |
FSGNJN.D | Floating-Point Sign-Inject Negate Double-Precision | 0010001----------001-----1010011 | 0x22001053 | 0xfe00707f |
FSGNJX.D | Floating-Point Sign-Inject XOR Double-Precision | 0010001----------010-----1010011 | 0x22002053 | 0xfe00707f |
FSQRT.D | Floating-Point Square Root Double-Precision | 010110100000-------------1010011 | 0x5a000053 | 0xfff0007f |
FSUB.D | Floating-Point Subtract Double-Precision | 0000101------------------1010011 | 0xa000053 | 0xfe00007f |