summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Andrew Waterman <waterman@s141.Millennium.Berkeley.EDU>2011-02-02 01:52:36 -0800
committerGravatar Andrew Waterman <waterman@s141.Millennium.Berkeley.EDU>2011-02-02 01:52:36 -0800
commite52f6465e4f5839487001670179a05f2f283ecb0 (patch)
treefd2eb7ea678b4d218b8e5c4b56dff9bd469e0b8a
parent2fa0b5276db46e12110b6996e03b5aad694cf419 (diff)
[sim,xcc,opcodes] added back mtflh.d
-rw-r--r--inst.v3
-rw-r--r--instr-table.tex26
-rw-r--r--opcodes3
3 files changed, 26 insertions, 6 deletions
diff --git a/inst.v b/inst.v
index af3fba4..27448d6 100644
--- a/inst.v
+++ b/inst.v
@@ -134,8 +134,9 @@
`define MFFH_D 32'b?????_00000_?????_1101011101_1010011
`define MFFSR 32'b?????_00000_00000_1101111100_1010011
`define MTF_S 32'b?????_?????_00000_1110011100_1010011
-`define MTF_D 32'b?????_?????_?????_1110011101_1010011
+`define MTF_D 32'b?????_?????_00000_1110011101_1010011
`define MTFSR 32'b00000_?????_00000_1110111100_1010011
+`define MTFLH_D 32'b?????_?????_?????_1111011101_1010011
`define LF_W 32'b?????_?????_????????????_010_0000111
`define LF_D 32'b?????_?????_????????????_011_0000111
`define SF_W 32'b?????_?????_?????_???????_010_0100111
diff --git a/instr-table.tex b/instr-table.tex
index a1d8b07..7943260 100644
--- a/instr-table.tex
+++ b/instr-table.tex
@@ -1374,9 +1374,9 @@
&
\multicolumn{1}{|c|}{0000000} &
\multicolumn{5}{c|}{0000000011} &
-\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{rd} & MTF.D rd,rs1,rs2 \\
+\multicolumn{1}{c|}{rd} & MTF.D rd,rs1 \\
\cline{2-10}
@@ -1391,6 +1391,15 @@
&
\multicolumn{1}{|c|}{0000000} &
+\multicolumn{5}{c|}{0000000011} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{rd} & MTFLH.D rd,rs1,rs2 \\
+\cline{2-10}
+
+
+&
+\multicolumn{1}{|c|}{0000000} &
\multicolumn{2}{c|}{000} &
\multicolumn{4}{c|}{imm12} &
\multicolumn{1}{c|}{rs1} &
@@ -1809,6 +1818,15 @@
&
\multicolumn{1}{|c|}{0000000} &
\multicolumn{5}{c|}{0000000011} &
+\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{rs1} &
+\multicolumn{1}{c|}{rd} & MTFLH.D rd,rs1,rs2 \\
+\cline{2-10}
+
+
+&
+\multicolumn{1}{|c|}{0000000} &
+\multicolumn{5}{c|}{0000000011} &
\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
\multicolumn{1}{c|}{rd} & MTF.S rd,rs1 \\
@@ -1818,9 +1836,9 @@
&
\multicolumn{1}{|c|}{0000000} &
\multicolumn{5}{c|}{0000000011} &
-\multicolumn{1}{c|}{rs2} &
+\multicolumn{1}{c|}{00000} &
\multicolumn{1}{c|}{rs1} &
-\multicolumn{1}{c|}{rd} & MTF.D rd,rs1,rs2 \\
+\multicolumn{1}{c|}{rd} & MTF.D rd,rs1 \\
\cline{2-10}
diff --git a/opcodes b/opcodes
index 7c7dc04..3c9bf34 100644
--- a/opcodes
+++ b/opcodes
@@ -173,8 +173,9 @@ mffl.d rd 26..22=0 rs2 16..12=0x19 11..9=7 8..7=1 6..2=0x14 1..0=3
mffh.d rd 26..22=0 rs2 16..12=0x1A 11..9=7 8..7=1 6..2=0x14 1..0=3
mffsr rd 26..22=0 21..17=0 16..12=0x1B 11..9=7 8..7=0 6..2=0x14 1..0=3
mtf.s rd rs1 21..17=0 16..12=0x1C 11..9=7 8..7=0 6..2=0x14 1..0=3
-mtf.d rd rs1 rs2 16..12=0x1C 11..9=7 8..7=1 6..2=0x14 1..0=3
+mtf.d rd rs1 21..17=0 16..12=0x1C 11..9=7 8..7=1 6..2=0x14 1..0=3
mtfsr 31..27=0 rs1 21..17=0 16..12=0x1D 11..9=7 8..7=0 6..2=0x14 1..0=3
+mtflh.d rd rs1 rs2 16..12=0x1E 11..9=7 8..7=1 6..2=0x14 1..0=3
lf.w rd rs1 imm12 9..7=2 6..2=0x01 1..0=3
lf.d rd rs1 imm12 9..7=3 6..2=0x01 1..0=3