From 0b707f09b7cc465505aebac30146932d10a45b6f Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Sat, 6 Nov 2010 17:44:56 -0700 Subject: [opcodes] generate latex and verilog correctly --- instr-table.tex | 1788 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 933 insertions(+), 855 deletions(-) (limited to 'instr-table.tex') diff --git a/instr-table.tex b/instr-table.tex index 5455df7..4a4479e 100644 --- a/instr-table.tex +++ b/instr-table.tex @@ -18,446 +18,442 @@ \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{31}{25} & +\instbitrange{24}{22} & +\instbitrange{21}{20} & +\instbitrange{19}{16} & +\instbit{15} & +\instbitrange{14}{10} & +\instbitrange{9}{5} & \instbitrange{4}{0} \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{1}{|c|}{opcode5} & -\multicolumn{10}{c|}{jump target} & J-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{7}{c|}{jump target} & J-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & -\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{6}{c|}{LUI-immediate} & +\multicolumn{1}{c|}{rd} & LUI-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd/rs2} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{4}{c|}{immediate} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{funct3} & -\multicolumn{5}{c|}{immediate} & I-type \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & I-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{3}{c|}{immed[11:5]} & +\multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{funct9} & -\multicolumn{2}{c|}{shamt} & ISH-type \\ -\cline{2-12} +\multicolumn{1}{c|}{immed[4:0]} & B-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{4}{c|}{funct10} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{funct10} & \multicolumn{1}{c|}{rd} & R-type \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{2}{c|}{funct5} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{funct5} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & R4-type \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Unimplemented Instruction} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{11}{|c|}{00000000000000000000000000000000} & UNIMP \\ -\cline{2-12} +\multicolumn{8}{|c|}{00000000000000000000000000000000} & UNIMP \\ +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Control Transfer Instructions} & \\ -\cline{2-12} +\cline{2-9} & \multicolumn{1}{|c|}{1100000} & -\multicolumn{10}{c|}{imm25} & J imm25 \\ -\cline{2-12} - - -& -\multicolumn{2}{|c|}{1111011} & -\multicolumn{1}{c|}{00000} & -\multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & -\multicolumn{1}{c|}{rd} & RDNPC rd \\ -\cline{2-12} +\multicolumn{7}{c|}{imm25} & J imm25 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111011} & -\multicolumn{1}{c|}{rs2} & -\multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & -\multicolumn{1}{c|}{rd} & MFCR rd,rs2 \\ -\cline{2-12} +\multicolumn{1}{|c|}{1100001} & +\multicolumn{7}{c|}{imm25} & JAL imm25 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111011} & -\multicolumn{1}{c|}{rs2} & +\multicolumn{1}{|c|}{1100010} & +\multicolumn{1}{c|}{000} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & -\multicolumn{1}{c|}{00000} & MTCR rs1,rs2 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & JALR.C rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111011} & -\multicolumn{1}{c|}{00000} & -\multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & -\multicolumn{1}{c|}{00000} & SYNC \\ -\cline{2-12} +\multicolumn{1}{|c|}{1100010} & +\multicolumn{1}{c|}{001} & +\multicolumn{4}{c|}{imm12} & +\multicolumn{1}{c|}{rs1} & +\multicolumn{1}{c|}{rd} & JALR.R rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111011} & -\multicolumn{1}{c|}{00000} & -\multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & -\multicolumn{1}{c|}{00000} & SYSCALL imm12 \\ -\cline{2-12} +\multicolumn{1}{|c|}{1100010} & +\multicolumn{1}{c|}{010} & +\multicolumn{4}{c|}{imm12} & +\multicolumn{1}{c|}{rs1} & +\multicolumn{1}{c|}{rd} & JALR.J rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110011} & +\multicolumn{1}{|c|}{1100011} & +\multicolumn{1}{c|}{000} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & BEQ rs1,rs2,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & BEQ rs1,rs2,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110011} & +\multicolumn{1}{|c|}{1100011} & +\multicolumn{1}{c|}{001} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & BNE rs1,rs2,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & BNE rs1,rs2,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110011} & +\multicolumn{1}{|c|}{1100011} & +\multicolumn{1}{c|}{100} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & BLT rs1,rs2,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & BLT rs1,rs2,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110011} & +\multicolumn{1}{|c|}{1100011} & +\multicolumn{1}{c|}{101} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & BGE rs1,rs2,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & BGE rs1,rs2,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110011} & +\multicolumn{1}{|c|}{1100011} & +\multicolumn{1}{c|}{110} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & BLTU rs1,rs2,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & BLTU rs1,rs2,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110011} & +\multicolumn{1}{|c|}{1100011} & +\multicolumn{1}{c|}{111} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & BGEU rs1,rs2,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & BGEU rs1,rs2,imm12lo,imm12hi \\ +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Memory Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{000} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & LB rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & LB rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{001} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & LH rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & LH rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{010} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & LW rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & LW rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{011} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & LD rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & LD rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{100} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & LBU rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & LBU rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{101} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & LHU rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & LHU rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{110} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & LWU rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & LWU rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111000} & -\multicolumn{1}{c|}{00000} & +\multicolumn{1}{|c|}{1111000} & +\multicolumn{1}{c|}{111} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & SYNCI rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{00000} & SYNCI rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111001} & +\multicolumn{1}{|c|}{1111001} & +\multicolumn{1}{c|}{000} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & SB rs2,rs1,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & SB rs2,rs1,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111001} & +\multicolumn{1}{|c|}{1111001} & +\multicolumn{1}{c|}{001} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & SH rs2,rs1,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & SH rs2,rs1,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111001} & +\multicolumn{1}{|c|}{1111001} & +\multicolumn{1}{c|}{010} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & SW rs2,rs1,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & SW rs2,rs1,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1111001} & +\multicolumn{1}{|c|}{1111001} & +\multicolumn{1}{c|}{011} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & SD rs2,rs1,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & SD rs2,rs1,imm12lo,imm12hi \\ +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Atomic Memory Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.ADD rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.SWAP rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.AND rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.OR rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.MIN rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.MAX rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.MINU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0100000111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMOW.MAXU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.ADD rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.SWAP rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.AND rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.OR rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.MIN rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.MAX rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.MINU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1111010} & +\multicolumn{1}{|c|}{1111010} & +\multicolumn{4}{c|}{0110000111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AMO.MAXU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} \end{tabular} @@ -487,467 +483,471 @@ \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{31}{25} & +\instbitrange{24}{22} & +\instbitrange{21}{20} & +\instbitrange{19}{16} & +\instbit{15} & +\instbitrange{14}{10} & +\instbitrange{9}{5} & \instbitrange{4}{0} \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{1}{|c|}{opcode5} & -\multicolumn{10}{c|}{jump target} & J-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{7}{c|}{jump target} & J-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & -\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{6}{c|}{LUI-immediate} & +\multicolumn{1}{c|}{rd} & LUI-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd/rs2} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{4}{c|}{immediate} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{funct3} & -\multicolumn{5}{c|}{immediate} & I-type \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & I-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{3}{c|}{immed[11:5]} & +\multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{funct9} & -\multicolumn{2}{c|}{shamt} & ISH-type \\ -\cline{2-12} +\multicolumn{1}{c|}{immed[4:0]} & B-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{4}{c|}{funct10} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{funct10} & \multicolumn{1}{c|}{rd} & R-type \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{2}{c|}{funct5} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{funct5} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & R4-type \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Integer Compute Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110001} & -\multicolumn{1}{c|}{rd} & -\multicolumn{8}{c|}{imm20} & LUI rd,imm20 \\ -\cline{2-12} +\multicolumn{1}{|c|}{1110001} & +\multicolumn{6}{c|}{imm20} & +\multicolumn{1}{c|}{rd} & LUI rd,imm20 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{000} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & ADDI rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & ADDI rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{010} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & SLTI rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & SLTI rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{011} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & SLTIU rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & SLTIU rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{100} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & ANDI rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & ANDI rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{101} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & ORI rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & ORI rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{110} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & XORI rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & XORI rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{111} & +\multicolumn{2}{c|}{000001} & +\multicolumn{2}{c|}{shamt} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{000000000} & -\multicolumn{2}{c|}{shamt} & SLLI rd,rs1,shamt \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & SLLI rd,rs1,shamt \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{111} & +\multicolumn{2}{c|}{000010} & +\multicolumn{2}{c|}{shamt} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{000000000} & -\multicolumn{2}{c|}{shamt} & SRLI rd,rs1,shamt \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & SRLI rd,rs1,shamt \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110100} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110100} & +\multicolumn{1}{c|}{111} & +\multicolumn{2}{c|}{000011} & +\multicolumn{2}{c|}{shamt} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{000000000} & -\multicolumn{2}{c|}{shamt} & SRAI rd,rs1,shamt \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & SRAI rd,rs1,shamt \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & ADD rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SUB rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SLT rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SLTU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & AND rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & OR rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & XOR rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0000000111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & NOR rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{1110000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SLL rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{1110000100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SRL rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{1110000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SRA rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0010000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MUL rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0010000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MULH rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0010000011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MULHU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0010000100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & DIV rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0010000101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & DIVU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0010000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & REM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110101} & +\multicolumn{1}{|c|}{1110101} & +\multicolumn{4}{c|}{0010000111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & REMU rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf 32-bit Integer Compute Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110110} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1110110} & +\multicolumn{1}{c|}{000} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & ADDIW rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & ADDIW rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110110} & -\multicolumn{1}{c|}{rd} & -\multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{000000000} & +\multicolumn{1}{|c|}{1110110} & +\multicolumn{1}{c|}{111} & +\multicolumn{2}{c|}{000001} & \multicolumn{1}{c|}{0} & -\multicolumn{1}{c|}{shamtw} & SLLIW rd,rs1,shamtw \\ -\cline{2-12} +\multicolumn{1}{c|}{shamtw} & +\multicolumn{1}{c|}{rd} & +\multicolumn{1}{c|}{rs1} & SLLIW rd,rs1,shamtw \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110110} & -\multicolumn{1}{c|}{rd} & -\multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{000000000} & +\multicolumn{1}{|c|}{1110110} & +\multicolumn{1}{c|}{111} & +\multicolumn{2}{c|}{000010} & \multicolumn{1}{c|}{0} & -\multicolumn{1}{c|}{shamtw} & SRLIW rd,rs1,shamtw \\ -\cline{2-12} +\multicolumn{1}{c|}{shamtw} & +\multicolumn{1}{c|}{rd} & +\multicolumn{1}{c|}{rs1} & SRLIW rd,rs1,shamtw \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110110} & -\multicolumn{1}{c|}{rd} & -\multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{000000000} & +\multicolumn{1}{|c|}{1110110} & +\multicolumn{1}{c|}{111} & +\multicolumn{2}{c|}{000011} & \multicolumn{1}{c|}{0} & -\multicolumn{1}{c|}{shamtw} & SRAIW rd,rs1,shamtw \\ -\cline{2-12} +\multicolumn{1}{c|}{shamtw} & +\multicolumn{1}{c|}{rd} & +\multicolumn{1}{c|}{rs1} & SRAIW rd,rs1,shamtw \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0000000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & ADDW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0000000001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SUBW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{1110000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SLLW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{1110000100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SRLW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{1110000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SRAW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0010000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MULW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0010000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MULHW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0010000011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MULHUW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0010000100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & DIVW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0010000101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & DIVUW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0010000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & REMW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1110111} & +\multicolumn{1}{|c|}{1110111} & +\multicolumn{4}{c|}{0010000111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & REMUW rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} \end{tabular} @@ -977,482 +977,474 @@ \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{31}{25} & +\instbitrange{24}{22} & +\instbitrange{21}{20} & +\instbitrange{19}{16} & +\instbit{15} & +\instbitrange{14}{10} & +\instbitrange{9}{5} & \instbitrange{4}{0} \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{1}{|c|}{opcode5} & -\multicolumn{10}{c|}{jump target} & J-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{7}{c|}{jump target} & J-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & -\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{6}{c|}{LUI-immediate} & +\multicolumn{1}{c|}{rd} & LUI-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd/rs2} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{4}{c|}{immediate} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{funct3} & -\multicolumn{5}{c|}{immediate} & I-type \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & I-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{3}{c|}{immed[11:5]} & +\multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{funct9} & -\multicolumn{2}{c|}{shamt} & ISH-type \\ -\cline{2-12} +\multicolumn{1}{c|}{immed[4:0]} & B-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{4}{c|}{funct10} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{funct10} & \multicolumn{1}{c|}{rd} & R-type \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{2}{c|}{funct5} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{funct5} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & R4-type \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Floating-Point Memory Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1101000} & +\multicolumn{1}{c|}{010} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & L.S rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & L.S rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1101000} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{1101000} & +\multicolumn{1}{c|}{011} & +\multicolumn{4}{c|}{imm12} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{imm12} & L.D rd,rs1,imm12 \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & L.D rd,rs1,imm12 \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1101001} & +\multicolumn{1}{|c|}{1101001} & +\multicolumn{1}{c|}{010} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & S.S rs2,rs1,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & S.S rs2,rs1,imm12lo,imm12hi \\ +\cline{2-9} & -\multicolumn{2}{|c|}{1101001} & +\multicolumn{1}{|c|}{1101001} & +\multicolumn{1}{c|}{011} & +\multicolumn{3}{c|}{imm12hi} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{000} & -\multicolumn{5}{c|}{000000000000} & S.D rs2,rs1,imm12lo,imm12hi \\ -\cline{2-12} +\multicolumn{1}{c|}{imm12lo} & S.D rs2,rs1,imm12lo,imm12hi \\ +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Floating-Point Compute Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & ADD.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SUB.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MUL.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & DIV.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SQRT.S rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & ADD.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SUB.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MUL.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & DIV.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SQRT.D rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101100} & +\multicolumn{1}{|c|}{1101100} & +\multicolumn{2}{c|}{00000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MADD.S rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101101} & +\multicolumn{1}{|c|}{1101101} & +\multicolumn{2}{c|}{00000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MSUB.S rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101110} & +\multicolumn{1}{|c|}{1101110} & +\multicolumn{2}{c|}{00000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMSUB.S rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101111} & +\multicolumn{1}{|c|}{1101111} & +\multicolumn{2}{c|}{00000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMADD.S rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101100} & +\multicolumn{1}{|c|}{1101100} & +\multicolumn{2}{c|}{11000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MADD.D rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101101} & +\multicolumn{1}{|c|}{1101101} & +\multicolumn{2}{c|}{11000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MSUB.D rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101110} & +\multicolumn{1}{|c|}{1101110} & +\multicolumn{2}{c|}{11000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMSUB.D rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101111} & +\multicolumn{1}{|c|}{1101111} & +\multicolumn{2}{c|}{11000} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{00000} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMADD.D rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & ADD.S.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & SUB.S.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & MUL.S.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & DIV.S.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & SQRT.S.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & ADD.D.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & SUB.D.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & MUL.D.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00011} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & DIV.D.RM rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{00100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & SQRT.D.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101100} & +\multicolumn{1}{|c|}{1101100} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MADD.S.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101101} & +\multicolumn{1}{|c|}{1101101} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MSUB.S.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101110} & +\multicolumn{1}{|c|}{1101110} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMSUB.S.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101111} & +\multicolumn{1}{|c|}{1101111} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMADD.S.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101100} & +\multicolumn{1}{|c|}{1101100} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MADD.D.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101101} & +\multicolumn{1}{|c|}{1101101} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & MSUB.D.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101110} & +\multicolumn{1}{|c|}{1101110} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMSUB.D.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101111} & +\multicolumn{1}{|c|}{1101111} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{1}{c|}{0} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & NMADD.D.RM rd,rs1,rs2,rs3 \\ -\cline{2-12} +\cline{2-9} \end{tabular} @@ -1482,449 +1474,447 @@ \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{31}{25} & +\instbitrange{24}{22} & +\instbitrange{21}{20} & +\instbitrange{19}{16} & +\instbit{15} & +\instbitrange{14}{10} & +\instbitrange{9}{5} & \instbitrange{4}{0} \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{1}{|c|}{opcode5} & -\multicolumn{10}{c|}{jump target} & J-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{7}{c|}{jump target} & J-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & -\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{6}{c|}{LUI-immediate} & +\multicolumn{1}{c|}{rd} & LUI-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd/rs2} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{4}{c|}{immediate} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{funct3} & -\multicolumn{5}{c|}{immediate} & I-type \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & I-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{3}{c|}{immed[11:5]} & +\multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{funct9} & -\multicolumn{2}{c|}{shamt} & ISH-type \\ -\cline{2-12} +\multicolumn{1}{c|}{immed[4:0]} & B-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{4}{c|}{funct10} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{funct10} & \multicolumn{1}{c|}{rd} & R-type \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{2}{c|}{funct5} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{funct5} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & R4-type \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Floating-Point Move \& Conversion Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SGNINJ.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SGNINJN.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000000111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SGNMUL.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SGNINJ.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SGNINJN.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100000111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & SGNMUL.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000010011} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVT.S.D rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100010000} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVT.D.S rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{10011} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.S.D.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Integer to Floating-Point Move \& Conversion Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000001100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVT.S.L rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000001101} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVTU.S.L rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000001110} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVT.S.W rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000001111} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVTU.S.W rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100001100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVT.D.L rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100001101} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVTU.D.L rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100001110} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVT.D.W rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100001111} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & CVTU.D.W rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.S.L.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01101} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVTU.S.L.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01110} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.S.W.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01111} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVTU.S.W.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.D.L.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01101} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVTU.D.L.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1101111100} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MTFLH.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0001011100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MTF.S rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1101011100} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MTF.D rd,rs1 \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Floating-Point to Integer Move \& Conversion Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01000} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.L.S.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01001} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVTU.L.S.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01010} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.W.S.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{001} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01011} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVTU.W.S.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01000} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.L.D.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01001} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVTU.L.D.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01010} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVT.W.D.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{1}{c|}{111} & +\multicolumn{1}{c|}{rm} & +\multicolumn{2}{c|}{01011} & \multicolumn{1}{c|}{00000} & \multicolumn{1}{c|}{rs1} & -\multicolumn{1}{c|}{00} & -\multicolumn{2}{c|}{rm} & -\multicolumn{3}{c|}{000000} & \multicolumn{1}{c|}{rd} & CVTU.W.D.RM rd,rs1 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1101011001} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MFFL.D rd,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1101011010} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MFFH.D rd,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0001011000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MFF.S rd,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1101011000} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{00000} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & MFF.D rd,rs2 \\ -\cline{2-12} +\cline{2-9} \end{tabular} @@ -1954,131 +1944,219 @@ \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{31}{25} & +\instbitrange{24}{22} & +\instbitrange{21}{20} & +\instbitrange{19}{16} & +\instbit{15} & +\instbitrange{14}{10} & +\instbitrange{9}{5} & \instbitrange{4}{0} \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{1}{|c|}{opcode5} & -\multicolumn{10}{c|}{jump target} & J-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{7}{c|}{jump target} & J-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & -\multicolumn{8}{c|}{LUI-immediate} & LUI-type \\ -\cline{2-12} +\multicolumn{1}{|c|}{opcode} & +\multicolumn{6}{c|}{LUI-immediate} & +\multicolumn{1}{c|}{rd} & LUI-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd/rs2} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{4}{c|}{immediate} & \multicolumn{1}{c|}{rs1} & -\multicolumn{2}{c|}{funct3} & -\multicolumn{5}{c|}{immediate} & I-type \\ -\cline{2-12} +\multicolumn{1}{c|}{rd} & I-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & -\multicolumn{1}{c|}{rd} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{1}{c|}{funct3} & +\multicolumn{3}{c|}{immed[11:5]} & +\multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{5}{c|}{funct9} & -\multicolumn{2}{c|}{shamt} & ISH-type \\ -\cline{2-12} +\multicolumn{1}{c|}{immed[4:0]} & B-type \\ +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{4}{c|}{funct10} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{funct10} & \multicolumn{1}{c|}{rd} & R-type \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{opcode} & +\multicolumn{1}{|c|}{opcode} & +\multicolumn{2}{c|}{funct5} & +\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{4}{c|}{funct5} & -\multicolumn{2}{c|}{rs3} & \multicolumn{1}{c|}{rd} & R4-type \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Floating-Point Compare Instructions} & \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000010101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & C.EQ.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000010110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & C.LT.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{0000010111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & C.LE.S rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100010101} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & C.EQ.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100010110} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & C.LT.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & -\multicolumn{2}{|c|}{1101010} & +\multicolumn{1}{|c|}{1101010} & +\multicolumn{4}{c|}{1100010111} & \multicolumn{1}{c|}{rs2} & \multicolumn{1}{c|}{rs1} & -\multicolumn{6}{c|}{0000000000} & \multicolumn{1}{c|}{rd} & C.LE.D rd,rs1,rs2 \\ -\cline{2-12} +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Miscellaneous Instructions} & \\ -\cline{2-12} +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1111011} & +\multicolumn{4}{c|}{0000000000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{rd} & RDNPC rd \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1111011} & +\multicolumn{4}{c|}{0010000000} & +\multicolumn{1}{c|}{rs2} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{rd} & MFCR rd,rs2 \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1111011} & +\multicolumn{4}{c|}{0010000001} & +\multicolumn{1}{c|}{rs2} & +\multicolumn{1}{c|}{rs1} & +\multicolumn{1}{c|}{00000} & MTCR rs1,rs2 \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1111011} & +\multicolumn{4}{c|}{0100000000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & SYNC \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1111011} & +\multicolumn{4}{c|}{0110000000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & SYSCALL imm12 \\ +\cline{2-9} & \multicolumn{11}{c}{} & \\ & \multicolumn{11}{c}{\bf Privileged Instructions} & \\ -\cline{2-12} +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1101011} & +\multicolumn{4}{c|}{0000000000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{rd} & EI rd \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1101011} & +\multicolumn{4}{c|}{0000000001} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{rd} & DI rd \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1101011} & +\multicolumn{4}{c|}{0010000000} & +\multicolumn{1}{c|}{rs2} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{rd} & MFPCR rd,rs2 \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1101011} & +\multicolumn{4}{c|}{0010000001} & +\multicolumn{1}{c|}{rs2} & +\multicolumn{1}{c|}{rs1} & +\multicolumn{1}{c|}{00000} & MTPCR rs1,rs2 \\ +\cline{2-9} + + +& +\multicolumn{1}{|c|}{1101011} & +\multicolumn{4}{c|}{0100000000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & +\multicolumn{1}{c|}{00000} & ERET \\ +\cline{2-9} \end{tabular} -- cgit v1.2.3