summaryrefslogtreecommitdiff
path: root/python/commonil.py
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/commonil.py
parentf8186c868eba120e8fa87eb8138ffdc52c1dfa16 (diff)
Fix __eq__ operator for IL classes
Diffstat (limited to 'python/commonil.py')
-rw-r--r--python/commonil.py52
1 files changed, 26 insertions, 26 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