summaryrefslogtreecommitdiff
path: root/highlevelil.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'highlevelil.cpp')
-rw-r--r--highlevelil.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/highlevelil.cpp b/highlevelil.cpp
index 264af7c3..6c304d0e 100644
--- a/highlevelil.cpp
+++ b/highlevelil.cpp
@@ -384,6 +384,20 @@ size_t HighLevelILFunction::GetMediumLevelILExprIndex(size_t expr) const
}
+set<size_t> HighLevelILFunction::GetMediumLevelILExprIndexes(size_t expr) const
+{
+ size_t count;
+ size_t* exprs = BNGetMediumLevelILExprIndexesFromHighLevelIL(m_object, expr, &count);
+
+ set<size_t> result;
+ for (size_t i = 0; i < count; i++)
+ result.insert(exprs[i]);
+
+ BNFreeILInstructionList(exprs);
+ return result;
+}
+
+
void HighLevelILFunction::UpdateInstructionOperand(size_t i, size_t operandIndex, ExprId value)
{
BNUpdateHighLevelILOperand(m_object, i, operandIndex, value);