summaryrefslogtreecommitdiff
path: root/arch/mips/isa/bitfields.isa
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2006-02-08 01:04:32 -0500
committerGabe Black <gblack@eecs.umich.edu>2006-02-08 01:04:32 -0500
commit29bc6c086af827be7acaba7b4576a33239b7e930 (patch)
tree8e7b51809e9a7ad5280166dc005a8911e2545bbc /arch/mips/isa/bitfields.isa
parent82f2ae56ed27b25f163db5ac4f2ccf0612640b07 (diff)
parent7219693f4c425b5da1557823f92da13edda6b71a (diff)
downloadgem5-29bc6c086af827be7acaba7b4576a33239b7e930.tar.xz
Merge gblack@m5.eecs.umich.edu:/bk/multiarch
into ewok.(none):/home/gblack/m5/multiarch --HG-- extra : convert_revision : c7caf571575fb0e7136770864371300d3f11787e
Diffstat (limited to 'arch/mips/isa/bitfields.isa')
-rw-r--r--arch/mips/isa/bitfields.isa51
1 files changed, 51 insertions, 0 deletions
diff --git a/arch/mips/isa/bitfields.isa b/arch/mips/isa/bitfields.isa
new file mode 100644
index 000000000..94a8a6467
--- /dev/null
+++ b/arch/mips/isa/bitfields.isa
@@ -0,0 +1,51 @@
+////////////////////////////////////////////////////////////////////
+//
+// Bitfield definitions.
+//
+
+def bitfield OPCODE_HI <31:29>;
+def bitfield OPCODE_LO <28:26>;
+
+def bitfield FUNCTION_HI < 5: 3>;
+def bitfield FUNCTION_LO < 2: 0>;
+
+// Integer operate format
+def bitfield RT <20:16>;
+def bitfield RT_HI <20:19>;
+def bitfield RT_LO <18:16>;
+
+def bitfield RS <25:21>;
+def bitfield RS_HI <25:24>;
+def bitfield RS_LO <23:21>;
+
+def bitfield RD <15:11>;
+
+def bitfield INTIMM <15: 0>; // integer immediate (literal)
+
+// Floating-point operate format
+def bitfield FMT <25:21>;
+def bitfield FT <20:16>;
+def bitfield FS <15:11>;
+def bitfield FD <10:6>;
+
+def bitfield MOVCI <16:16>;
+def bitfield MOVCF <16:16>;
+def bitfield SRL <21:21>;
+def bitfield SRLV < 6: 6>;
+def bitfield SA <10: 6>;
+
+// Interrupts
+def bitfield SC < 5: 5>;
+
+// Branch format
+def bitfield OFFSET <15: 0>; // displacement
+
+// Memory-format jumps
+def bitfield JMPTARG <25: 0>;
+def bitfield JMPHINT <10: 6>;
+
+def bitfield SYSCALLCODE <25: 6>;
+def bitfield TRAPCODE <15:13>;
+
+// M5 instructions
+def bitfield M5FUNC <7:0>;