Gets all the instructions that use the given SSA variable.
(self, ssa_var: Union[SSAVariable, MediumLevelILVarSsa])
| 5343 | return self[result] |
| 5344 | |
| 5345 | def get_ssa_var_uses(self, ssa_var: Union[SSAVariable, MediumLevelILVarSsa]) -> List[MediumLevelILInstruction]: |
| 5346 | """ |
| 5347 | Gets all the instructions that use the given SSA variable. |
| 5348 | """ |
| 5349 | if isinstance(ssa_var, MediumLevelILVarSsa): |
| 5350 | ssa_var = ssa_var.var |
| 5351 | if not isinstance(ssa_var, SSAVariable): |
| 5352 | raise ValueError("Expected SSAVariable") |
| 5353 | count = ctypes.c_ulonglong() |
| 5354 | var_data = ssa_var.var.to_BNVariable() |
| 5355 | instrs = core.BNGetMediumLevelILSSAVarUses(self.handle, var_data, ssa_var.version, count) |
| 5356 | assert instrs is not None, "core.BNGetMediumLevelILSSAVarUses returned None" |
| 5357 | result = [] |
| 5358 | for i in range(0, count.value): |
| 5359 | result.append(self[instrs[i]]) |
| 5360 | core.BNFreeILInstructionList(instrs) |
| 5361 | return result |
| 5362 | |
| 5363 | def get_ssa_memory_uses(self, version: int) -> List[MediumLevelILInstruction]: |
| 5364 | count = ctypes.c_ulonglong() |
no test coverage detected