diff options
| author | KyleMiles <krm504@nyu.edu> | 2023-06-01 17:36:20 -0400 |
|---|---|---|
| committer | Kyle Martin <krm504@nyu.edu> | 2023-06-02 10:03:01 -0400 |
| commit | 7b816fc2e285aa9cd77fba33bc55afa16947095f (patch) | |
| tree | a4783d7e1603c390d398a323342da97be6af47dd /python/mediumlevelil.py | |
| parent | b46e2e19c3a840e8e110f0b768efc73add56c33f (diff) | |
Add Var, SSAVar, and AliasedVar to commonil.py, and update the relavent MLIL/HLIL instrutctions
Diffstat (limited to 'python/mediumlevelil.py')
| -rw-r--r-- | python/mediumlevelil.py | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/python/mediumlevelil.py b/python/mediumlevelil.py index f3c8c538..66bf079e 100644 --- a/python/mediumlevelil.py +++ b/python/mediumlevelil.py @@ -18,7 +18,6 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. -from abc import abstractmethod import ctypes import struct from typing import (Optional, List, Union, Mapping, @@ -37,13 +36,12 @@ from . import flowgraph from . import variable from . import architecture from . import binaryview -from . import databuffer from . import types as _types from .interaction import show_graph_report from .commonil import ( BaseILInstruction, Constant, BinaryOperation, UnaryOperation, Comparison, SSA, Phi, FloatingPoint, ControlFlow, Terminal, Call, Localcall, Syscall, Tailcall, Return, Signed, Arithmetic, Carry, DoublePrecision, Memory, Load, - Store, RegisterStack, SetVar, Intrinsic + Store, RegisterStack, SetVar, Intrinsic, VariableInstruction, SSAVariableInstruction, AliasedVariableInstruction ) TokenList = List['function.InstructionTextToken'] @@ -1103,7 +1101,7 @@ class MediumLevelILLoad(MediumLevelILInstruction, Load): @dataclass(frozen=True, repr=False, eq=False) -class MediumLevelILVar(MediumLevelILInstruction): +class MediumLevelILVar(MediumLevelILInstruction, VariableInstruction): @property def src(self) -> variable.Variable: return self._get_var(0) @@ -1392,7 +1390,7 @@ class MediumLevelILFtrunc(MediumLevelILUnaryBase, Arithmetic, FloatingPoint): @dataclass(frozen=True, repr=False, eq=False) -class MediumLevelILVarSsa(MediumLevelILInstruction, SSA): +class MediumLevelILVarSsa(MediumLevelILInstruction, SSAVariableInstruction): @property def src(self) -> SSAVariable: return self._get_var_ssa(0, 1) @@ -1403,7 +1401,7 @@ class MediumLevelILVarSsa(MediumLevelILInstruction, SSA): @dataclass(frozen=True, repr=False, eq=False) -class MediumLevelILVarAliased(MediumLevelILInstruction, SSA): +class MediumLevelILVarAliased(MediumLevelILInstruction, SSA, AliasedVariableInstruction): @property def src(self) -> SSAVariable: return self._get_var_ssa(0, 1) |
