summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorRyan Snyder <ryan@vector35.com>2025-07-03 01:48:11 -0400
committerRyan Snyder <ryan@vector35.com>2025-07-03 04:30:58 -0400
commite96a7a078a9909fc1212861c9669e6af0b034e46 (patch)
tree412f072f118f7f784e8500f8bb46dfad0354bc82 /binaryninjaapi.h
parent3bfeb0e19d97c71022bb5c50c2a21e129f675e1b (diff)
api: indirect branch inlining support
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 0ca84526..2457bf6e 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -8137,6 +8137,7 @@ namespace BinaryNinja {
std::optional<std::map<uint64_t, std::set<ArchAndAddr>>> m_directCodeReferences;
std::optional<std::set<ArchAndAddr>> m_directNoReturnCalls;
std::optional<std::set<ArchAndAddr>> m_haltedDisassemblyAddresses;
+ std::optional<std::map<ArchAndAddr, ArchAndAddr>> m_inlinedUnresolvedIndirectBranches;
public:
BNBasicBlockAnalysisContext* m_context;
@@ -8160,6 +8161,7 @@ namespace BinaryNinja {
std::map<uint64_t, std::set<ArchAndAddr>>& GetDirectCodeReferences();
std::set<ArchAndAddr>& GetDirectNoReturnCalls();
std::set<ArchAndAddr>& GetHaltedDisassemblyAddresses();
+ std::map<ArchAndAddr, ArchAndAddr>& GetInlinedUnresolvedIndirectBranches();
void AddTempOutgoingReference(Function* targetFunc);
@@ -11495,7 +11497,7 @@ namespace BinaryNinja {
Ref<Function> GetCalleeForAnalysis(Ref<Platform> platform, uint64_t addr, bool exact);
- std::vector<uint64_t> GetUnresolvedIndirectBranches();
+ std::vector<ArchAndAddr> GetUnresolvedIndirectBranches();
bool HasUnresolvedIndirectBranches();
void SetAutoCallTypeAdjustment(Architecture* arch, uint64_t addr, const Confidence<Ref<Type>>& adjust);