summaryrefslogtreecommitdiff
path: root/function.cpp
diff options
context:
space:
mode:
authorBrian Potchik <brian@vector35.com>2021-02-12 13:58:24 -0500
committerBrian Potchik <brian@vector35.com>2021-02-12 13:58:24 -0500
commit902ef4d9ca892e3de23355c3c0fc7b49bf1d9726 (patch)
treec4f028a37c10ff26b235a13959d133284667e4de /function.cpp
parent413eb2a9332c425a57a8ed6e22c71011f22a73df (diff)
Add unresolved control-flow tracking and associated tag support.
Diffstat (limited to 'function.cpp')
-rw-r--r--function.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/function.cpp b/function.cpp
index 80f55fe6..50799191 100644
--- a/function.cpp
+++ b/function.cpp
@@ -1192,6 +1192,23 @@ vector<IndirectBranchInfo> Function::GetIndirectBranchesAt(Architecture* arch, u
}
+vector<uint64_t> Function::GetUnresolvedIndirectBranches()
+{
+ size_t count;
+ uint64_t* addrs = BNGetUnresolvedIndirectBranches(m_object, &count);
+ vector<uint64_t> result;
+ result.insert(result.end(), addrs, &addrs[count]);
+ BNFreeAddressList(addrs);
+ return result;
+}
+
+
+bool Function::HasUnresolvedIndirectBranches()
+{
+ return BNHasUnresolvedIndirectBranches(m_object);
+}
+
+
void Function::SetAutoCallTypeAdjustment(Architecture* arch, uint64_t addr, const Confidence<Ref<Type>>& adjust)
{
BNTypeWithConfidence apiObject;