changeset 0d6addcde185 in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=0d6addcde185
description:
        X86: Set the delayed commit flag in x86 microops appropriately.

diffstat:

1 file changed, 1 insertion(+)
src/arch/x86/isa/macroop.isa |    1 +

diffs (49 lines):

diff -r 28d6ff8b94e2 -r 0d6addcde185 src/arch/x86/isa/macroop.isa
--- a/src/arch/x86/isa/macroop.isa      Sun Oct 12 23:28:49 2008 -0700
+++ b/src/arch/x86/isa/macroop.isa      Sun Oct 12 23:29:10 2008 -0700
@@ -220,11 +220,11 @@
             allocMicroops = ''
             micropc = 0
             for op in self.microops:
+                isLast = (micropc == numMicroops - 1)
                 allocMicroops += \
                     "microops[%d] = %s;\n" % \
-                    (micropc, op.getAllocator(True, False,
-                                              micropc == 0,
-                                              micropc == numMicroops - 1))
+                    (micropc, op.getAllocator(True, not isLast,
+                                              micropc == 0, isLast))
                 micropc += 1
             iop = InstObjParams(self.name, self.name, "Macroop",
                                 {"code" : "", "num_microops" : numMicroops,
diff -r 28d6ff8b94e2 -r 0d6addcde185 src/arch/x86/isa/microops/base.isa
--- a/src/arch/x86/isa/microops/base.isa        Sun Oct 12 23:28:49 2008 -0700
+++ b/src/arch/x86/isa/microops/base.isa        Sun Oct 12 23:29:10 2008 -0700
@@ -118,7 +118,7 @@
         def getGeneratorDef(self, micropc):
             return self.generatorTemplate % \
                 (self.className, micropc, \
-                 self.getAllocator(True, False, False, False))
+                 self.getAllocator(True, True, False, False))
 
         def getGenerator(self, micropc):
             return self.generatorNameTemplate % (self.className, micropc)
diff -r 28d6ff8b94e2 -r 0d6addcde185 src/arch/x86/isa/microops/seqop.isa
--- a/src/arch/x86/isa/microops/seqop.isa       Sun Oct 12 23:28:49 2008 -0700
+++ b/src/arch/x86/isa/microops/seqop.isa       Sun Oct 12 23:29:10 2008 -0700
@@ -195,6 +195,7 @@
         def getAllocator(self, *microFlags):
             (is_micro, is_delayed, is_first, is_last) = microFlags
             is_last = False
+            is_delayed = True
             microFlags = (is_micro, is_delayed, is_first, is_last)
             return super(Br, self).getAllocator(*microFlags)
 
@@ -214,6 +215,7 @@
         def getAllocator(self, *microFlags):
             (is_micro, is_delayed, is_first, is_last) = microFlags
             is_last = True
+            is_delayed = False
             microFlags = (is_micro, is_delayed, is_first, is_last)
             return super(Eret, self).getAllocator(*microFlags)
 
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to