X86: Make Br never report itself as the last microop.
This commit is contained in:
parent
77c0e1d110
commit
4aa18aa800
1 changed files with 10 additions and 2 deletions
|
@ -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",
|
||||
|
|
Loading…
Reference in a new issue