summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorPeter LaFosse <peter@vector35.com>2022-01-19 15:37:49 -0500
committerPeter LaFosse <peter@vector35.com>2022-01-19 15:37:49 -0500
commit11a011a8578566677297f9ac76ce152273f88eed (patch)
treefa55735cdeee7c7fcf92e27f6bf598efa785e8ae /python
parentf8186c868eba120e8fa87eb8138ffdc52c1dfa16 (diff)
Fix __eq__ operator for IL classes
Diffstat (limited to 'python')
-rw-r--r--python/commonil.py52
-rw-r--r--python/highlevelil.py248
-rw-r--r--python/lowlevelil.py280
-rw-r--r--python/mediumlevelil.py277
4 files changed, 429 insertions, 428 deletions
diff --git a/python/commonil.py b/python/commonil.py
index 93c00b33..35884bf1 100644
--- a/python/commonil.py
+++ b/python/commonil.py
@@ -25,7 +25,7 @@ from .interaction import show_graph_report
from .log import log_warn
# This file contains a list of top level abstract classes for implementing BNIL instructions
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class BaseILInstruction:
@classmethod
def prepend_parent(cls, graph:FlowGraph, node:FlowGraphNode, nodes={}):
@@ -54,125 +54,125 @@ class BaseILInstruction:
def show_hierarchy_graph(cls):
show_graph_report(f"{cls.__name__}", cls.add_subgraph(FlowGraph(), {}))
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Constant(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class BinaryOperation(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class UnaryOperation(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Comparison(BinaryOperation):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class SSA(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Phi(SSA):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class FloatingPoint(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class ControlFlow(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Terminal(ControlFlow):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Loop(ControlFlow):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Call(ControlFlow):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Syscall(Call):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Tailcall(Call):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Return(Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Signed(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Arithmetic(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Carry(Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class DoublePrecision(Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Memory(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Load(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class Store(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class RegisterStack(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class SetVar(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class StackOperation(BaseILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class SetReg:
pass
diff --git a/python/highlevelil.py b/python/highlevelil.py
index 647f8503..f98ecaf4 100644
--- a/python/highlevelil.py
+++ b/python/highlevelil.py
@@ -699,7 +699,7 @@ class HighLevelILInstruction(BaseILInstruction):
return []
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILUnaryBase(HighLevelILInstruction, UnaryOperation):
@property
@@ -711,7 +711,7 @@ class HighLevelILUnaryBase(HighLevelILInstruction, UnaryOperation):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILBinaryBase(HighLevelILInstruction, BinaryOperation):
@property
@@ -727,12 +727,12 @@ class HighLevelILBinaryBase(HighLevelILInstruction, BinaryOperation):
return [self.left, self.right]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILComparisonBase(HighLevelILBinaryBase, Comparison):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCarryBase(HighLevelILInstruction, Arithmetic):
@property
@@ -752,12 +752,12 @@ class HighLevelILCarryBase(HighLevelILInstruction, Arithmetic):
return [self.left, self.right, self.carry]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILNop(HighLevelILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILBlock(HighLevelILInstruction):
@property
@@ -769,7 +769,7 @@ class HighLevelILBlock(HighLevelILInstruction):
yield expr
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILIf(HighLevelILInstruction, ControlFlow):
@property
@@ -789,7 +789,7 @@ class HighLevelILIf(HighLevelILInstruction, ControlFlow):
return [self.condition]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILWhile(HighLevelILInstruction, Loop):
@property
@@ -805,7 +805,7 @@ class HighLevelILWhile(HighLevelILInstruction, Loop):
return [self.condition]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILWhileSsa(HighLevelILInstruction, Loop, SSA):
@property
@@ -825,7 +825,7 @@ class HighLevelILWhileSsa(HighLevelILInstruction, Loop, SSA):
return [self.condition_phi, self.condition]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDoWhile(HighLevelILInstruction, Loop):
@property
@@ -841,7 +841,7 @@ class HighLevelILDoWhile(HighLevelILInstruction, Loop):
return [self.condition]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDoWhileSsa(HighLevelILInstruction, Loop, SSA):
@property
@@ -861,7 +861,7 @@ class HighLevelILDoWhileSsa(HighLevelILInstruction, Loop, SSA):
return [self.condition_phi, self.condition]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFor(HighLevelILInstruction, Loop):
@property
@@ -885,7 +885,7 @@ class HighLevelILFor(HighLevelILInstruction, Loop):
return [self.init, self.condition, self.update]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILForSsa(HighLevelILInstruction, Loop, SSA):
@property
@@ -913,7 +913,7 @@ class HighLevelILForSsa(HighLevelILInstruction, Loop, SSA):
return [self.init, self.condition_phi, self.condition, self.update]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILSwitch(HighLevelILInstruction, ControlFlow):
@property
@@ -933,7 +933,7 @@ class HighLevelILSwitch(HighLevelILInstruction, ControlFlow):
return [self.condition]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCase(HighLevelILInstruction):
@property
@@ -949,16 +949,16 @@ class HighLevelILCase(HighLevelILInstruction):
return [self.values]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILBreak(HighLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILContinue(HighLevelILInstruction, ControlFlow):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILJump(HighLevelILInstruction, Terminal):
@property
@@ -970,7 +970,7 @@ class HighLevelILJump(HighLevelILInstruction, Terminal):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILRet(HighLevelILInstruction, ControlFlow):
@property
@@ -982,12 +982,12 @@ class HighLevelILRet(HighLevelILInstruction, ControlFlow):
return self.src
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILNoret(HighLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILGoto(HighLevelILInstruction, Terminal):
@property
@@ -999,7 +999,7 @@ class HighLevelILGoto(HighLevelILInstruction, Terminal):
return [self.target]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILLabel(HighLevelILInstruction):
@property
@@ -1011,7 +1011,7 @@ class HighLevelILLabel(HighLevelILInstruction):
return [self.target]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILVarDeclare(HighLevelILInstruction):
@property
@@ -1023,7 +1023,7 @@ class HighLevelILVarDeclare(HighLevelILInstruction):
return [self.var]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILVarInit(HighLevelILInstruction):
@property
@@ -1043,7 +1043,7 @@ class HighLevelILVarInit(HighLevelILInstruction):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILVarInitSsa(HighLevelILInstruction, SSA):
@property
@@ -1063,7 +1063,7 @@ class HighLevelILVarInitSsa(HighLevelILInstruction, SSA):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAssign(HighLevelILInstruction):
@property
@@ -1088,7 +1088,7 @@ class HighLevelILAssign(HighLevelILInstruction):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAssignUnpack(HighLevelILInstruction):
@property
@@ -1114,7 +1114,7 @@ class HighLevelILAssignUnpack(HighLevelILInstruction):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAssignMemSsa(HighLevelILInstruction, SSA):
@property
@@ -1138,7 +1138,7 @@ class HighLevelILAssignMemSsa(HighLevelILInstruction, SSA):
return [self.dest, self.dest_memory, self.src, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAssignUnpackMemSsa(HighLevelILInstruction, SSA, Memory):
@property
@@ -1162,7 +1162,7 @@ class HighLevelILAssignUnpackMemSsa(HighLevelILInstruction, SSA, Memory):
return [self.dest, self.dest_memory, self.src, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILVar(HighLevelILInstruction):
@property
@@ -1174,7 +1174,7 @@ class HighLevelILVar(HighLevelILInstruction):
return [self.var]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILVarSsa(HighLevelILInstruction, SSA):
@property
@@ -1186,7 +1186,7 @@ class HighLevelILVarSsa(HighLevelILInstruction, SSA):
return [self.var]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILVarPhi(HighLevelILInstruction, Phi):
@property
@@ -1206,7 +1206,7 @@ class HighLevelILVarPhi(HighLevelILInstruction, Phi):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILMemPhi(HighLevelILInstruction, Memory, Phi):
@property
@@ -1222,7 +1222,7 @@ class HighLevelILMemPhi(HighLevelILInstruction, Memory, Phi):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILStructField(HighLevelILInstruction):
@property
@@ -1241,7 +1241,7 @@ class HighLevelILStructField(HighLevelILInstruction):
def operands(self) -> List[HighLevelILOperandType]:
return [self.src, self.offset, self.member_index]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILArrayIndex(HighLevelILInstruction):
@property
@@ -1257,7 +1257,7 @@ class HighLevelILArrayIndex(HighLevelILInstruction):
return [self.src, self.index]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILArrayIndexSsa(HighLevelILInstruction, SSA):
@property
@@ -1277,7 +1277,7 @@ class HighLevelILArrayIndexSsa(HighLevelILInstruction, SSA):
return [self.src, self.src_memory, self.index]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILSplit(HighLevelILInstruction):
@property
@@ -1293,12 +1293,12 @@ class HighLevelILSplit(HighLevelILInstruction):
return [self.high, self.low]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDeref(HighLevelILUnaryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDerefField(HighLevelILInstruction):
@property
@@ -1318,7 +1318,7 @@ class HighLevelILDerefField(HighLevelILInstruction):
return [self.src, self.offset, self.member_index]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDerefSsa(HighLevelILInstruction, SSA):
@property
@@ -1334,7 +1334,7 @@ class HighLevelILDerefSsa(HighLevelILInstruction, SSA):
return [self.src, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDerefFieldSsa(HighLevelILInstruction, SSA):
@property
@@ -1358,7 +1358,7 @@ class HighLevelILDerefFieldSsa(HighLevelILInstruction, SSA):
return [self.src, self.src_memory, self.offset, self.member_index]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAddressOf(HighLevelILUnaryBase):
@property
@@ -1370,7 +1370,7 @@ class HighLevelILAddressOf(HighLevelILUnaryBase):
return [*self.src.vars_address_taken]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILConst(HighLevelILInstruction, Constant):
@property
@@ -1382,7 +1382,7 @@ class HighLevelILConst(HighLevelILInstruction, Constant):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILConstPtr(HighLevelILInstruction, Constant):
@property
@@ -1394,7 +1394,7 @@ class HighLevelILConstPtr(HighLevelILInstruction, Constant):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILExternPtr(HighLevelILInstruction, Constant):
@property
@@ -1410,7 +1410,7 @@ class HighLevelILExternPtr(HighLevelILInstruction, Constant):
return [self.constant, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFloatConst(HighLevelILInstruction, Constant):
@property
@@ -1422,7 +1422,7 @@ class HighLevelILFloatConst(HighLevelILInstruction, Constant):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILImport(HighLevelILInstruction, Constant):
@property
@@ -1434,157 +1434,157 @@ class HighLevelILImport(HighLevelILInstruction, Constant):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAdd(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAdc(HighLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILSub(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILSbb(HighLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAnd(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILOr(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILXor(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILLsl(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILLsr(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAsr(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILRol(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILRlc(HighLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILRor(HighLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILRrc(HighLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILMul(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILMuluDp(HighLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILMulsDp(Signed, HighLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDivu(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDivuDp(HighLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDivs(HighLevelILBinaryBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILDivsDp(HighLevelILBinaryBase, Signed, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILModu(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILModuDp(HighLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILMods(HighLevelILBinaryBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILModsDp(HighLevelILBinaryBase, Signed, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILNeg(HighLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILNot(HighLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILSx(HighLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILZx(HighLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILLowPart(HighLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCall(HighLevelILInstruction, Call):
@property
@@ -1600,7 +1600,7 @@ class HighLevelILCall(HighLevelILInstruction, Call):
return [self.dest, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCallSsa(HighLevelILInstruction, Call, SSA):
@property
@@ -1624,72 +1624,72 @@ class HighLevelILCallSsa(HighLevelILInstruction, Call, SSA):
return [self.dest, self.params, self.dest_memory, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpE(HighLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpNe(HighLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpSlt(HighLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpUlt(HighLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpSle(HighLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpUle(HighLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpSge(HighLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpUge(HighLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpSgt(HighLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCmpUgt(HighLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILTestBit(HighLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILBoolToInt(HighLevelILUnaryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILAddOverflow(HighLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILSyscall(HighLevelILInstruction, Syscall):
@property
@@ -1701,7 +1701,7 @@ class HighLevelILSyscall(HighLevelILInstruction, Syscall):
return self.params
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILSyscallSsa(HighLevelILInstruction, Syscall, SSA):
@property
@@ -1721,7 +1721,7 @@ class HighLevelILSyscallSsa(HighLevelILInstruction, Syscall, SSA):
return [self.params, self.dest_memory, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILTailcall(HighLevelILInstruction, Tailcall):
@property
@@ -1737,12 +1737,12 @@ class HighLevelILTailcall(HighLevelILInstruction, Tailcall):
return [self.dest, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILBp(HighLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILTrap(HighLevelILInstruction, Terminal):
@property
@@ -1754,7 +1754,7 @@ class HighLevelILTrap(HighLevelILInstruction, Terminal):
return [self.vector]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILIntrinsic(HighLevelILInstruction):
@property
@@ -1770,7 +1770,7 @@ class HighLevelILIntrinsic(HighLevelILInstruction):
return [self.intrinsic, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILIntrinsicSsa(HighLevelILInstruction, SSA):
@property
@@ -1794,127 +1794,127 @@ class HighLevelILIntrinsicSsa(HighLevelILInstruction, SSA):
return [self.intrinsic, self.params, self.dest_memory, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILUndef(HighLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILUnimpl(HighLevelILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILUnimplMem(HighLevelILUnaryBase, Memory):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFadd(HighLevelILBinaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFsub(HighLevelILBinaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFmul(HighLevelILBinaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFdiv(HighLevelILBinaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFsqrt(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFneg(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFabs(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFloatToInt(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILIntToFloat(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFloatConv(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILRoundToInt(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFloor(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILCeil(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFtrunc(HighLevelILUnaryBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpE(HighLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpNe(HighLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpLt(HighLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpLe(HighLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpGe(HighLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpGt(HighLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpO(HighLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class HighLevelILFcmpUo(HighLevelILComparisonBase, FloatingPoint):
pass
diff --git a/python/lowlevelil.py b/python/lowlevelil.py
index 5a326020..cda851d0 100644
--- a/python/lowlevelil.py
+++ b/python/lowlevelil.py
@@ -971,7 +971,7 @@ class LowLevelILInstruction(BaseILInstruction):
core.BNLowLevelILFreeOperandList(operand_list)
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILBinaryBase(LowLevelILInstruction, BinaryOperation):
@property
@@ -987,12 +987,12 @@ class LowLevelILBinaryBase(LowLevelILInstruction, BinaryOperation):
return [self.left, self.right]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILComparisonBase(LowLevelILBinaryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCarryBase(LowLevelILInstruction, Carry):
@property
@@ -1012,7 +1012,7 @@ class LowLevelILCarryBase(LowLevelILInstruction, Carry):
return [self.left, self.right, self.carry]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILUnaryBase(LowLevelILInstruction, UnaryOperation):
@property
@@ -1024,7 +1024,7 @@ class LowLevelILUnaryBase(LowLevelILInstruction, UnaryOperation):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILConstantBase(LowLevelILInstruction, Constant):
def __int__(self):
@@ -1060,67 +1060,67 @@ class LowLevelILConstantBase(LowLevelILInstruction, Constant):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILNop(LowLevelILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILPop(LowLevelILInstruction, StackOperation):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILNoret(LowLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSyscall(LowLevelILInstruction, Call):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILBp(LowLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILUndef(LowLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILUnimpl(LowLevelILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILNeg(LowLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILNot(LowLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSx(LowLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILZx(LowLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILLowPart(LowLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILJump(LowLevelILInstruction, Terminal):
@property
@@ -1132,7 +1132,7 @@ class LowLevelILJump(LowLevelILInstruction, Terminal):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCall(LowLevelILInstruction, Call):
@property
@@ -1144,7 +1144,7 @@ class LowLevelILCall(LowLevelILInstruction, Call):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILTailcall(LowLevelILInstruction, Call):
@property
@@ -1156,7 +1156,7 @@ class LowLevelILTailcall(LowLevelILInstruction, Call):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRet(LowLevelILInstruction, Return):
@property
@@ -1168,7 +1168,7 @@ class LowLevelILRet(LowLevelILInstruction, Return):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILUnimplMem(LowLevelILInstruction, Memory):
@property
@@ -1180,7 +1180,7 @@ class LowLevelILUnimplMem(LowLevelILInstruction, Memory):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFsqrt(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1192,7 +1192,7 @@ class LowLevelILFsqrt(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFneg(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1204,7 +1204,7 @@ class LowLevelILFneg(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFabs(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1216,7 +1216,7 @@ class LowLevelILFabs(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFloatToInt(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1228,7 +1228,7 @@ class LowLevelILFloatToInt(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILIntToFloat(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1240,7 +1240,7 @@ class LowLevelILIntToFloat(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFloatConv(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1252,7 +1252,7 @@ class LowLevelILFloatConv(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRoundToInt(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1264,7 +1264,7 @@ class LowLevelILRoundToInt(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFloor(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1276,7 +1276,7 @@ class LowLevelILFloor(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCeil(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1288,7 +1288,7 @@ class LowLevelILCeil(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFtrunc(LowLevelILInstruction, FloatingPoint, Arithmetic):
@property
@@ -1300,7 +1300,7 @@ class LowLevelILFtrunc(LowLevelILInstruction, FloatingPoint, Arithmetic):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILLoad(LowLevelILInstruction, Load):
@property
@@ -1312,7 +1312,7 @@ class LowLevelILLoad(LowLevelILInstruction, Load):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILPush(LowLevelILInstruction, StackOperation):
@property
@@ -1324,7 +1324,7 @@ class LowLevelILPush(LowLevelILInstruction, StackOperation):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILReg(LowLevelILInstruction):
@property
@@ -1336,7 +1336,7 @@ class LowLevelILReg(LowLevelILInstruction):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackPop(LowLevelILInstruction, RegisterStack):
@property
@@ -1348,7 +1348,7 @@ class LowLevelILRegStackPop(LowLevelILInstruction, RegisterStack):
return [self.stack]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackFreeReg(LowLevelILInstruction, RegisterStack):
@property
@@ -1360,17 +1360,17 @@ class LowLevelILRegStackFreeReg(LowLevelILInstruction, RegisterStack):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILConst(LowLevelILConstantBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILConstPtr(LowLevelILConstantBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFloatConst(LowLevelILConstantBase, FloatingPoint):
@property
@@ -1382,7 +1382,7 @@ class LowLevelILFloatConst(LowLevelILConstantBase, FloatingPoint):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFlag(LowLevelILInstruction):
@property
@@ -1394,7 +1394,7 @@ class LowLevelILFlag(LowLevelILInstruction):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILGoto(LowLevelILInstruction, Terminal):
@property
@@ -1406,7 +1406,7 @@ class LowLevelILGoto(LowLevelILInstruction, Terminal):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFlagGroup(LowLevelILInstruction):
@property
@@ -1418,7 +1418,7 @@ class LowLevelILFlagGroup(LowLevelILInstruction):
return [self.semantic_group]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILBoolToInt(LowLevelILInstruction):
@property
@@ -1430,7 +1430,7 @@ class LowLevelILBoolToInt(LowLevelILInstruction):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILTrap(LowLevelILInstruction, Terminal):
@property
@@ -1442,7 +1442,7 @@ class LowLevelILTrap(LowLevelILInstruction, Terminal):
return [self.vector]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegSplitDestSsa(LowLevelILInstruction, SSA):
@property
@@ -1454,7 +1454,7 @@ class LowLevelILRegSplitDestSsa(LowLevelILInstruction, SSA):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackDestSsa(LowLevelILInstruction, RegisterStack, SSA):
@property
@@ -1470,7 +1470,7 @@ class LowLevelILRegStackDestSsa(LowLevelILInstruction, RegisterStack, SSA):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegSsa(LowLevelILInstruction, SSA):
@property
@@ -1482,7 +1482,7 @@ class LowLevelILRegSsa(LowLevelILInstruction, SSA):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFlagSsa(LowLevelILInstruction, SSA):
@property
@@ -1494,7 +1494,7 @@ class LowLevelILFlagSsa(LowLevelILInstruction, SSA):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCallParam(LowLevelILInstruction, SSA):
@property
@@ -1506,7 +1506,7 @@ class LowLevelILCallParam(LowLevelILInstruction, SSA):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILMemPhi(LowLevelILInstruction, Memory, Phi):
@property
@@ -1522,7 +1522,7 @@ class LowLevelILMemPhi(LowLevelILInstruction, Memory, Phi):
return [self.dest_memory, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetReg(LowLevelILInstruction, SetReg):
@property
@@ -1538,7 +1538,7 @@ class LowLevelILSetReg(LowLevelILInstruction, SetReg):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackPush(LowLevelILInstruction, RegisterStack):
@property
@@ -1554,7 +1554,7 @@ class LowLevelILRegStackPush(LowLevelILInstruction, RegisterStack):
return [self.stack, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetFlag(LowLevelILInstruction):
@property
@@ -1570,7 +1570,7 @@ class LowLevelILSetFlag(LowLevelILInstruction):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILStore(LowLevelILInstruction, Store):
@property
@@ -1586,7 +1586,7 @@ class LowLevelILStore(LowLevelILInstruction, Store):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegSplit(LowLevelILInstruction):
@property
@@ -1602,7 +1602,7 @@ class LowLevelILRegSplit(LowLevelILInstruction):
return [self.hi, self.lo]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackRel(LowLevelILInstruction, RegisterStack):
@property
@@ -1618,7 +1618,7 @@ class LowLevelILRegStackRel(LowLevelILInstruction, RegisterStack):
return [self.stack, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackFreeRel(LowLevelILInstruction, RegisterStack):
@property
@@ -1634,7 +1634,7 @@ class LowLevelILRegStackFreeRel(LowLevelILInstruction, RegisterStack):
return [self.stack, self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILExternPtr(LowLevelILConstantBase):
@property
@@ -1650,7 +1650,7 @@ class LowLevelILExternPtr(LowLevelILConstantBase):
return [self.constant, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFlagBit(LowLevelILInstruction):
@property
@@ -1666,227 +1666,227 @@ class LowLevelILFlagBit(LowLevelILInstruction):
return [self.src, self.bit]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILAdd(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSub(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILAnd(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILOr(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILXor(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILLsl(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILLsr(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILAsr(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRol(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRor(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILMul(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILMuluDp(LowLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILMulsDp(LowLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILDivu(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILDivuDp(LowLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILDivs(LowLevelILBinaryBase, Arithmetic, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILDivsDp(LowLevelILBinaryBase, DoublePrecision, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILModu(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILModuDp(LowLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILMods(LowLevelILBinaryBase, Arithmetic, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILModsDp(LowLevelILBinaryBase, DoublePrecision, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpE(LowLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpNe(LowLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpSlt(LowLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpUlt(LowLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpSle(LowLevelILComparisonBase,Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpUle(LowLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpSge(LowLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpUge(LowLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpSgt(LowLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCmpUgt(LowLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILTestBit(LowLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFadd(LowLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFsub(LowLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFmul(LowLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFdiv(LowLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpE(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpNe(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpLt(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpLe(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpGe(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpGt(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpO(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFcmpUo(LowLevelILInstruction, Comparison, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILJumpTo(LowLevelILInstruction):
@property
@@ -1902,7 +1902,7 @@ class LowLevelILJumpTo(LowLevelILInstruction):
return [self.dest, self.targets]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFlagCond(LowLevelILInstruction):
@property
@@ -1918,12 +1918,12 @@ class LowLevelILFlagCond(LowLevelILInstruction):
return [self.condition, self.semantic_class]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILAddOverflow(LowLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetRegSsa(LowLevelILInstruction, SetReg, SSA):
@property
@@ -1939,7 +1939,7 @@ class LowLevelILSetRegSsa(LowLevelILInstruction, SetReg, SSA):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegSsaPartial(LowLevelILInstruction, SetReg, SSA):
@property
@@ -1955,7 +1955,7 @@ class LowLevelILRegSsaPartial(LowLevelILInstruction, SetReg, SSA):
return [self.full_reg, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegSplitSsa(LowLevelILInstruction, SetReg, SSA):
@property
@@ -1971,7 +1971,7 @@ class LowLevelILRegSplitSsa(LowLevelILInstruction, SetReg, SSA):
return [self.hi, self.lo]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackAbsSsa(LowLevelILInstruction, RegisterStack, SSA):
@property
@@ -1987,7 +1987,7 @@ class LowLevelILRegStackAbsSsa(LowLevelILInstruction, RegisterStack, SSA):
return [self.stack, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackFreeAbsSsa(LowLevelILInstruction, RegisterStack):
@property
@@ -2003,7 +2003,7 @@ class LowLevelILRegStackFreeAbsSsa(LowLevelILInstruction, RegisterStack):
return [self.stack, self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetFlagSsa(LowLevelILInstruction, SSA):
@property
@@ -2019,7 +2019,7 @@ class LowLevelILSetFlagSsa(LowLevelILInstruction, SSA):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFlagBitSsa(LowLevelILInstruction, SSA):
@property
@@ -2035,7 +2035,7 @@ class LowLevelILFlagBitSsa(LowLevelILInstruction, SSA):
return [self.src, self.bit]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCallOutputSsa(LowLevelILInstruction, SSA):
@property
@@ -2051,7 +2051,7 @@ class LowLevelILCallOutputSsa(LowLevelILInstruction, SSA):
return [self.dest_memory, self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCallStackSsa(LowLevelILInstruction, SSA):
@property
@@ -2067,7 +2067,7 @@ class LowLevelILCallStackSsa(LowLevelILInstruction, SSA):
return [self.src, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILLoadSsa(LowLevelILInstruction, Load, SSA):
@property
@@ -2083,7 +2083,7 @@ class LowLevelILLoadSsa(LowLevelILInstruction, Load, SSA):
return [self.src, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegPhi(LowLevelILInstruction, Phi):
@property
@@ -2099,7 +2099,7 @@ class LowLevelILRegPhi(LowLevelILInstruction, Phi):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackPhi(LowLevelILInstruction, RegisterStack, Phi):
@property
@@ -2115,7 +2115,7 @@ class LowLevelILRegStackPhi(LowLevelILInstruction, RegisterStack, Phi):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILFlagPhi(LowLevelILInstruction, Phi):
@property
@@ -2131,7 +2131,7 @@ class LowLevelILFlagPhi(LowLevelILInstruction, Phi):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetRegSplit(LowLevelILInstruction, SetReg):
@property
@@ -2151,7 +2151,7 @@ class LowLevelILSetRegSplit(LowLevelILInstruction, SetReg):
return [self.hi, self.lo, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetRegStackRel(LowLevelILInstruction, RegisterStack):
@property
@@ -2171,27 +2171,27 @@ class LowLevelILSetRegStackRel(LowLevelILInstruction, RegisterStack):
return [self.stack, self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSbb(LowLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILAdc(LowLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRlc(LowLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRrc(LowLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCallStackAdjust(LowLevelILInstruction, Call):
@property
@@ -2211,7 +2211,7 @@ class LowLevelILCallStackAdjust(LowLevelILInstruction, Call):
return [self.dest, self.stack_adjustment, self.reg_stack_adjustments]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILIf(LowLevelILInstruction, ControlFlow):
@property
@@ -2231,7 +2231,7 @@ class LowLevelILIf(LowLevelILInstruction, ControlFlow):
return [self.condition, self.true, self.false]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILIntrinsic(LowLevelILInstruction):
@property
@@ -2251,7 +2251,7 @@ class LowLevelILIntrinsic(LowLevelILInstruction):
return [self.output, self.intrinsic, self.param]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILIntrinsicSsa(LowLevelILInstruction, SSA):
@property
@@ -2271,7 +2271,7 @@ class LowLevelILIntrinsicSsa(LowLevelILInstruction, SSA):
return [self.output, self.intrinsic, self.param]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetRegSsaPartial(LowLevelILInstruction, SetReg, SSA):
@property
@@ -2291,7 +2291,7 @@ class LowLevelILSetRegSsaPartial(LowLevelILInstruction, SetReg, SSA):
return [self.full_reg, self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetRegSplitSsa(LowLevelILInstruction, SetReg, SSA):
@property
@@ -2311,7 +2311,7 @@ class LowLevelILSetRegSplitSsa(LowLevelILInstruction, SetReg, SSA):
return [self.hi, self.lo, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetRegStackAbsSsa(LowLevelILInstruction, RegisterStack, SSA):
@property
def stack(self) -> LowLevelILInstruction:
@@ -2330,7 +2330,7 @@ class LowLevelILSetRegStackAbsSsa(LowLevelILInstruction, RegisterStack, SSA):
return [self.stack, self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackRelSsa(LowLevelILInstruction, RegisterStack, SSA):
@property
@@ -2350,7 +2350,7 @@ class LowLevelILRegStackRelSsa(LowLevelILInstruction, RegisterStack, SSA):
return [self.stack, self.src, self.top]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILRegStackFreeRelSsa(LowLevelILInstruction, RegisterStack, SSA):
@property
@@ -2370,7 +2370,7 @@ class LowLevelILRegStackFreeRelSsa(LowLevelILInstruction, RegisterStack, SSA):
return [self.stack, self.dest, self.top]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSyscallSsa(LowLevelILInstruction, Call, SSA):
@property
@@ -2390,7 +2390,7 @@ class LowLevelILSyscallSsa(LowLevelILInstruction, Call, SSA):
return [self.output, self.stack, self.param]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSetRegStackRelSsa(LowLevelILInstruction, RegisterStack, SSA):
@property
@@ -2414,7 +2414,7 @@ class LowLevelILSetRegStackRelSsa(LowLevelILInstruction, RegisterStack, SSA):
return [self.stack, self.dest, self.top, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILCallSsa(LowLevelILInstruction, Call, SSA):
@property
@@ -2438,7 +2438,7 @@ class LowLevelILCallSsa(LowLevelILInstruction, Call, SSA):
return [self.output, self.dest, self.stack, self.param]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILTailcallSsa(LowLevelILInstruction, Call, SSA, Terminal):
@property
@@ -2462,7 +2462,7 @@ class LowLevelILTailcallSsa(LowLevelILInstruction, Call, SSA, Terminal):
return [self.output, self.dest, self.stack, self.param]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILStoreSsa(LowLevelILInstruction, Store, SSA):
@property
diff --git a/python/mediumlevelil.py b/python/mediumlevelil.py
index e0ebe708..1a710c85 100644
--- a/python/mediumlevelil.py
+++ b/python/mediumlevelil.py
@@ -74,7 +74,8 @@ class SSAVariable:
return self.var.name
@property
-
+ def type(self) -> 'types.Type':
+ return self.var.type
class MediumLevelILLabel:
@@ -767,12 +768,12 @@ class MediumLevelILInstruction(BaseILInstruction):
core.BNMediumLevelILFreeOperandList(operand_list)
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILConstBase(MediumLevelILInstruction, Constant):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallBase(MediumLevelILInstruction, Call):
@property
def output(self) -> List[Union[SSAVariable, variable.Variable]]:
@@ -799,7 +800,7 @@ class MediumLevelILCallBase(MediumLevelILInstruction, Call):
return result
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILUnaryBase(MediumLevelILInstruction, UnaryOperation):
@property
@@ -811,7 +812,7 @@ class MediumLevelILUnaryBase(MediumLevelILInstruction, UnaryOperation):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILBinaryBase(MediumLevelILInstruction, BinaryOperation):
@property
@@ -827,12 +828,12 @@ class MediumLevelILBinaryBase(MediumLevelILInstruction, BinaryOperation):
return [self.left, self.right]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILComparisonBase(MediumLevelILBinaryBase, Comparison):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCarryBase(MediumLevelILInstruction, Carry):
@property
@@ -852,32 +853,32 @@ class MediumLevelILCarryBase(MediumLevelILInstruction, Carry):
return [self.left, self.right, self.carry]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILNop(MediumLevelILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILNoret(MediumLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILBp(MediumLevelILInstruction, Terminal):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILUndef(MediumLevelILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILUnimpl(MediumLevelILInstruction):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILLoad(MediumLevelILInstruction, Load):
@property
@@ -889,7 +890,7 @@ class MediumLevelILLoad(MediumLevelILInstruction, Load):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVar(MediumLevelILInstruction):
@property
@@ -901,7 +902,7 @@ class MediumLevelILVar(MediumLevelILInstruction):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILAddressOf(MediumLevelILInstruction):
@property
@@ -917,7 +918,7 @@ class MediumLevelILAddressOf(MediumLevelILInstruction):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILConst(MediumLevelILConstBase):
@property
@@ -929,7 +930,7 @@ class MediumLevelILConst(MediumLevelILConstBase):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILConstPtr(MediumLevelILConstBase):
@property
@@ -941,7 +942,7 @@ class MediumLevelILConstPtr(MediumLevelILConstBase):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFloatConst(MediumLevelILConstBase, FloatingPoint):
@property
@@ -953,7 +954,7 @@ class MediumLevelILFloatConst(MediumLevelILConstBase, FloatingPoint):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILImport(MediumLevelILConstBase):
@property
@@ -965,32 +966,32 @@ class MediumLevelILImport(MediumLevelILConstBase):
return [self.constant]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILNeg(MediumLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILNot(MediumLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSx(MediumLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILZx(MediumLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILLowPart(MediumLevelILUnaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILJump(MediumLevelILInstruction, Terminal):
@property
@@ -1002,7 +1003,7 @@ class MediumLevelILJump(MediumLevelILInstruction, Terminal):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILRetHint(MediumLevelILInstruction, ControlFlow):
@property
@@ -1014,7 +1015,7 @@ class MediumLevelILRetHint(MediumLevelILInstruction, ControlFlow):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallOutput(MediumLevelILInstruction):
@property
@@ -1030,7 +1031,7 @@ class MediumLevelILCallOutput(MediumLevelILInstruction):
return self.dest
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallParam(MediumLevelILInstruction):
@property
@@ -1042,7 +1043,7 @@ class MediumLevelILCallParam(MediumLevelILInstruction):
return self.src
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILRet(MediumLevelILInstruction, Return):
@property
@@ -1054,7 +1055,7 @@ class MediumLevelILRet(MediumLevelILInstruction, Return):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILGoto(MediumLevelILInstruction, Terminal):
@property
@@ -1066,7 +1067,7 @@ class MediumLevelILGoto(MediumLevelILInstruction, Terminal):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILBoolToInt(MediumLevelILInstruction):
@property
@@ -1078,7 +1079,7 @@ class MediumLevelILBoolToInt(MediumLevelILInstruction):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFreeVarSlot(MediumLevelILInstruction, RegisterStack):
@property
@@ -1090,7 +1091,7 @@ class MediumLevelILFreeVarSlot(MediumLevelILInstruction, RegisterStack):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILTrap(MediumLevelILInstruction, Terminal):
@property
@@ -1102,7 +1103,7 @@ class MediumLevelILTrap(MediumLevelILInstruction, Terminal):
return [self.vector]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFreeVarSlotSsa(MediumLevelILInstruction, SSA, RegisterStack):
@property
@@ -1118,7 +1119,7 @@ class MediumLevelILFreeVarSlotSsa(MediumLevelILInstruction, SSA, RegisterStack):
return [self.dest, self.prev]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILUnimplMem(MediumLevelILInstruction, Memory):
@property
@@ -1130,57 +1131,57 @@ class MediumLevelILUnimplMem(MediumLevelILInstruction, Memory):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFsqrt(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFneg(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFabs(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFloatToInt(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILIntToFloat(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFloatConv(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILRoundToInt(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFloor(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCeil(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFtrunc(MediumLevelILUnaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarSsa(MediumLevelILInstruction, SSA):
@property
@@ -1192,7 +1193,7 @@ class MediumLevelILVarSsa(MediumLevelILInstruction, SSA):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarAliased(MediumLevelILInstruction, SSA):
@property
@@ -1204,7 +1205,7 @@ class MediumLevelILVarAliased(MediumLevelILInstruction, SSA):
return [self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVar(MediumLevelILInstruction, SetVar):
@property
@@ -1228,7 +1229,7 @@ class MediumLevelILSetVar(MediumLevelILInstruction, SetVar):
return self.src.vars_read
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILLoadStruct(MediumLevelILInstruction, Load):
@property
@@ -1244,7 +1245,7 @@ class MediumLevelILLoadStruct(MediumLevelILInstruction, Load):
return [self.src, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILStore(MediumLevelILInstruction, Store):
@property
@@ -1260,7 +1261,7 @@ class MediumLevelILStore(MediumLevelILInstruction, Store):
return [self.dest, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarField(MediumLevelILInstruction):
@property
@@ -1276,7 +1277,7 @@ class MediumLevelILVarField(MediumLevelILInstruction):
return [self.src, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarSplit(MediumLevelILInstruction):
@property
@@ -1292,7 +1293,7 @@ class MediumLevelILVarSplit(MediumLevelILInstruction):
return [self.high, self.low]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILAddressOfField(MediumLevelILInstruction):
@property
@@ -1308,7 +1309,7 @@ class MediumLevelILAddressOfField(MediumLevelILInstruction):
return [self.src, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILExternPtr(MediumLevelILConstBase):
@property
@@ -1324,172 +1325,172 @@ class MediumLevelILExternPtr(MediumLevelILConstBase):
return [self.constant, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILAdd(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSub(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILAnd(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILOr(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILXor(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILLsl(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILLsr(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILAsr(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILRol(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILRor(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILMul(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILMuluDp(MediumLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILMulsDp(MediumLevelILBinaryBase, DoublePrecision, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILDivu(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILDivuDp(MediumLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILDivs(MediumLevelILBinaryBase, Arithmetic, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILDivsDp(MediumLevelILBinaryBase, DoublePrecision, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILModu(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILModuDp(MediumLevelILBinaryBase, DoublePrecision):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILMods(MediumLevelILBinaryBase, Arithmetic, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILModsDp(MediumLevelILBinaryBase, DoublePrecision, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpE(MediumLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpNe(MediumLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpSlt(MediumLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpUlt(MediumLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpSle(MediumLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpUle(MediumLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpSge(MediumLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpUge(MediumLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpSgt(MediumLevelILComparisonBase, Signed):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCmpUgt(MediumLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILTestBit(MediumLevelILComparisonBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILAddOverflow(MediumLevelILBinaryBase, Arithmetic):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSyscall(MediumLevelILInstruction, Syscall):
@property
@@ -1505,7 +1506,7 @@ class MediumLevelILSyscall(MediumLevelILInstruction, Syscall):
return [self.output, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarSsaField(MediumLevelILInstruction, SSA):
@property
@@ -1521,7 +1522,7 @@ class MediumLevelILVarSsaField(MediumLevelILInstruction, SSA):
return [self.src, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarAliasedField(MediumLevelILInstruction, SSA):
@property
@@ -1537,7 +1538,7 @@ class MediumLevelILVarAliasedField(MediumLevelILInstruction, SSA):
return [self.src, self.offset]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarSplitSsa(MediumLevelILInstruction, SSA):
@property
@@ -1553,7 +1554,7 @@ class MediumLevelILVarSplitSsa(MediumLevelILInstruction, SSA):
return [self.high, self.low]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallOutputSsa(MediumLevelILInstruction, SSA):
@property
@@ -1573,7 +1574,7 @@ class MediumLevelILCallOutputSsa(MediumLevelILInstruction, SSA):
return [self.dest_memory, self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallParamSsa(MediumLevelILInstruction, SSA):
@property
@@ -1589,7 +1590,7 @@ class MediumLevelILCallParamSsa(MediumLevelILInstruction, SSA):
return [self.src_memory, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILLoadSsa(MediumLevelILInstruction, Load, SSA):
@property
@@ -1605,7 +1606,7 @@ class MediumLevelILLoadSsa(MediumLevelILInstruction, Load, SSA):
return [self.src, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILVarPhi(MediumLevelILInstruction, SetVar, Phi, SSA):
@property
@@ -1625,7 +1626,7 @@ class MediumLevelILVarPhi(MediumLevelILInstruction, SetVar, Phi, SSA):
return self.src
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILMemPhi(MediumLevelILInstruction, Memory, Phi):
@property
@@ -1641,7 +1642,7 @@ class MediumLevelILMemPhi(MediumLevelILInstruction, Memory, Phi):
return [self.dest_memory, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVarSsa(MediumLevelILInstruction, SetVar, SSA):
@property
@@ -1665,67 +1666,67 @@ class MediumLevelILSetVarSsa(MediumLevelILInstruction, SetVar, SSA):
return [self.dest]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpE(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpNe(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpLt(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpLe(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpGe(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpGt(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpO(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFcmpUo(MediumLevelILComparisonBase, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFadd(MediumLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFsub(MediumLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFmul(MediumLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILFdiv(MediumLevelILBinaryBase, Arithmetic, FloatingPoint):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILJumpTo(MediumLevelILInstruction, Terminal):
@property
@@ -1741,7 +1742,7 @@ class MediumLevelILJumpTo(MediumLevelILInstruction, Terminal):
return [self.dest, self.targets]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVarAliased(MediumLevelILInstruction, SetVar, SSA):
@property
@@ -1770,7 +1771,7 @@ class MediumLevelILSetVarAliased(MediumLevelILInstruction, SetVar, SSA):
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSyscallUntyped(MediumLevelILCallBase, Syscall):
@property
@@ -1794,7 +1795,7 @@ class MediumLevelILSyscallUntyped(MediumLevelILCallBase, Syscall):
return [self.output, self.params, self.stack]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILIntrinsic(MediumLevelILInstruction):
@property
@@ -1825,7 +1826,7 @@ class MediumLevelILIntrinsic(MediumLevelILInstruction):
return [self.output, self.intrinsic, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILIntrinsicSsa(MediumLevelILInstruction, SSA):
@property
@@ -1856,7 +1857,7 @@ class MediumLevelILIntrinsicSsa(MediumLevelILInstruction, SSA):
return [self.output, self.intrinsic, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVarSsaField(MediumLevelILInstruction, SetVar, SSA):
@property
@@ -1888,7 +1889,7 @@ class MediumLevelILSetVarSsaField(MediumLevelILInstruction, SetVar, SSA):
return [self.dest, self.prev, self.offset, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVarSplitSsa(MediumLevelILInstruction, SetVar, SSA):
@property
@@ -1916,7 +1917,7 @@ class MediumLevelILSetVarSplitSsa(MediumLevelILInstruction, SetVar, SSA):
return [self.high, self.low, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVarAliasedField(MediumLevelILInstruction, SetVar, SSA):
@property
@@ -1944,7 +1945,7 @@ class MediumLevelILSetVarAliasedField(MediumLevelILInstruction, SetVar, SSA):
return [self.dest, self.prev, self.offset, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSyscallSsa(MediumLevelILCallBase, Syscall, SSA):
@property
@@ -1972,7 +1973,7 @@ class MediumLevelILSyscallSsa(MediumLevelILCallBase, Syscall, SSA):
return [self.output, self.params, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSyscallUntypedSsa(MediumLevelILCallBase, Syscall, SSA):
@property
@@ -2008,7 +2009,7 @@ class MediumLevelILSyscallUntypedSsa(MediumLevelILCallBase, Syscall, SSA):
return [self.output, self.params, self.stack]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILLoadStruct_ssa(MediumLevelILInstruction, Load, SSA):
@property
@@ -2028,7 +2029,7 @@ class MediumLevelILLoadStruct_ssa(MediumLevelILInstruction, Load, SSA):
return [self.src, self.offset, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVarField(MediumLevelILInstruction, SetVar):
@property
@@ -2048,7 +2049,7 @@ class MediumLevelILSetVarField(MediumLevelILInstruction, SetVar):
return [self.dest, self.offset, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSetVarSplit(MediumLevelILInstruction, SetVar):
@property
@@ -2072,7 +2073,7 @@ class MediumLevelILSetVarSplit(MediumLevelILInstruction, SetVar):
return [self.high, self.low, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILStoreStruct(MediumLevelILInstruction, Store):
@property
@@ -2092,27 +2093,27 @@ class MediumLevelILStoreStruct(MediumLevelILInstruction, Store):
return [self.dest, self.offset, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILAdc(MediumLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILSbb(MediumLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILRlc(MediumLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILRrc(MediumLevelILCarryBase):
pass
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCall(MediumLevelILCallBase):
@property
@@ -2132,7 +2133,7 @@ class MediumLevelILCall(MediumLevelILCallBase):
return [self.output, self.dest, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILIf(MediumLevelILInstruction, Terminal):
@property
@@ -2152,7 +2153,7 @@ class MediumLevelILIf(MediumLevelILInstruction, Terminal):
return [self.condition, self.true, self.false]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILTailcallUntyped(MediumLevelILCallBase, Tailcall):
@property
@@ -2180,7 +2181,7 @@ class MediumLevelILTailcallUntyped(MediumLevelILCallBase, Tailcall):
return [self.output, self.dest, self.params, self.stack]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallSsa(MediumLevelILCallBase, SSA):
@property
@@ -2212,7 +2213,7 @@ class MediumLevelILCallSsa(MediumLevelILCallBase, SSA):
return [self.output, self.dest, self.params, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallUntypedSsa(MediumLevelILCallBase, SSA):
@property
@@ -2252,7 +2253,7 @@ class MediumLevelILCallUntypedSsa(MediumLevelILCallBase, SSA):
return [self.output, self.dest, self.params, self.stack]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILTailcall(MediumLevelILCallBase, Tailcall):
@property
@@ -2272,7 +2273,7 @@ class MediumLevelILTailcall(MediumLevelILCallBase, Tailcall):
return [self.output, self.dest, self.params]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILTailcallSsa(MediumLevelILCallBase, Tailcall, SSA):
@property
@@ -2304,7 +2305,7 @@ class MediumLevelILTailcallSsa(MediumLevelILCallBase, Tailcall, SSA):
return [self.output, self.dest, self.params, self.src_memory]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILTailcallUntypedSsa(MediumLevelILCallBase, Tailcall, SSA):
@property
@@ -2338,7 +2339,7 @@ class MediumLevelILTailcallUntypedSsa(MediumLevelILCallBase, Tailcall, SSA):
return [self.output, self.dest, self.params, self.stack]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILStoreSsa(MediumLevelILInstruction, Store, SSA):
@property
@@ -2362,7 +2363,7 @@ class MediumLevelILStoreSsa(MediumLevelILInstruction, Store, SSA):
return [self.dest, self.dest_memory, self.src_memory, self.src]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILCallUntyped(MediumLevelILCallBase):
@property
@@ -2390,7 +2391,7 @@ class MediumLevelILCallUntyped(MediumLevelILCallBase):
return [self.output, self.dest, self.params, self.stack]
-@dataclass(frozen=True, repr=False)
+@dataclass(frozen=True, repr=False, eq=False)
class MediumLevelILStoreStructSsa(MediumLevelILInstruction, Store, SSA):
@property