X86: Set the delayed commit flag in x86 microops appropriately.
This commit is contained in:
@@ -220,11 +220,11 @@ let {{
|
||||
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,
|
||||
|
||||
@@ -118,7 +118,7 @@ let {{
|
||||
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)
|
||||
|
||||
@@ -195,6 +195,7 @@ let {{
|
||||
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 @@ let {{
|
||||
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)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user