aboutsummaryrefslogtreecommitdiff
path: root/src/dep-table.tex
diff options
context:
space:
mode:
authorDaniel Lustig <dlustig@nvidia.com>2018-05-02 16:31:03 -0700
committerDaniel Lustig <dlustig@nvidia.com>2018-05-02 16:31:03 -0700
commit03a5e722fc0fe7b94dd0a49f550ff7b41a63f612 (patch)
treef6db80e1e442798654d12bc5e9bc151930d49570 /src/dep-table.tex
parent3559c11db55e96e1220c6b032d9d920b1808f151 (diff)
downloadriscv-isa-manual-03a5e722fc0fe7b94dd0a49f550ff7b41a63f612.zip
riscv-isa-manual-03a5e722fc0fe7b94dd0a49f550ff7b41a63f612.tar.gz
riscv-isa-manual-03a5e722fc0fe7b94dd0a49f550ff7b41a63f612.tar.bz2
Updates to the memory consistency model spec
This giant patch is the result of months of work from a lot of different people in the memory model TG.
Diffstat (limited to 'src/dep-table.tex')
-rw-r--r--src/dep-table.tex456
1 files changed, 456 insertions, 0 deletions
diff --git a/src/dep-table.tex b/src/dep-table.tex
new file mode 100644
index 0000000..d580008
--- /dev/null
+++ b/src/dep-table.tex
@@ -0,0 +1,456 @@
+\section{CSR Dependency Tracking Granularity}
+\label{sec:csr-granularity}
+
+\begin{table}[h!]
+ \centering
+ \begin{tabular}{|l|l|l|}
+ \hline
+ Name & Portions Tracked as Independent Units & Aliases \\
+ \hline
+ {\tt fflags} & Bits 4, 3, 2, 1, 0 & {\tt fcsr} \\
+ \hline
+ {\tt frm} & entire CSR & {\tt fcsr} \\
+ \hline
+ {\tt fcsr} & Bits 7-5, 4, 3, 2, 1, 0 & {\tt fflags}, {\tt frm} \\
+ \hline
+ \end{tabular}
+ \caption{Granularities at which syntactic dependencies are tracked through CSRs}
+\end{table}
+
+Note: read-only CSRs are not listed, as they do not participate in the definition of syntactic dependencies.
+
+\section{Source and Destination Register Listings}
+\label{sec:source-dest-regs}
+
+This section provides a concrete listing of the source and destination registers for each instruction.
+These listings are used in the definition of syntactic dependencies in Section~\ref{sec:memorymodel:dependencies}.
+
+The term ``accumulating CSR'' is used to describe a CSR that is both a source and a destination register, but which carries a dependency only from itself to itself.
+
+Instructions carry a dependency from each source register in the ``Source Registers'' column to each destination register in the ``Destination Registers'' column, from each source register in the ``Source Registers'' column to each CSR in the ``Accumulating CSRs'' column, and from each CSR in the ``Accumulating CSRs'' column to itself, except where annotated otherwise.
+
+Key:
+
+$^A$Address source register
+
+$^D$Data source register
+
+$^\dagger$The instruction does not carry a dependency from any source register to any destination register
+
+$^\ddagger$The instruction carries dependencies from source register(s) to destination register(s) as specified
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV32I Base Integer Instruction Set} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ LUI & & {\em rd} & & \\
+ \cline{2-4}
+ AUIPC & & {\em rd} & & \\
+ \cline{2-4}
+ JAL & & {\em rd} & & \\
+ \cline{2-4}
+ JALR$^\dagger$ & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ BEQ & {\em rs1}, {\em rs2} & & & \\
+ \cline{2-4}
+ BNE & {\em rs1}, {\em rs2} & & & \\
+ \cline{2-4}
+ BLT & {\em rs1}, {\em rs2} & & & \\
+ \cline{2-4}
+ BGE & {\em rs1}, {\em rs2} & & & \\
+ \cline{2-4}
+ BLTU & {\em rs1}, {\em rs2} & & & \\
+ \cline{2-4}
+ BGEU & {\em rs1}, {\em rs2} & & & \\
+ \cline{2-4}
+ LB$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ LH$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ LW$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ LBU$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ LHU$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ SB & {\em rs1}$^A$, {\em rs2}$^D$ & & & \\
+ \cline{2-4}
+ SH & {\em rs1}$^A$, {\em rs2}$^D$ & & & \\
+ \cline{2-4}
+ SW & {\em rs1}$^A$, {\em rs2}$^D$ & & & \\
+ \cline{2-4}
+ ADDI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SLTI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SLTIU & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ XORI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ ORI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ ANDI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SLLI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SRLI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SRAI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ ADD & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SUB & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SLL & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SLT & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SLTU & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ XOR & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SRL & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SRA & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ OR & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ AND & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ FENCE & & & & \\
+ \cline{2-4}
+ FENCE.I & & & & \\
+ \cline{2-4}
+ ECALL & & & & \\
+ \cline{2-4}
+ EBREAK & & & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV32I Base Integer Instruction Set (continued)} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ CSRRW$^\ddagger$ & {\em rs1}, {\em csr}$^*$ & {\em rd}, {\em csr} & & $^*$unless {\em rd}={\tt x0} \\
+ \cline{2-4}
+ CSRRS$^\ddagger$ & {\em rs1}, {\em csr} & {\em rd}$^*$, {\em csr} & & $^*$unless {\em rs1}={\tt x0} \\
+ \cline{2-4}
+ CSRRC$^\ddagger$ & {\em rs1}, {\em csr} & {\em rd}$^*$, {\em csr} & & $^*$unless {\em rs1}={\tt x0} \\
+ \cline{2-4}
+ \multicolumn{1}{c}{} & \multicolumn{3}{l}{$\ddagger$carries a dependency from {\em rs1} to {\em csr} and from {\em csr} to {\em rd}}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV32I Base Integer Instruction Set (continued)} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ CSRRWI$^\ddagger$ & {\em csr}$^*$ & {\em rd}, {\em csr} & & $^*$unless {\em rd}={\tt x0} \\
+ \cline{2-4}
+ CSRRSI$^\ddagger$ & {\em csr} & {\em rd}, {\em csr}$^*$ & & $^*$unless uimm[4:0]=0 \\
+ \cline{2-4}
+ CSRRCI$^\ddagger$ & {\em csr} & {\em rd}, {\em csr}$^*$ & & $^*$unless uimm[4:0]=0 \\
+ \cline{2-4}
+ \multicolumn{1}{c}{} & \multicolumn{3}{l}{$\ddagger$carries a dependency from {\em csr} to {\em rd}}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV64I Base Integer Instruction Set} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ LWU$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ LD$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ SD & {\em rs1}$^A$, {\em rs2}$^D$ & & & \\
+ \cline{2-4}
+ SLLI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SRLI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SRAI & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ ADDIW & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SLLIW & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SRLIW & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ SRAIW & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ ADDW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SUBW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SLLW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SRLW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ SRAW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV32M Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ MUL & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ MULH & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ MULHSU & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ MULHU & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ DIV & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ DIVU & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ REM & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ REMU & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV64M Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ MULW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ DIVW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ DIVUW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ REMW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ REMUW & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV32A Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ LR.W$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ SC.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd}$^*$ & & $^*$if successful \\
+ \cline{2-4}
+ AMOSWAP.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOADD.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOXOR.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOAND.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOOR.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMIN.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMAX.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMINU.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMAXU.W$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV64A Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ LR.D$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ SC.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd}$^*$ & & $^*$if successful \\
+ \cline{2-4}
+ AMOSWAP.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOADD.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOXOR.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOAND.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOOR.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMIN.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMAX.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMINU.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+ AMOMAXU.D$^\dagger$ & {\em rs1}$^A$, {\em rs2}$^D$ & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV32F Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ FLW$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ FSW & {\em rs1}$^A$, {\em rs2}$^D$ & & & \\
+ \cline{2-4}
+ FMADD.S & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMSUB.S & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FNMSUB.S & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FNMADD.S & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FADD.S & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FSUB.S & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMUL.S & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FDIV.S & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, DZ, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FSQRT.S & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FSGNJ.S & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ FSGNJN.S & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ FSGNJX.S & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ FMIN.S & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FMAX.S & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FCVT.W.S & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FCVT.WU.S & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMV.X.W & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ FEQ.S & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FLT.S & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FLE.S & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FCLASS.S & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ FCVT.S.W & {\em rs1}, frm$^*$ & {\em rd} & NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FCVT.S.WU & {\em rs1}, frm$^*$ & {\em rd} & NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMV.W.X & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV64F Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ FCVT.L.S & {\em rs1} & {\em rd} & NV, NX & \\
+ \cline{2-4}
+ FCVT.LU.S & {\em rs1} & {\em rd} & NV, NX & \\
+ \cline{2-4}
+ FCVT.S.L & {\em rs1} & {\em rd} & NX & \\
+ \cline{2-4}
+ FCVT.S.LU & {\em rs1} & {\em rd} & NX & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV32D Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ FLD$^\dagger$ & {\em rs1}$^A$ & {\em rd} & & \\
+ \cline{2-4}
+ FSD & {\em rs1}$^A$, {\em rs2}$^D$ & & & \\
+ \cline{2-4}
+ FMADD.D & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMSUB.D & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FNMSUB.D & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FNMADD.D & {\em rs1}, {\em rs2}, {\em rs3}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FADD.D & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FSUB.D & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMUL.D & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FDIV.D & {\em rs1}, {\em rs2}, frm$^*$ & {\em rd} & NV, DZ, OF, UF, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FSQRT.D & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FSGNJ.D & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ FSGNJN.D & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ FSGNJX.D & {\em rs1}, {\em rs2} & {\em rd} & & \\
+ \cline{2-4}
+ FMIN.D & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FMAX.D & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FCVT.S.D & {\em rs1}, frm$^*$ & {\em rd} & NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FCVT.D.S & {\em rs1}, frm$^*$ & {\em rd} & NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FEQ.D & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FLT.D & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FLE.D & {\em rs1}, {\em rs2} & {\em rd} & NV & \\
+ \cline{2-4}
+ FCLASS.D & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ FCVT.W.D & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FCVT.WU.D & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FCVT.D.W & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ FCVT.D.WU & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}
+
+\begin{tabular}{p{3cm}|p{3cm}|p{2cm}|p{4cm}|p{4cm}}
+ \multicolumn{4}{l}{\bf RV64F Standard Extension} \\
+ \cline{2-4}
+ & Source & Destination & Accumulating \\
+ & Registers & Registers & CSRs \\
+ \cline{2-4}
+ FCVT.L.D & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FCVT.LU.D & {\em rs1}, frm$^*$ & {\em rd} & NV, NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMV.X.D & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+ FCVT.D.L & {\em rs1}, frm$^*$ & {\em rd} & NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FCVT.D.LU & {\em rs1}, frm$^*$ & {\em rd} & NX & $^*$if rm=111 \\
+ \cline{2-4}
+ FMV.D.X & {\em rs1} & {\em rd} & & \\
+ \cline{2-4}
+\end{tabular}