RISC-V ISA Explorer · Float & Numerics (Zf*)

Zfa: Additional FP Instructions

Ratified 2023-09 · version 1.0.0

Immediate loads, IEEE 754-2019 min/max, round-to-integer, and quiet comparisons missing from base FP.

Typical use: IEEE operations missing from base F and D

Specification

Open Zfa in the explorer

Dependencies

Requires

Instructions (33)

MnemonicNameEncodingMatchMask
FCVTMOD.W.DFloating-Point Convert Double-Precision to Word with Modulo110000101000-----001-----10100110xc28010530xfff0707f
FLEQ.DFloating-Point Less Than or Equal Quiet Double-Precision1010001----------100-----10100110xa20040530xfe00707f
FLEQ.H1010010----------100-----10100110xa40040530xfe00707f
FLEQ.QFloating-Point Less Than or Equal Quiet Quad-Precision1010011----------100-----10100110xa60040530xfe00707f
FLEQ.SFloating-Point Less Than or Equal Quiet Single-Precision1010000----------100-----10100110xa00040530xfe00707f
FLI.DFloating-Point Load Immediate Double-Precision111100100001-----000-----10100110xf21000530xfff0707f
FLI.HFloating-point Load Immediate Half-precision111101000001-----000-----10100110xf41000530xfff0707f
FLI.QFloating-Point Load Immediate Quad-Precision111101100001-----000-----10100110xf61000530xfff0707f
FLI.S111100000001-----000-----10100110xf01000530xfff0707f
FLTQ.DFloating-Point Less Than Quiet Double-Precision1010001----------101-----10100110xa20050530xfe00707f
FLTQ.H1010010----------101-----10100110xa40050530xfe00707f
FLTQ.QFloating-Point Less Than Quiet Quad-Precision1010011----------101-----10100110xa60050530xfe00707f
FLTQ.SFloating-Point Less Than Quiet Single-Precision1010000----------101-----10100110xa00050530xfe00707f
FMAXM.DFloating-Point Maximum-Number NaN Double-Precision0010101----------011-----10100110x2a0030530xfe00707f
FMAXM.H0010110----------011-----10100110x2c0030530xfe00707f
FMAXM.QFloating-Point Maximum-Number NaN Quad-Precision0010111----------011-----10100110x2e0030530xfe00707f
FMAXM.S0010100----------011-----10100110x280030530xfe00707f
FMINM.DFloating-Point Minimum-Number NaN Double-Precision0010101----------010-----10100110x2a0020530xfe00707f
FMINM.H0010110----------010-----10100110x2c0020530xfe00707f
FMINM.QFloating-Point Minimum-Number NaN Quad-Precision0010111----------010-----10100110x2e0020530xfe00707f
FMINM.S0010100----------010-----10100110x280020530xfe00707f
FMVH.X.DFloating-Point Move High Half from Double-Precision Register to Integer Register111000100001-----000-----10100110xe21000530xfff0707f
FMVH.X.QFloating-Point Move High Half to Integer from Quad-Precision111001100001-----000-----10100110xe61000530xfff0707f
FMVP.D.XFloating-Point Move Pair from Integer Registers to Double-Precision Register1011001----------000-----10100110xb20000530xfe00707f
FMVP.Q.XFloating-Point Move Pair from Integer Registers to Quad-Precision Register1011011----------000-----10100110xb60000530xfe00707f
FROUND.DFloating-Point Round Double-Precision010000100100-------------10100110x424000530xfff0007f
FROUND.H010001000100-------------10100110x444000530xfff0007f
FROUND.QFloating-Point Round Quad-Precision010001100100-------------10100110x464000530xfff0007f
FROUND.SFloating-point round single-precision float to integer010000000100-------------10100110x404000530xfff0007f
FROUNDNX.DFloating-Point Round-to-Integer Inexact Double-Precision010000100101-------------10100110x425000530xfff0007f
FROUNDNX.H010001000101-------------10100110x445000530xfff0007f
FROUNDNX.QFloating-Point Round-to-Integer Inexact Quad-Precision010001100101-------------10100110x465000530xfff0007f
FROUNDNX.SFloating-point Round Single-precision to Integer with Inexact010000000101-------------10100110x405000530xfff0007f