summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Yunsup Lee <yunsup@cs.berkeley.edu>2010-10-31 23:27:10 -0700
committerGravatar Yunsup Lee <yunsup@cs.berkeley.edu>2010-10-31 23:27:10 -0700
commit83e0f5a424cdcce3640ecb8f97106352a05c8242 (patch)
tree816012dc8b63e147de60094ca8cffa9645156e78
parent840477d8c9a597159875ce1fd861d804c175aaa5 (diff)
[opcodes] add latex table for rm stuff
-rw-r--r--instr-table.tex1394
-rw-r--r--opcodes72
-rwxr-xr-xparse-opcodes205
3 files changed, 1111 insertions, 560 deletions
diff --git a/instr-table.tex b/instr-table.tex
index c9dfab6..9d49b40 100644
--- a/instr-table.tex
+++ b/instr-table.tex
@@ -4,14 +4,16 @@
\begin{table}[p]
\begin{small}
\begin{center}
-\begin{tabular}{rcccccccccl}
+\begin{tabular}{rcccccccccccl}
&
\hspace*{0.6in} &
\hspace*{0.2in} &
\hspace*{0.5in} &
\hspace*{0.5in} &
-\hspace*{0.3in} &
-\hspace*{0.2in} &
+\hspace*{0.5in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
\hspace*{0.4in} &
\hspace*{0.1in} &
\hspace*{0.5in} \\
@@ -20,428 +22,430 @@
\instbitrange{26}{25} &
\instbitrange{24}{20} &
\instbitrange{19}{15} &
-\instbitrange{14}{12} &
-\instbitrange{11}{10} &
+\instbitrange{14}{13} &
+\instbit{12} &
+\instbit{11} &
+\instbit{10} &
\instbitrange{9}{6} &
\instbit{5} &
\instbitrange{4}{0} \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{1}{|c|}{opcode5} &
-\multicolumn{8}{c|}{jump target} & J-type \\
-\cline{2-10}
+\multicolumn{10}{c|}{jump target} & J-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
-\multicolumn{6}{c|}{LUI-immediate} & LUI-type \\
-\cline{2-10}
+\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi/rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{funct3} &
-\multicolumn{4}{c|}{immediate} & I-type \\
-\cline{2-10}
+\multicolumn{2}{c|}{funct3} &
+\multicolumn{5}{c|}{immediate} & I-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{funct9} &
+\multicolumn{5}{c|}{funct9} &
\multicolumn{2}{c|}{shamt} & ISH-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{funct10} &
+\multicolumn{6}{c|}{funct10} &
\multicolumn{1}{c|}{rdr} & R-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{funct5} &
+\multicolumn{4}{c|}{funct5} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & R4-type \\
-\cline{2-10}
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Unimplemented Instruction} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Unimplemented Instruction} & \\
+\cline{2-12}
&
-\multicolumn{9}{|c|}{00000000000000000000000000000000} & UNIMP \\
-\cline{2-10}
+\multicolumn{11}{|c|}{00000000000000000000000000000000} & UNIMP \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Control Transfer Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Control Transfer Instructions} & \\
+\cline{2-12}
&
\multicolumn{1}{|c|}{11000} &
-\multicolumn{8}{c|}{imm27} & J imm27 \\
-\cline{2-10}
+\multicolumn{10}{c|}{imm27} & J imm27 \\
+\cline{2-12}
&
\multicolumn{1}{|c|}{11001} &
-\multicolumn{8}{c|}{imm27} & JAL imm27 \\
-\cline{2-10}
+\multicolumn{10}{c|}{imm27} & JAL imm27 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000000} &
+\multicolumn{6}{c|}{0000000000} &
\multicolumn{1}{c|}{rdr} & JALR.C rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000001} &
+\multicolumn{6}{c|}{0000000001} &
\multicolumn{1}{c|}{rdr} & JALR.R rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000010} &
+\multicolumn{6}{c|}{0000000010} &
\multicolumn{1}{c|}{rdr} & JALR.J rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{000} &
-\multicolumn{4}{c|}{imm12} & BEQ rs1,rs2,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{000} &
+\multicolumn{5}{c|}{imm12} & BEQ rs1,rs2,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{001} &
-\multicolumn{4}{c|}{imm12} & BNE rs1,rs2,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{001} &
+\multicolumn{5}{c|}{imm12} & BNE rs1,rs2,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{100} &
-\multicolumn{4}{c|}{imm12} & BLT rs1,rs2,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{100} &
+\multicolumn{5}{c|}{imm12} & BLT rs1,rs2,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{101} &
-\multicolumn{4}{c|}{imm12} & BGE rs1,rs2,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{101} &
+\multicolumn{5}{c|}{imm12} & BGE rs1,rs2,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{110} &
-\multicolumn{4}{c|}{imm12} & BLTU rs1,rs2,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{110} &
+\multicolumn{5}{c|}{imm12} & BLTU rs1,rs2,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{111} &
-\multicolumn{4}{c|}{imm12} & BGEU rs1,rs2,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{111} &
+\multicolumn{5}{c|}{imm12} & BGEU rs1,rs2,imm12 \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Memory Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Memory Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{000} &
-\multicolumn{4}{c|}{imm12} & LB rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{000} &
+\multicolumn{5}{c|}{imm12} & LB rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{001} &
-\multicolumn{4}{c|}{imm12} & LH rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{001} &
+\multicolumn{5}{c|}{imm12} & LH rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{010} &
-\multicolumn{4}{c|}{imm12} & LW rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{010} &
+\multicolumn{5}{c|}{imm12} & LW rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{011} &
-\multicolumn{4}{c|}{imm12} & LD rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{011} &
+\multicolumn{5}{c|}{imm12} & LD rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{100} &
-\multicolumn{4}{c|}{imm12} & LBU rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{100} &
+\multicolumn{5}{c|}{imm12} & LBU rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{101} &
-\multicolumn{4}{c|}{imm12} & LHU rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{101} &
+\multicolumn{5}{c|}{imm12} & LHU rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{110} &
-\multicolumn{4}{c|}{imm12} & LWU rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{110} &
+\multicolumn{5}{c|}{imm12} & LWU rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111000} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{111} &
-\multicolumn{4}{c|}{imm12} & SYNCI rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{111} &
+\multicolumn{5}{c|}{imm12} & SYNCI rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111001} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{000} &
-\multicolumn{4}{c|}{imm12} & SB rs2,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{000} &
+\multicolumn{5}{c|}{imm12} & SB rs2,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111001} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{001} &
-\multicolumn{4}{c|}{imm12} & SH rs2,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{001} &
+\multicolumn{5}{c|}{imm12} & SH rs2,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111001} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{010} &
-\multicolumn{4}{c|}{imm12} & SW rs2,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{010} &
+\multicolumn{5}{c|}{imm12} & SW rs2,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111001} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{011} &
-\multicolumn{4}{c|}{imm12} & SD rs2,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{011} &
+\multicolumn{5}{c|}{imm12} & SD rs2,rs1,imm12 \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Atomic Memory Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Atomic Memory Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000000} &
+\multicolumn{6}{c|}{0100000000} &
\multicolumn{1}{c|}{rdr} & AMOW.ADD rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000001} &
+\multicolumn{6}{c|}{0100000001} &
\multicolumn{1}{c|}{rdr} & AMOW.SWAP rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000010} &
+\multicolumn{6}{c|}{0100000010} &
\multicolumn{1}{c|}{rdr} & AMOW.AND rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000011} &
+\multicolumn{6}{c|}{0100000011} &
\multicolumn{1}{c|}{rdr} & AMOW.OR rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000100} &
+\multicolumn{6}{c|}{0100000100} &
\multicolumn{1}{c|}{rdr} & AMOW.MIN rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000101} &
+\multicolumn{6}{c|}{0100000101} &
\multicolumn{1}{c|}{rdr} & AMOW.MAX rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000110} &
+\multicolumn{6}{c|}{0100000110} &
\multicolumn{1}{c|}{rdr} & AMOW.MINU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0100000111} &
+\multicolumn{6}{c|}{0100000111} &
\multicolumn{1}{c|}{rdr} & AMOW.MAXU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000000} &
+\multicolumn{6}{c|}{0110000000} &
\multicolumn{1}{c|}{rdr} & AMO.ADD rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000001} &
+\multicolumn{6}{c|}{0110000001} &
\multicolumn{1}{c|}{rdr} & AMO.SWAP rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000010} &
+\multicolumn{6}{c|}{0110000010} &
\multicolumn{1}{c|}{rdr} & AMO.AND rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000011} &
+\multicolumn{6}{c|}{0110000011} &
\multicolumn{1}{c|}{rdr} & AMO.OR rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000100} &
+\multicolumn{6}{c|}{0110000100} &
\multicolumn{1}{c|}{rdr} & AMO.MIN rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000101} &
+\multicolumn{6}{c|}{0110000101} &
\multicolumn{1}{c|}{rdr} & AMO.MAX rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000110} &
+\multicolumn{6}{c|}{0110000110} &
\multicolumn{1}{c|}{rdr} & AMO.MINU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000111} &
+\multicolumn{6}{c|}{0110000111} &
\multicolumn{1}{c|}{rdr} & AMO.MAXU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
\end{tabular}
@@ -457,14 +461,16 @@
\begin{table}[p]
\begin{small}
\begin{center}
-\begin{tabular}{rcccccccccl}
+\begin{tabular}{rcccccccccccl}
&
\hspace*{0.6in} &
\hspace*{0.2in} &
\hspace*{0.5in} &
\hspace*{0.5in} &
-\hspace*{0.3in} &
-\hspace*{0.2in} &
+\hspace*{0.5in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
\hspace*{0.4in} &
\hspace*{0.1in} &
\hspace*{0.5in} \\
@@ -473,461 +479,463 @@
\instbitrange{26}{25} &
\instbitrange{24}{20} &
\instbitrange{19}{15} &
-\instbitrange{14}{12} &
-\instbitrange{11}{10} &
+\instbitrange{14}{13} &
+\instbit{12} &
+\instbit{11} &
+\instbit{10} &
\instbitrange{9}{6} &
\instbit{5} &
\instbitrange{4}{0} \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{1}{|c|}{opcode5} &
-\multicolumn{8}{c|}{jump target} & J-type \\
-\cline{2-10}
+\multicolumn{10}{c|}{jump target} & J-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
-\multicolumn{6}{c|}{LUI-immediate} & LUI-type \\
-\cline{2-10}
+\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi/rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{funct3} &
-\multicolumn{4}{c|}{immediate} & I-type \\
-\cline{2-10}
+\multicolumn{2}{c|}{funct3} &
+\multicolumn{5}{c|}{immediate} & I-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{funct9} &
+\multicolumn{5}{c|}{funct9} &
\multicolumn{2}{c|}{shamt} & ISH-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{funct10} &
+\multicolumn{6}{c|}{funct10} &
\multicolumn{1}{c|}{rdr} & R-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{funct5} &
+\multicolumn{4}{c|}{funct5} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & R4-type \\
-\cline{2-10}
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Integer Compute Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Integer Compute Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110001} &
\multicolumn{1}{c|}{rdi} &
-\multicolumn{6}{c|}{imm20} & LUI rdi,imm20 \\
-\cline{2-10}
+\multicolumn{8}{c|}{imm20} & LUI rdi,imm20 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{000} &
-\multicolumn{4}{c|}{imm12} & ADDI rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{000} &
+\multicolumn{5}{c|}{imm12} & ADDI rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{010} &
-\multicolumn{4}{c|}{imm12} & SLTI rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{010} &
+\multicolumn{5}{c|}{imm12} & SLTI rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{011} &
-\multicolumn{4}{c|}{imm12} & SLTIU rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{011} &
+\multicolumn{5}{c|}{imm12} & SLTIU rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{100} &
-\multicolumn{4}{c|}{imm12} & ANDI rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{100} &
+\multicolumn{5}{c|}{imm12} & ANDI rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{101} &
-\multicolumn{4}{c|}{imm12} & ORI rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{101} &
+\multicolumn{5}{c|}{imm12} & ORI rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{110} &
-\multicolumn{4}{c|}{imm12} & XORI rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{110} &
+\multicolumn{5}{c|}{imm12} & XORI rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{111000001} &
+\multicolumn{5}{c|}{111000001} &
\multicolumn{2}{c|}{shamt} & SLLI rdi,rs1,shamt \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{111000010} &
+\multicolumn{5}{c|}{111000010} &
\multicolumn{2}{c|}{shamt} & SRLI rdi,rs1,shamt \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110100} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{111000011} &
+\multicolumn{5}{c|}{111000011} &
\multicolumn{2}{c|}{shamt} & SRAI rdi,rs1,shamt \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000000} &
+\multicolumn{6}{c|}{0000000000} &
\multicolumn{1}{c|}{rdr} & ADD rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000001} &
+\multicolumn{6}{c|}{0000000001} &
\multicolumn{1}{c|}{rdr} & SUB rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000010} &
+\multicolumn{6}{c|}{0000000010} &
\multicolumn{1}{c|}{rdr} & SLT rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000011} &
+\multicolumn{6}{c|}{0000000011} &
\multicolumn{1}{c|}{rdr} & SLTU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000100} &
+\multicolumn{6}{c|}{0000000100} &
\multicolumn{1}{c|}{rdr} & AND rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000101} &
+\multicolumn{6}{c|}{0000000101} &
\multicolumn{1}{c|}{rdr} & OR rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000110} &
+\multicolumn{6}{c|}{0000000110} &
\multicolumn{1}{c|}{rdr} & XOR rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000111} &
+\multicolumn{6}{c|}{0000000111} &
\multicolumn{1}{c|}{rdr} & NOR rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1110000010} &
+\multicolumn{6}{c|}{1110000010} &
\multicolumn{1}{c|}{rdr} & SLL rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1110000100} &
+\multicolumn{6}{c|}{1110000100} &
\multicolumn{1}{c|}{rdr} & SRL rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1110000110} &
+\multicolumn{6}{c|}{1110000110} &
\multicolumn{1}{c|}{rdr} & SRA rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000000} &
+\multicolumn{6}{c|}{0010000000} &
\multicolumn{1}{c|}{rdr} & MUL rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000010} &
+\multicolumn{6}{c|}{0010000010} &
\multicolumn{1}{c|}{rdr} & MULH rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000011} &
+\multicolumn{6}{c|}{0010000011} &
\multicolumn{1}{c|}{rdr} & MULHU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000100} &
+\multicolumn{6}{c|}{0010000100} &
\multicolumn{1}{c|}{rdr} & DIV rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000101} &
+\multicolumn{6}{c|}{0010000101} &
\multicolumn{1}{c|}{rdr} & DIVU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000110} &
+\multicolumn{6}{c|}{0010000110} &
\multicolumn{1}{c|}{rdr} & REM rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000111} &
+\multicolumn{6}{c|}{0010000111} &
\multicolumn{1}{c|}{rdr} & REMU rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf 32-bit Integer Compute Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf 32-bit Integer Compute Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110110} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{000} &
-\multicolumn{4}{c|}{imm12} & ADDIW rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{000} &
+\multicolumn{5}{c|}{imm12} & ADDIW rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110110} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{111000001} &
+\multicolumn{5}{c|}{111000001} &
\multicolumn{1}{c|}{0} &
\multicolumn{1}{c|}{shamtw} & SLLIW rdi,rs1,shamtw \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110110} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{111000010} &
+\multicolumn{5}{c|}{111000010} &
\multicolumn{1}{c|}{0} &
\multicolumn{1}{c|}{shamtw} & SRLIW rdi,rs1,shamtw \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110110} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{111000011} &
+\multicolumn{5}{c|}{111000011} &
\multicolumn{1}{c|}{0} &
\multicolumn{1}{c|}{shamtw} & SRAIW rdi,rs1,shamtw \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000000} &
+\multicolumn{6}{c|}{0000000000} &
\multicolumn{1}{c|}{rdr} & ADDW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000001} &
+\multicolumn{6}{c|}{0000000001} &
\multicolumn{1}{c|}{rdr} & SUBW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1110000010} &
+\multicolumn{6}{c|}{1110000010} &
\multicolumn{1}{c|}{rdr} & SLLW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1110000100} &
+\multicolumn{6}{c|}{1110000100} &
\multicolumn{1}{c|}{rdr} & SRLW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1110000110} &
+\multicolumn{6}{c|}{1110000110} &
\multicolumn{1}{c|}{rdr} & SRAW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000000} &
+\multicolumn{6}{c|}{0010000000} &
\multicolumn{1}{c|}{rdr} & MULW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000010} &
+\multicolumn{6}{c|}{0010000010} &
\multicolumn{1}{c|}{rdr} & MULHW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000011} &
+\multicolumn{6}{c|}{0010000011} &
\multicolumn{1}{c|}{rdr} & MULHUW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000100} &
+\multicolumn{6}{c|}{0010000100} &
\multicolumn{1}{c|}{rdr} & DIVW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000101} &
+\multicolumn{6}{c|}{0010000101} &
\multicolumn{1}{c|}{rdr} & DIVUW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000110} &
+\multicolumn{6}{c|}{0010000110} &
\multicolumn{1}{c|}{rdr} & REMW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1110111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0010000111} &
+\multicolumn{6}{c|}{0010000111} &
\multicolumn{1}{c|}{rdr} & REMUW rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
\end{tabular}
@@ -943,14 +951,16 @@
\begin{table}[p]
\begin{small}
\begin{center}
-\begin{tabular}{rcccccccccl}
+\begin{tabular}{rcccccccccccl}
&
\hspace*{0.6in} &
\hspace*{0.2in} &
\hspace*{0.5in} &
\hspace*{0.5in} &
-\hspace*{0.3in} &
-\hspace*{0.2in} &
+\hspace*{0.5in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
\hspace*{0.4in} &
\hspace*{0.1in} &
\hspace*{0.5in} \\
@@ -959,410 +969,478 @@
\instbitrange{26}{25} &
\instbitrange{24}{20} &
\instbitrange{19}{15} &
-\instbitrange{14}{12} &
-\instbitrange{11}{10} &
+\instbitrange{14}{13} &
+\instbit{12} &
+\instbit{11} &
+\instbit{10} &
\instbitrange{9}{6} &
\instbit{5} &
\instbitrange{4}{0} \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{1}{|c|}{opcode5} &
-\multicolumn{8}{c|}{jump target} & J-type \\
-\cline{2-10}
+\multicolumn{10}{c|}{jump target} & J-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
-\multicolumn{6}{c|}{LUI-immediate} & LUI-type \\
-\cline{2-10}
+\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi/rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{funct3} &
-\multicolumn{4}{c|}{immediate} & I-type \\
-\cline{2-10}
+\multicolumn{2}{c|}{funct3} &
+\multicolumn{5}{c|}{immediate} & I-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{funct9} &
+\multicolumn{5}{c|}{funct9} &
\multicolumn{2}{c|}{shamt} & ISH-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{funct10} &
+\multicolumn{6}{c|}{funct10} &
\multicolumn{1}{c|}{rdr} & R-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{funct5} &
+\multicolumn{4}{c|}{funct5} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & R4-type \\
-\cline{2-10}
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Floating-Point Memory Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Floating-Point Memory Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{010} &
-\multicolumn{4}{c|}{imm12} & L.S rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{010} &
+\multicolumn{5}{c|}{imm12} & L.S rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101000} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{011} &
-\multicolumn{4}{c|}{imm12} & L.D rdi,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{011} &
+\multicolumn{5}{c|}{imm12} & L.D rdi,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101001} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{010} &
-\multicolumn{4}{c|}{imm12} & S.S rs2,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{010} &
+\multicolumn{5}{c|}{imm12} & S.S rs2,rs1,imm12 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101001} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{011} &
-\multicolumn{4}{c|}{imm12} & S.D rs2,rs1,imm12 \\
-\cline{2-10}
+\multicolumn{2}{c|}{011} &
+\multicolumn{5}{c|}{imm12} & S.D rs2,rs1,imm12 \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Floating-Point Compute Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Floating-Point Compute Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000000} &
+\multicolumn{6}{c|}{0000000000} &
\multicolumn{1}{c|}{rdr} & ADD.S rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000001} &
+\multicolumn{6}{c|}{0000000001} &
\multicolumn{1}{c|}{rdr} & SUB.S rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000010} &
+\multicolumn{6}{c|}{0000000010} &
\multicolumn{1}{c|}{rdr} & MUL.S rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000011} &
+\multicolumn{6}{c|}{0000000011} &
\multicolumn{1}{c|}{rdr} & DIV.S rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000100} &
+\multicolumn{6}{c|}{0000000100} &
\multicolumn{1}{c|}{rdr} & SQRT.S rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000000} &
+\multicolumn{6}{c|}{1100000000} &
\multicolumn{1}{c|}{rdr} & ADD.D rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000001} &
+\multicolumn{6}{c|}{1100000001} &
\multicolumn{1}{c|}{rdr} & SUB.D rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000010} &
+\multicolumn{6}{c|}{1100000010} &
\multicolumn{1}{c|}{rdr} & MUL.D rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000011} &
+\multicolumn{6}{c|}{1100000011} &
\multicolumn{1}{c|}{rdr} & DIV.D rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000100} &
+\multicolumn{6}{c|}{1100000100} &
\multicolumn{1}{c|}{rdr} & SQRT.D rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101100} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{00000} &
+\multicolumn{4}{c|}{00000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & MADD.S rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{00000} &
+\multicolumn{4}{c|}{00000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & MSUB.S rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101110} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{00000} &
+\multicolumn{4}{c|}{00000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & NMSUB.S rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{00000} &
+\multicolumn{4}{c|}{00000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & NMADD.S rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101100} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{11000} &
+\multicolumn{4}{c|}{11000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & MADD.D rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{11000} &
+\multicolumn{4}{c|}{11000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & MSUB.D rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101110} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{11000} &
+\multicolumn{4}{c|}{11000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & NMSUB.D rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{11000} &
+\multicolumn{4}{c|}{11000} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & NMADD.D rdr,rs1,rs2,rs3 \\
-\cline{2-10}
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
-&
-\multicolumn{9}{c}{\bf Floating-Point Compare Instructions} & \\
-\cline{2-10}
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100000} &
+\multicolumn{1}{c|}{rdr} & ADD.S.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000010101} &
-\multicolumn{1}{c|}{rdr} & C.EQ.S rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100001} &
+\multicolumn{1}{c|}{rdr} & SUB.S.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000010110} &
-\multicolumn{1}{c|}{rdr} & C.LT.S rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100010} &
+\multicolumn{1}{c|}{rdr} & MUL.S.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000010111} &
-\multicolumn{1}{c|}{rdr} & C.LE.S rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100011} &
+\multicolumn{1}{c|}{rdr} & DIV.S.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
-\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100010101} &
-\multicolumn{1}{c|}{rdr} & C.EQ.D rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100100} &
+\multicolumn{1}{c|}{rdr} & SQRT.S.RM rdr,rs1 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100010110} &
-\multicolumn{1}{c|}{rdr} & C.LT.D rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100000} &
+\multicolumn{1}{c|}{rdr} & ADD.D.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100010111} &
-\multicolumn{1}{c|}{rdr} & C.LE.D rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100001} &
+\multicolumn{1}{c|}{rdr} & SUB.D.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
-&
-\multicolumn{9}{c}{\bf Floating-Point Move \& Conversion Instructions} & \\
-\cline{2-10}
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100010} &
+\multicolumn{1}{c|}{rdr} & MUL.D.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000101} &
-\multicolumn{1}{c|}{rdr} & SGNINJ.S rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100011} &
+\multicolumn{1}{c|}{rdr} & DIV.D.RM rdr,rs1,rs2 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{100100} &
+\multicolumn{1}{c|}{rdr} & SQRT.D.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101100} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000110} &
-\multicolumn{1}{c|}{rdr} & SGNINJN.S rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & MADD.S.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
&
-\multicolumn{2}{|c|}{1101010} &
+\multicolumn{2}{|c|}{1101101} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000000111} &
-\multicolumn{1}{c|}{rdr} & SGNMUL.S rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & MSUB.S.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
&
-\multicolumn{2}{|c|}{1101010} &
+\multicolumn{2}{|c|}{1101110} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000101} &
-\multicolumn{1}{c|}{rdr} & SGNINJ.D rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & NMSUB.S.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
&
-\multicolumn{2}{|c|}{1101010} &
+\multicolumn{2}{|c|}{1101111} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000110} &
-\multicolumn{1}{c|}{rdr} & SGNINJN.D rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & NMADD.S.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
&
-\multicolumn{2}{|c|}{1101010} &
+\multicolumn{2}{|c|}{1101100} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100000111} &
-\multicolumn{1}{c|}{rdr} & SGNMUL.D rdr,rs1,rs2 \\
-\cline{2-10}
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & MADD.D.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
&
-\multicolumn{2}{|c|}{1101010} &
-\multicolumn{1}{c|}{00000} &
+\multicolumn{2}{|c|}{1101101} &
+\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000010011} &
-\multicolumn{1}{c|}{rdr} & CVT.S.D rdr,rs1 \\
-\cline{2-10}
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & MSUB.D.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
&
-\multicolumn{2}{|c|}{1101010} &
-\multicolumn{1}{c|}{00000} &
+\multicolumn{2}{|c|}{1101110} &
+\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100010000} &
-\multicolumn{1}{c|}{rdr} & CVT.D.S rdr,rs1 \\
-\cline{2-10}
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & NMSUB.D.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101111} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{1}{c|}{1} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & NMADD.D.RM rdr,rs1,rs2,rs3 \\
+\cline{2-12}
\end{tabular}
@@ -1378,14 +1456,16 @@
\begin{table}[p]
\begin{small}
\begin{center}
-\begin{tabular}{rcccccccccl}
+\begin{tabular}{rcccccccccccl}
&
\hspace*{0.6in} &
\hspace*{0.2in} &
\hspace*{0.5in} &
\hspace*{0.5in} &
-\hspace*{0.3in} &
-\hspace*{0.2in} &
+\hspace*{0.5in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
\hspace*{0.4in} &
\hspace*{0.1in} &
\hspace*{0.5in} \\
@@ -1394,312 +1474,698 @@
\instbitrange{26}{25} &
\instbitrange{24}{20} &
\instbitrange{19}{15} &
-\instbitrange{14}{12} &
-\instbitrange{11}{10} &
+\instbitrange{14}{13} &
+\instbit{12} &
+\instbit{11} &
+\instbit{10} &
\instbitrange{9}{6} &
\instbit{5} &
\instbitrange{4}{0} \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{1}{|c|}{opcode5} &
-\multicolumn{8}{c|}{jump target} & J-type \\
-\cline{2-10}
+\multicolumn{10}{c|}{jump target} & J-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
-\multicolumn{6}{c|}{LUI-immediate} & LUI-type \\
-\cline{2-10}
+\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi/rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{funct3} &
-\multicolumn{4}{c|}{immediate} & I-type \\
-\cline{2-10}
+\multicolumn{2}{c|}{funct3} &
+\multicolumn{5}{c|}{immediate} & I-type \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rdi} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{3}{c|}{funct9} &
+\multicolumn{5}{c|}{funct9} &
\multicolumn{2}{c|}{shamt} & ISH-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{funct10} &
+\multicolumn{6}{c|}{funct10} &
\multicolumn{1}{c|}{rdr} & R-type \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{opcode} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{2}{c|}{funct5} &
+\multicolumn{4}{c|}{funct5} &
\multicolumn{2}{c|}{rs3} &
\multicolumn{1}{c|}{rdr} & R4-type \\
-\cline{2-10}
+\cline{2-12}
+
+
+&
+\multicolumn{11}{c}{} & \\
+&
+\multicolumn{11}{c}{\bf Floating-Point Move \& Conversion Instructions} & \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000000101} &
+\multicolumn{1}{c|}{rdr} & SGNINJ.S rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000000110} &
+\multicolumn{1}{c|}{rdr} & SGNINJN.S rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000000111} &
+\multicolumn{1}{c|}{rdr} & SGNMUL.S rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{1100000101} &
+\multicolumn{1}{c|}{rdr} & SGNINJ.D rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{1100000110} &
+\multicolumn{1}{c|}{rdr} & SGNINJN.D rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{1100000111} &
+\multicolumn{1}{c|}{rdr} & SGNMUL.D rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000010011} &
+\multicolumn{1}{c|}{rdr} & CVT.S.D rdr,rs1 \\
+\cline{2-12}
+
+
&
-\multicolumn{9}{c}{\bf Integer to Floating-Point Move \& Conversion Instructions} & \\
-\cline{2-10}
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{1100010000} &
+\multicolumn{1}{c|}{rdr} & CVT.D.S rdr,rs1 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000001100} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{110011} &
+\multicolumn{1}{c|}{rdr} & CVT.S.D.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{11}{c}{} & \\
+&
+\multicolumn{11}{c}{\bf Integer to Floating-Point Move \& Conversion Instructions} & \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000001100} &
\multicolumn{1}{c|}{rdr} & CVT.S.L rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000001101} &
+\multicolumn{6}{c|}{0000001101} &
\multicolumn{1}{c|}{rdr} & CVTU.S.L rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000001110} &
+\multicolumn{6}{c|}{0000001110} &
\multicolumn{1}{c|}{rdr} & CVT.S.W rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0000001111} &
+\multicolumn{6}{c|}{0000001111} &
\multicolumn{1}{c|}{rdr} & CVTU.S.W rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100001100} &
+\multicolumn{6}{c|}{1100001100} &
\multicolumn{1}{c|}{rdr} & CVT.D.L rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100001101} &
+\multicolumn{6}{c|}{1100001101} &
\multicolumn{1}{c|}{rdr} & CVTU.D.L rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100001110} &
+\multicolumn{6}{c|}{1100001110} &
\multicolumn{1}{c|}{rdr} & CVT.D.W rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1100001111} &
+\multicolumn{6}{c|}{1100001111} &
\multicolumn{1}{c|}{rdr} & CVTU.D.W rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101100} &
+\multicolumn{1}{c|}{rdr} & CVT.S.L.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101101} &
+\multicolumn{1}{c|}{rdr} & CVTU.S.L.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101110} &
+\multicolumn{1}{c|}{rdr} & CVT.S.W.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101111} &
+\multicolumn{1}{c|}{rdr} & CVTU.S.W.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101100} &
+\multicolumn{1}{c|}{rdr} & CVT.D.L.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101101} &
+\multicolumn{1}{c|}{rdr} & CVTU.D.L.RM rdr,rs1 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1101111100} &
+\multicolumn{6}{c|}{1101111100} &
\multicolumn{1}{c|}{rdr} & MTFLH.D rdr,rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0001011100} &
+\multicolumn{6}{c|}{0001011100} &
\multicolumn{1}{c|}{rdr} & MTF.S rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1101011100} &
+\multicolumn{6}{c|}{1101011100} &
\multicolumn{1}{c|}{rdr} & MTF.D rdr,rs1 \\
-\cline{2-10}
+\cline{2-12}
+
+
+&
+\multicolumn{11}{c}{} & \\
+&
+\multicolumn{11}{c}{\bf Floating-Point to Integer Move \& Conversion Instructions} & \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101000} &
+\multicolumn{1}{c|}{rdr} & CVT.L.S.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101001} &
+\multicolumn{1}{c|}{rdr} & CVTU.L.S.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101010} &
+\multicolumn{1}{c|}{rdr} & CVT.W.S.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{00} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101011} &
+\multicolumn{1}{c|}{rdr} & CVTU.W.S.RM rdr,rs1 \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101000} &
+\multicolumn{1}{c|}{rdr} & CVT.L.D.RM rdr,rs1 \\
+\cline{2-12}
+
+
&
-\multicolumn{9}{c}{\bf Floating-Point to Integer Move \& Conversion Instructions} & \\
-\cline{2-10}
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101001} &
+\multicolumn{1}{c|}{rdr} & CVTU.L.D.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101010} &
+\multicolumn{1}{c|}{rdr} & CVT.W.D.RM rdr,rs1 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{00000} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{11} &
+\multicolumn{2}{c|}{rm} &
+\multicolumn{3}{c|}{101011} &
+\multicolumn{1}{c|}{rdr} & CVTU.W.D.RM rdr,rs1 \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{1101011001} &
+\multicolumn{6}{c|}{1101011001} &
\multicolumn{1}{c|}{rdr} & MFFL.D rdr,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{1101011010} &
+\multicolumn{6}{c|}{1101011010} &
\multicolumn{1}{c|}{rdr} & MFFH.D rdr,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{0001011000} &
+\multicolumn{6}{c|}{0001011000} &
\multicolumn{1}{c|}{rdr} & MFF.S rdr,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1101010} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{1101011000} &
+\multicolumn{6}{c|}{1101011000} &
\multicolumn{1}{c|}{rdr} & MFF.D rdr,rs2 \\
-\cline{2-10}
+\cline{2-12}
+
+
+\end{tabular}
+\end{center}
+\end{small}
+
+\label{instr-table}
+\end{table}
+
+
+\newpage
+
+\begin{table}[p]
+\begin{small}
+\begin{center}
+\begin{tabular}{rcccccccccccl}
+ &
+\hspace*{0.6in} &
+\hspace*{0.2in} &
+\hspace*{0.5in} &
+\hspace*{0.5in} &
+\hspace*{0.5in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
+\hspace*{0.1in} &
+\hspace*{0.4in} &
+\hspace*{0.1in} &
+\hspace*{0.5in} \\
+ &
+\instbitrange{31}{27} &
+\instbitrange{26}{25} &
+\instbitrange{24}{20} &
+\instbitrange{19}{15} &
+\instbitrange{14}{13} &
+\instbit{12} &
+\instbit{11} &
+\instbit{10} &
+\instbitrange{9}{6} &
+\instbit{5} &
+\instbitrange{4}{0} \\
+\cline{2-12}
+&
+\multicolumn{1}{|c|}{opcode5} &
+\multicolumn{10}{c|}{jump target} & J-type \\
+\cline{2-12}
+&
+\multicolumn{2}{|c|}{opcode} &
+\multicolumn{1}{c|}{rdi} &
+\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\
+\cline{2-12}
+&
+\multicolumn{2}{|c|}{opcode} &
+\multicolumn{1}{c|}{rdi/rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{2}{c|}{funct3} &
+\multicolumn{5}{c|}{immediate} & I-type \\
+\cline{2-12}
+&
+\multicolumn{2}{|c|}{opcode} &
+\multicolumn{1}{c|}{rdi} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{5}{c|}{funct9} &
+\multicolumn{2}{c|}{shamt} & ISH-type \\
+\cline{2-12}
+&
+\multicolumn{2}{|c|}{opcode} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{funct10} &
+\multicolumn{1}{c|}{rdr} & R-type \\
+\cline{2-12}
+&
+\multicolumn{2}{|c|}{opcode} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{4}{c|}{funct5} &
+\multicolumn{2}{c|}{rs3} &
+\multicolumn{1}{c|}{rdr} & R4-type \\
+\cline{2-12}
+
+
+&
+\multicolumn{11}{c}{} & \\
+&
+\multicolumn{11}{c}{\bf Floating-Point Compare Instructions} & \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000010101} &
+\multicolumn{1}{c|}{rdr} & C.EQ.S rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000010110} &
+\multicolumn{1}{c|}{rdr} & C.LT.S rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{0000010111} &
+\multicolumn{1}{c|}{rdr} & C.LE.S rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{1100010101} &
+\multicolumn{1}{c|}{rdr} & C.EQ.D rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{1100010110} &
+\multicolumn{1}{c|}{rdr} & C.LT.D rdr,rs1,rs2 \\
+\cline{2-12}
+
+
+&
+\multicolumn{2}{|c|}{1101010} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{6}{c|}{1100010111} &
+\multicolumn{1}{c|}{rdr} & C.LE.D rdr,rs1,rs2 \\
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Miscellaneous Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Miscellaneous Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{0010000000} &
+\multicolumn{6}{c|}{0010000000} &
\multicolumn{1}{c|}{rdr} & RDNPC rdr \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{0100000000} &
+\multicolumn{6}{c|}{0100000000} &
\multicolumn{1}{c|}{rdr} & MFCR rdr,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{0110000000} &
+\multicolumn{6}{c|}{0110000000} &
\multicolumn{1}{c|}{00000} & MTCR rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{1000000000} &
+\multicolumn{6}{c|}{1000000000} &
\multicolumn{1}{c|}{00000} & SYNC \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{1010000000} &
+\multicolumn{6}{c|}{1010000000} &
\multicolumn{1}{c|}{00000} & SYSCALL imm12 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{1100000000} &
+\multicolumn{6}{c|}{1100000000} &
\multicolumn{1}{c|}{00000} & BREAK imm12 \\
-\cline{2-10}
+\cline{2-12}
&
-\multicolumn{9}{c}{} & \\
+\multicolumn{11}{c}{} & \\
&
-\multicolumn{9}{c}{\bf Privileged Instructions} & \\
-\cline{2-10}
+\multicolumn{11}{c}{\bf Privileged Instructions} & \\
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111110} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{0000000000} &
+\multicolumn{6}{c|}{0000000000} &
\multicolumn{1}{c|}{rdr} & EI rdr \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111110} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{0010000000} &
+\multicolumn{6}{c|}{0010000000} &
\multicolumn{1}{c|}{rdr} & DI rdr \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111110} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{0100000000} &
+\multicolumn{6}{c|}{0100000000} &
\multicolumn{1}{c|}{00000} & ERET \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111110} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{00000} &
-\multicolumn{4}{c|}{1000000000} &
+\multicolumn{6}{c|}{1000000000} &
\multicolumn{1}{c|}{rdr} & MFPCR rdr,rs2 \\
-\cline{2-10}
+\cline{2-12}
&
\multicolumn{2}{|c|}{1111110} &
\multicolumn{1}{c|}{rs2} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{4}{c|}{1010000000} &
+\multicolumn{6}{c|}{1010000000} &
\multicolumn{1}{c|}{00000} & MTPCR rs1,rs2 \\
-\cline{2-10}
+\cline{2-12}
\end{tabular}
diff --git a/opcodes b/opcodes
index 43d41e1..325264f 100644
--- a/opcodes
+++ b/opcodes
@@ -139,27 +139,27 @@ sgninj.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x5 rdr rs1 rs2
sgninjn.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x6 rdr rs1 rs2
sgnmul.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x7 rdr rs1 rs2
-add.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0 rdr rs1 rs2 rm
-sub.s.rm 31..25=0x6A 14..13=0 10=1 9..5=1 rdr rs1 rs2 rm
-mul.s.rm 31..25=0x6A 14..13=0 10=1 9..5=2 rdr rs1 rs2 rm
-div.s.rm 31..25=0x6A 14..13=0 10=1 9..5=3 rdr rs1 rs2 rm
-sqrt.s.rm 31..25=0x6A 14..13=0 10=1 9..5=4 24..20=0 rdr rs1 rm
-
-add.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x0 rdr rs1 rs2 rm
-sub.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x1 rdr rs1 rs2 rm
-mul.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x2 rdr rs1 rs2 rm
-div.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x3 rdr rs1 rs2 rm
-sqrt.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x4 24..20=0 rdr rs1 rm
-
-cvt.l.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0x8 24..20=0 rdr rs1 rm
-cvtu.l.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0x9 24..20=0 rdr rs1 rm
-cvt.w.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0xA 24..20=0 rdr rs1 rm
-cvtu.w.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0xB 24..20=0 rdr rs1 rm
-
-cvt.l.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x8 24..20=0 rdr rs1 rm
-cvtu.l.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x9 24..20=0 rdr rs1 rm
-cvt.w.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0xA 24..20=0 rdr rs1 rm
-cvtu.w.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0xB 24..20=0 rdr rs1 rm
+add.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0 rm rdr rs1 rs2
+sub.s.rm 31..25=0x6A 14..13=0 10=1 9..5=1 rm rdr rs1 rs2
+mul.s.rm 31..25=0x6A 14..13=0 10=1 9..5=2 rm rdr rs1 rs2
+div.s.rm 31..25=0x6A 14..13=0 10=1 9..5=3 rm rdr rs1 rs2
+sqrt.s.rm 31..25=0x6A 14..13=0 10=1 9..5=4 24..20=0 rm rdr rs1
+
+add.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x0 rm rdr rs1 rs2
+sub.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x1 rm rdr rs1 rs2
+mul.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x2 rm rdr rs1 rs2
+div.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x3 rm rdr rs1 rs2
+sqrt.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x4 24..20=0 rm rdr rs1
+
+cvt.l.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0x8 24..20=0 rm rdr rs1
+cvtu.l.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0x9 24..20=0 rm rdr rs1
+cvt.w.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0xA 24..20=0 rm rdr rs1
+cvtu.w.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0xB 24..20=0 rm rdr rs1
+
+cvt.l.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x8 24..20=0 rm rdr rs1
+cvtu.l.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x9 24..20=0 rm rdr rs1
+cvt.w.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0xA 24..20=0 rm rdr rs1
+cvtu.w.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0xB 24..20=0 rm rdr rs1
cvt.s.l 31..25=0x6A 14..13=0 12..10=0 9..5=0xC 24..20=0 rdr rs1
cvtu.s.l 31..25=0x6A 14..13=0 12..10=0 9..5=0xD 24..20=0 rdr rs1
@@ -171,18 +171,18 @@ cvtu.d.l 31..25=0x6A 14..13=3 12..10=0 9..5=0xD 24..20=0 rdr rs1
cvt.d.w 31..25=0x6A 14..13=3 12..10=0 9..5=0xE 24..20=0 rdr rs1
cvtu.d.w 31..25=0x6A 14..13=3 12..10=0 9..5=0xF 24..20=0 rdr rs1
-cvt.s.l.rm 31..25=0x6A 14..13=0 10=1 9..5=0xC 24..20=0 rdr rs1 rm
-cvtu.s.l.rm 31..25=0x6A 14..13=0 10=1 9..5=0xD 24..20=0 rdr rs1 rm
-cvt.s.w.rm 31..25=0x6A 14..13=0 10=1 9..5=0xE 24..20=0 rdr rs1 rm
-cvtu.s.w.rm 31..25=0x6A 14..13=0 10=1 9..5=0xF 24..20=0 rdr rs1 rm
+cvt.s.l.rm 31..25=0x6A 14..13=0 10=1 9..5=0xC 24..20=0 rm rdr rs1
+cvtu.s.l.rm 31..25=0x6A 14..13=0 10=1 9..5=0xD 24..20=0 rm rdr rs1
+cvt.s.w.rm 31..25=0x6A 14..13=0 10=1 9..5=0xE 24..20=0 rm rdr rs1
+cvtu.s.w.rm 31..25=0x6A 14..13=0 10=1 9..5=0xF 24..20=0 rm rdr rs1
-cvt.d.l.rm 31..25=0x6A 14..13=3 10=1 9..5=0xC 24..20=0 rdr rs1 rm
-cvtu.d.l.rm 31..25=0x6A 14..13=3 10=1 9..5=0xD 24..20=0 rdr rs1 rm
+cvt.d.l.rm 31..25=0x6A 14..13=3 10=1 9..5=0xC 24..20=0 rm rdr rs1
+cvtu.d.l.rm 31..25=0x6A 14..13=3 10=1 9..5=0xD 24..20=0 rm rdr rs1
cvt.s.d 31..25=0x6A 14..13=0 12..10=0 9..5=0x13 24..20=0 rdr rs1
cvt.d.s 31..25=0x6A 14..13=3 12..10=0 9..5=0x10 24..20=0 rdr rs1
-cvt.s.d.rm 31..25=0x6A 14..13=0 10=1 9..5=0x13 24..20=0 rdr rs1 rm
+cvt.s.d.rm 31..25=0x6A 14..13=0 10=1 9..5=0x13 24..20=0 rm rdr rs1
c.eq.s 31..25=0x6A 14..13=0 12..10=0 9..5=0x15 rdr rs1 rs2
c.lt.s 31..25=0x6A 14..13=0 12..10=0 9..5=0x16 rdr rs1 rs2
@@ -216,13 +216,13 @@ msub.d 31..25=0x6D 14..13=3 12..10=0 rdr rs1 rs2 rs3
nmsub.d 31..25=0x6E 14..13=3 12..10=0 rdr rs1 rs2 rs3
nmadd.d 31..25=0x6F 14..13=3 12..10=0 rdr rs1 rs2 rs3
-madd.s.rm 31..25=0x6C 14..13=0 10=1 rdr rs1 rs2 rs3 rm
-msub.s.rm 31..25=0x6D 14..13=0 10=1 rdr rs1 rs2 rs3 rm
-nmsub.s.rm 31..25=0x6E 14..13=0 10=1 rdr rs1 rs2 rs3 rm
-nmadd.s.rm 31..25=0x6F 14..13=0 10=1 rdr rs1 rs2 rs3 rm
+madd.s.rm 31..25=0x6C 14..13=0 10=1 rm rdr rs1 rs2 rs3
+msub.s.rm 31..25=0x6D 14..13=0 10=1 rm rdr rs1 rs2 rs3
+nmsub.s.rm 31..25=0x6E 14..13=0 10=1 rm rdr rs1 rs2 rs3
+nmadd.s.rm 31..25=0x6F 14..13=0 10=1 rm rdr rs1 rs2 rs3
-madd.d.rm 31..25=0x6C 14..13=3 10=1 rdr rs1 rs2 rs3 rm
-msub.d.rm 31..25=0x6D 14..13=3 10=1 rdr rs1 rs2 rs3 rm
-nmsub.d.rm 31..25=0x6E 14..13=3 10=1 rdr rs1 rs2 rs3 rm
-nmadd.d.rm 31..25=0x6F 14..13=3 10=1 rdr rs1 rs2 rs3 rm
+madd.d.rm 31..25=0x6C 14..13=3 10=1 rm rdr rs1 rs2 rs3
+msub.d.rm 31..25=0x6D 14..13=3 10=1 rm rdr rs1 rs2 rs3
+nmsub.d.rm 31..25=0x6E 14..13=3 10=1 rm rdr rs1 rs2 rs3
+nmadd.d.rm 31..25=0x6F 14..13=3 10=1 rm rdr rs1 rs2 rs3
diff --git a/parse-opcodes b/parse-opcodes
index b3b93ab..50e602c 100755
--- a/parse-opcodes
+++ b/parse-opcodes
@@ -149,16 +149,17 @@ def str_arg(arg0,arg1,match,arguments):
def str_inst(name,arguments):
ret = name.upper() + ' '
for idx in range(len(arguments)):
- ret = ret + arguments[idx]
- if idx != len(arguments)-1:
- ret = ret + ','
+ if arguments[idx] != 'rm':
+ ret = ret + arguments[idx]
+ if idx != len(arguments)-1:
+ ret = ret + ','
return ret
def print_unimp_type(name,match,arguments):
print """
&
-\\multicolumn{9}{|c|}{%s} & %s \\\\
-\\cline{2-10}
+\\multicolumn{11}{|c|}{%s} & %s \\\\
+\\cline{2-12}
""" % \
( \
'0'*32, \
@@ -169,8 +170,8 @@ def print_j_type(name,match,arguments):
print """
&
\\multicolumn{1}{|c|}{%s} &
-\\multicolumn{8}{c|}{%s} & %s \\\\
-\\cline{2-10}
+\\multicolumn{10}{c|}{%s} & %s \\\\
+\\cline{2-12}
""" % \
( \
binary(yank(match,27,5),5), \
@@ -183,8 +184,8 @@ def print_lui_type(name,match,arguments):
&
\\multicolumn{2}{|c|}{%s} &
\\multicolumn{1}{c|}{%s} &
-\\multicolumn{6}{c|}{%s} & %s \\\\
-\\cline{2-10}
+\\multicolumn{8}{c|}{%s} & %s \\\\
+\\cline{2-12}
""" % \
( \
binary(yank(match,25,7),7), \
@@ -199,9 +200,9 @@ def print_i_type(name,match,arguments):
\\multicolumn{2}{|c|}{%s} &
\\multicolumn{1}{c|}{%s} &
\\multicolumn{1}{c|}{%s} &
-\\multicolumn{1}{c|}{%s} &
-\\multicolumn{4}{c|}{%s} & %s \\\\
-\\cline{2-10}
+\\multicolumn{2}{c|}{%s} &
+\\multicolumn{5}{c|}{%s} & %s \\\\
+\\cline{2-12}
""" % \
( \
binary(yank(match,25,7),7), \
@@ -218,9 +219,9 @@ def print_ish_type(name,match,arguments):
\\multicolumn{2}{|c|}{%s} &
\\multicolumn{1}{c|}{%s} &
\\multicolumn{1}{c|}{%s} &
-\\multicolumn{3}{c|}{%s} &
+\\multicolumn{5}{c|}{%s} &
\\multicolumn{2}{c|}{%s} & %s \\\\
-\\cline{2-10}
+\\cline{2-12}
""" % \
( \
binary(yank(match,25,7),7), \
@@ -237,10 +238,10 @@ def print_ishw_type(name,match,arguments):
\\multicolumn{2}{|c|}{%s} &
\\multicolumn{1}{c|}{%s} &
\\multicolumn{1}{c|}{%s} &
-\\multicolumn{3}{c|}{%s} &
+\\multicolumn{5}{c|}{%s} &
\\multicolumn{1}{c|}{0} &
\\multicolumn{1}{c|}{%s} & %s \\\\
-\\cline{2-10}
+\\cline{2-12}
""" % \
( \
binary(yank(match,25,7),7), \
@@ -257,9 +258,9 @@ def print_r_type(name,match,arguments):
\\multicolumn{2}{|c|}{%s} &
\\multicolumn{1}{c|}{%s} &
\\multicolumn{1}{c|}{%s} &
-\\multicolumn{4}{c|}{%s} &
+\\multicolumn{6}{c|}{%s} &
\\multicolumn{1}{c|}{%s} & %s \\\\
-\\cline{2-10}
+\\cline{2-12}
""" % \
( \
binary(yank(match,25,7),7), \
@@ -270,16 +271,39 @@ def print_r_type(name,match,arguments):
str_inst(name,arguments) \
)
-def print_r4_type(name,match,arguments):
+def print_r_rm_type(name,match,arguments):
print """
&
\\multicolumn{2}{|c|}{%s} &
\\multicolumn{1}{c|}{%s} &
\\multicolumn{1}{c|}{%s} &
+\\multicolumn{1}{c|}{%s} &
\\multicolumn{2}{c|}{%s} &
+\\multicolumn{3}{c|}{%s} &
+\\multicolumn{1}{c|}{%s} & %s \\\\
+\\cline{2-12}
+ """ % \
+ ( \
+ binary(yank(match,25,7),7), \
+ str_arg('rs2','',match,arguments), \
+ str_arg('rs1','',match,arguments), \
+ binary(yank(match,13,2),2), \
+ str_arg('rm','',match,arguments), \
+ binary(yank(match,5,6),6), \
+ str_arg('rdr','',match,arguments), \
+ str_inst(name,arguments) \
+ )
+
+def print_r4_type(name,match,arguments):
+ print """
+&
+\\multicolumn{2}{|c|}{%s} &
+\\multicolumn{1}{c|}{%s} &
+\\multicolumn{1}{c|}{%s} &
+\\multicolumn{4}{c|}{%s} &
\\multicolumn{2}{c|}{%s} &
\\multicolumn{1}{c|}{%s} & %s \\\\
-\\cline{2-10}
+\\cline{2-12}
""" % \
( \
binary(yank(match,25,7),7), \
@@ -291,6 +315,31 @@ def print_r4_type(name,match,arguments):
str_inst(name,arguments) \
)
+def print_r4_rm_type(name,match,arguments):
+ print """
+&
+\\multicolumn{2}{|c|}{%s} &
+\\multicolumn{1}{c|}{%s} &
+\\multicolumn{1}{c|}{%s} &
+\\multicolumn{1}{c|}{%s} &
+\\multicolumn{2}{c|}{%s} &
+\\multicolumn{1}{c|}{%s} &
+\\multicolumn{2}{c|}{%s} &
+\\multicolumn{1}{c|}{%s} & %s \\\\
+\\cline{2-12}
+ """ % \
+ ( \
+ binary(yank(match,25,7),7), \
+ str_arg('rs2','',match,arguments), \
+ str_arg('rs1','',match,arguments), \
+ binary(yank(match,13,2),2), \
+ str_arg('rm','',match,arguments), \
+ binary(yank(match,10,1),1), \
+ str_arg('rs3','',match,arguments), \
+ str_arg('rdr','',match,arguments), \
+ str_inst(name,arguments) \
+ )
+
def print_header():
print """
\\newpage
@@ -298,14 +347,16 @@ def print_header():
\\begin{table}[p]
\\begin{small}
\\begin{center}
-\\begin{tabular}{rcccccccccl}
+\\begin{tabular}{rcccccccccccl}
&
\\hspace*{0.6in} &
\\hspace*{0.2in} &
\\hspace*{0.5in} &
\\hspace*{0.5in} &
-\\hspace*{0.3in} &
-\\hspace*{0.2in} &
+\\hspace*{0.5in} &
+\\hspace*{0.1in} &
+\\hspace*{0.1in} &
+\\hspace*{0.1in} &
\\hspace*{0.4in} &
\\hspace*{0.1in} &
\\hspace*{0.5in} \\\\
@@ -314,59 +365,61 @@ def print_header():
\\instbitrange{26}{25} &
\\instbitrange{24}{20} &
\\instbitrange{19}{15} &
-\\instbitrange{14}{12} &
-\\instbitrange{11}{10} &
+\\instbitrange{14}{13} &
+\\instbit{12} &
+\\instbit{11} &
+\\instbit{10} &
\\instbitrange{9}{6} &
\\instbit{5} &
\\instbitrange{4}{0} \\\\
-\\cline{2-10}
+\\cline{2-12}
&
\\multicolumn{1}{|c|}{opcode5} &
-\\multicolumn{8}{c|}{jump target} & J-type \\\\
-\\cline{2-10}
+\\multicolumn{10}{c|}{jump target} & J-type \\\\
+\\cline{2-12}
&
\\multicolumn{2}{|c|}{opcode} &
\\multicolumn{1}{c|}{rdi} &
-\\multicolumn{6}{c|}{LUI-immediate} & LUI-type \\\\
-\\cline{2-10}
+\\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\\\
+\\cline{2-12}
&
\\multicolumn{2}{|c|}{opcode} &
\\multicolumn{1}{c|}{rdi/rs2} &
\\multicolumn{1}{c|}{rs1} &
-\\multicolumn{1}{c|}{funct3} &
-\\multicolumn{4}{c|}{immediate} & I-type \\\\
-\\cline{2-10}
+\\multicolumn{2}{c|}{funct3} &
+\\multicolumn{5}{c|}{immediate} & I-type \\\\
+\\cline{2-12}
&
\\multicolumn{2}{|c|}{opcode} &
\\multicolumn{1}{c|}{rdi} &
\\multicolumn{1}{c|}{rs1} &
-\\multicolumn{3}{c|}{funct9} &
+\\multicolumn{5}{c|}{funct9} &
\\multicolumn{2}{c|}{shamt} & ISH-type \\\\
-\\cline{2-10}
+\\cline{2-12}
&
\\multicolumn{2}{|c|}{opcode} &
\\multicolumn{1}{c|}{rs2} &
\\multicolumn{1}{c|}{rs1} &
-\\multicolumn{4}{c|}{funct10} &
+\\multicolumn{6}{c|}{funct10} &
\\multicolumn{1}{c|}{rdr} & R-type \\\\
-\\cline{2-10}
+\\cline{2-12}
&
\\multicolumn{2}{|c|}{opcode} &
\\multicolumn{1}{c|}{rs2} &
\\multicolumn{1}{c|}{rs1} &
-\\multicolumn{2}{c|}{funct5} &
+\\multicolumn{4}{c|}{funct5} &
\\multicolumn{2}{c|}{rs3} &
\\multicolumn{1}{c|}{rdr} & R4-type \\\\
-\\cline{2-10}
+\\cline{2-12}
"""
def print_subtitle(title):
print """
&
-\\multicolumn{9}{c}{} & \\\\
+\\multicolumn{11}{c}{} & \\\\
&
-\\multicolumn{9}{c}{\\bf %s} & \\\\
-\\cline{2-10}
+\\multicolumn{11}{c}{\\bf %s} & \\\\
+\\cline{2-12}
""" % title
def print_footer(caption):
@@ -401,6 +454,10 @@ def print_insts(opcode,name,type,min,max):
print_ish_type(n,match[n],arguments[n])
elif types[n] == 7:
print_ishw_type(n,match[n],arguments[n])
+ elif types[n] == 8:
+ print_r4_rm_type(n,match[n],arguments[n])
+ elif types[n] == 9:
+ print_r_rm_type(n,match[n],arguments[n])
def make_latex_table():
print_header()
@@ -451,13 +508,27 @@ def make_latex_table():
print_insts(-1,'msub.d',-1,-1,-1)
print_insts(-1,'nmsub.d',-1,-1,-1)
print_insts(-1,'nmadd.d',-1,-1,-1)
- print_subtitle('Floating-Point Compare Instructions')
- print_insts(-1,'c.eq.s',-1,-1,-1)
- print_insts(-1,'c.lt.s',-1,-1,-1)
- print_insts(-1,'c.le.s',-1,-1,-1)
- print_insts(-1,'c.eq.d',-1,-1,-1)
- print_insts(-1,'c.lt.d',-1,-1,-1)
- print_insts(-1,'c.le.d',-1,-1,-1)
+ print_insts(-1,'add.s.rm',-1,-1,-1)
+ print_insts(-1,'sub.s.rm',-1,-1,-1)
+ print_insts(-1,'mul.s.rm',-1,-1,-1)
+ print_insts(-1,'div.s.rm',-1,-1,-1)
+ print_insts(-1,'sqrt.s.rm',-1,-1,-1)
+ print_insts(-1,'add.d.rm',-1,-1,-1)
+ print_insts(-1,'sub.d.rm',-1,-1,-1)
+ print_insts(-1,'mul.d.rm',-1,-1,-1)
+ print_insts(-1,'div.d.rm',-1,-1,-1)
+ print_insts(-1,'sqrt.d.rm',-1,-1,-1)
+ print_insts(-1,'madd.s.rm',-1,-1,-1)
+ print_insts(-1,'msub.s.rm',-1,-1,-1)
+ print_insts(-1,'nmsub.s.rm',-1,-1,-1)
+ print_insts(-1,'nmadd.s.rm',-1,-1,-1)
+ print_insts(-1,'madd.d.rm',-1,-1,-1)
+ print_insts(-1,'msub.d.rm',-1,-1,-1)
+ print_insts(-1,'nmsub.d.rm',-1,-1,-1)
+ print_insts(-1,'nmadd.d.rm',-1,-1,-1)
+ print_footer(0)
+
+ print_header()
print_subtitle('Floating-Point Move \& Conversion Instructions')
print_insts(-1,'sgninj.s',-1,-1,-1)
print_insts(-1,'sgninjn.s',-1,-1,-1)
@@ -467,9 +538,7 @@ def make_latex_table():
print_insts(-1,'sgnmul.d',-1,-1,-1)
print_insts(-1,'cvt.s.d',-1,-1,-1)
print_insts(-1,'cvt.d.s',-1,-1,-1)
- print_footer(0)
-
- print_header()
+ print_insts(-1,'cvt.s.d.rm',-1,-1,-1)
print_subtitle('Integer to Floating-Point Move \& Conversion Instructions')
print_insts(-1,'cvt.s.l',-1,-1,-1)
print_insts(-1,'cvtu.s.l',-1,-1,-1)
@@ -479,22 +548,38 @@ def make_latex_table():
print_insts(-1,'cvtu.d.l',-1,-1,-1)
print_insts(-1,'cvt.d.w',-1,-1,-1)
print_insts(-1,'cvtu.d.w',-1,-1,-1)
+ print_insts(-1,'cvt.s.l.rm',-1,-1,-1)
+ print_insts(-1,'cvtu.s.l.rm',-1,-1,-1)
+ print_insts(-1,'cvt.s.w.rm',-1,-1,-1)
+ print_insts(-1,'cvtu.s.w.rm',-1,-1,-1)
+ print_insts(-1,'cvt.d.l.rm',-1,-1,-1)
+ print_insts(-1,'cvtu.d.l.rm',-1,-1,-1)
print_insts(-1,'mtflh.d',-1,-1,-1)
print_insts(-1,'mtf.s',-1,-1,-1)
print_insts(-1,'mtf.d',-1,-1,-1)
print_subtitle('Floating-Point to Integer Move \& Conversion Instructions')
- print_insts(-1,'trunc.l.s',-1,-1,-1)
- print_insts(-1,'truncu.l.s',-1,-1,-1)
- print_insts(-1,'trunc.w.s',-1,-1,-1)
- print_insts(-1,'truncu.w.s',-1,-1,-1)
- print_insts(-1,'trunc.l.d',-1,-1,-1)
- print_insts(-1,'truncu.l.d',-1,-1,-1)
- print_insts(-1,'trunc.w.d',-1,-1,-1)
- print_insts(-1,'truncu.w.d',-1,-1,-1)
+ print_insts(-1,'cvt.l.s.rm',-1,-1,-1)
+ print_insts(-1,'cvtu.l.s.rm',-1,-1,-1)
+ print_insts(-1,'cvt.w.s.rm',-1,-1,-1)
+ print_insts(-1,'cvtu.w.s.rm',-1,-1,-1)
+ print_insts(-1,'cvt.l.d.rm',-1,-1,-1)
+ print_insts(-1,'cvtu.l.d.rm',-1,-1,-1)
+ print_insts(-1,'cvt.w.d.rm',-1,-1,-1)
+ print_insts(-1,'cvtu.w.d.rm',-1,-1,-1)
print_insts(-1,'mffl.d',-1,-1,-1)
print_insts(-1,'mffh.d',-1,-1,-1)
print_insts(-1,'mff.s',-1,-1,-1)
print_insts(-1,'mff.d',-1,-1,-1)
+ print_footer(0)
+
+ print_header()
+ print_subtitle('Floating-Point Compare Instructions')
+ print_insts(-1,'c.eq.s',-1,-1,-1)
+ print_insts(-1,'c.lt.s',-1,-1,-1)
+ print_insts(-1,'c.le.s',-1,-1,-1)
+ print_insts(-1,'c.eq.d',-1,-1,-1)
+ print_insts(-1,'c.lt.d',-1,-1,-1)
+ print_insts(-1,'c.le.d',-1,-1,-1)
print_subtitle('Miscellaneous Instructions')
print_insts(0x7b,'',-1,0x080,0x300)
print_subtitle('Privileged Instructions')