summaryrefslogtreecommitdiff
path: root/lowlevelil.cpp
diff options
context:
space:
mode:
authorBrian Potchik <brian@vector35.com>2020-11-21 17:55:26 -0500
committerBrian Potchik <brian@vector35.com>2020-11-21 17:55:26 -0500
commitdf48a9ee65c4fa3b60f3bfebb36aa03d8dd40f2d (patch)
treec4b5686db405729323bc06659bcc74135673fe9a /lowlevelil.cpp
parent20b03bd36ec247b8c28dc1643f57b21ec94c8294 (diff)
Add improved instruction mapping APIs.
Diffstat (limited to 'lowlevelil.cpp')
-rw-r--r--lowlevelil.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/lowlevelil.cpp b/lowlevelil.cpp
index 13b465f9..ed9c7884 100644
--- a/lowlevelil.cpp
+++ b/lowlevelil.cpp
@@ -798,6 +798,20 @@ size_t LowLevelILFunction::GetMediumLevelILExprIndex(size_t expr) const
}
+set<size_t> LowLevelILFunction::GetMediumLevelILExprIndexes(size_t expr) const
+{
+ size_t count;
+ size_t* exprs = BNGetMediumLevelILExprIndexes(m_object, expr, &count);
+
+ set<size_t> result;
+ for (size_t i = 0; i < count; i++)
+ result.insert(exprs[i]);
+
+ BNFreeILInstructionList(exprs);
+ return result;
+}
+
+
size_t LowLevelILFunction::GetMappedMediumLevelILInstructionIndex(size_t instr) const
{
return BNGetMappedMediumLevelILInstructionIndex(m_object, instr);