X86: Make Br never report itself as the last microop.

This commit is contained in:
Gabe Black 2008-10-12 15:43:35 -07:00
parent 77c0e1d110
commit 4aa18aa800

View file

@ -169,8 +169,7 @@ output decoder {{
}};
let {{
class Br(X86Microop):
className = "MicroBranch"
class SeqOp(X86Microop):
def __init__(self, target, flags=None):
self.target = target
if flags:
@ -190,6 +189,15 @@ let {{
"cc" : self.cond}
return allocator
class Br(SeqOp):
className = "MicroBranch"
def getAllocator(self, *microFlags):
(is_micro, is_delayed, is_first, is_last) = microFlags
is_last = False
microFlags = (is_micro, is_delayed, is_first, is_last)
return super(Br, self).getAllocator(*microFlags)
iop = InstObjParams("br", "MicroBranchFlags", "SeqOpBase",
{"code": "nuIP = target",
"else_code": "nuIP = nuIP",