summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/microasm.isa
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2007-06-08 16:09:43 +0000
committerGabe Black <gblack@eecs.umich.edu>2007-06-08 16:09:43 +0000
commit1f7ed5b7b4f0435ef61f5db6c701f22aacee369d (patch)
tree6719aa116b183bcf001fe2808c6287415193bdfd /src/arch/x86/isa/microasm.isa
parentce8f4c1f16962b087a13d9d928b09f44df04088d (diff)
downloadgem5-1f7ed5b7b4f0435ef61f5db6c701f22aacee369d.tar.xz
Big changes to use the new microcode assembler.
--HG-- extra : convert_revision : 7d1a43c5791a2e7e30533746da3dd7036a5b8799
Diffstat (limited to 'src/arch/x86/isa/microasm.isa')
-rw-r--r--src/arch/x86/isa/microasm.isa17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/arch/x86/isa/microasm.isa b/src/arch/x86/isa/microasm.isa
index 50a0b10e7..e8033d31c 100644
--- a/src/arch/x86/isa/microasm.isa
+++ b/src/arch/x86/isa/microasm.isa
@@ -55,6 +55,20 @@
//
// Authors: Gabe Black
+//##include "microops/microops.isa"
+//##include "macroop.isa"
+
+let {{
+ import sys
+ sys.path[0:0] = ["src/arch/x86/isa/"]
+ from insts import microcode
+ print microcode
+ from micro_asm import MicroAssembler, Rom_Macroop, Rom
+ mainRom = Rom('main ROM')
+ assembler = MicroAssembler(X86Macroop, microopClasses, mainRom, Rom_Macroop)
+ macroopDict = assembler.assemble(microcode)
+}};
+
////////////////////////////////////////////////////////////////////
//
// Microcode assembler specialization for x86
@@ -88,6 +102,5 @@ let {{
return text
def getAllocator(self, mnemonic, *microFlags):
- args = ''
- return 'new %s(machInst, %s%s%s)' % (self.className, mnemonic, self.microFlagsText(microFlags), args)
+ return 'new %s(machInst, %s)' % (self.className, mnemonic, self.microFlagsText(microFlags))
}};