summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/highlevelil.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/python/highlevelil.py b/python/highlevelil.py
index 9ad6cb2f..676d1508 100644
--- a/python/highlevelil.py
+++ b/python/highlevelil.py
@@ -1285,7 +1285,7 @@ class HighLevelILAssign(HighLevelILInstruction):
@property
def vars_written(self) -> VariablesList:
- if isinstance(self.dest, (HighLevelILSplit, HighLevelILVar)):
+ if isinstance(self.dest, (HighLevelILSplit, HighLevelILVar, HighLevelILVarSsa)):
return [*self.dest.vars, *self.src.vars_written]
elif isinstance(self.dest, HighLevelILStructField):
return [*self.dest.vars, *self.src.vars_written]
@@ -1314,7 +1314,7 @@ class HighLevelILAssignUnpack(HighLevelILInstruction):
def vars_written(self) -> VariablesList:
result = []
for i in self.dest:
- if isinstance(i, HighLevelILVar):
+ if isinstance(i, (HighLevelILVar, HighLevelILVarSsa)):
result.append(i.var)
else:
result.extend(i.vars_written)
@@ -1603,9 +1603,9 @@ class HighLevelILDerefFieldSsa(HighLevelILInstruction, SSA):
class HighLevelILAddressOf(HighLevelILUnaryBase):
@property
def vars_address_taken(self) -> VariablesList:
- if isinstance(self.src, HighLevelILVar):
+ if isinstance(self.src, (HighLevelILVar, HighLevelILVarSsa)):
return [self.src.var]
- elif isinstance(self.src, HighLevelILStructField) and isinstance(self.src.src, HighLevelILVar):
+ elif isinstance(self.src, HighLevelILStructField) and isinstance(self.src.src, (HighLevelILVar, HighLevelILVarSsa)):
return [self.src.src.var]
return [*self.src.vars_address_taken]