summaryrefslogtreecommitdiff
path: root/function.cpp
diff options
context:
space:
mode:
authorXusheng <xusheng@vector35.com>2021-02-05 20:28:13 +0800
committerXusheng <xusheng@vector35.com>2021-04-22 10:52:39 +0800
commitc4b1dd712783e7474570705e6d95183a0c02a76e (patch)
tree0393986e0078cb20610c8ad091db061f8f41a08b /function.cpp
parenta355d5c9aa1978d10f378931bfd5f06be60bae98 (diff)
add persistent search result
Diffstat (limited to 'function.cpp')
-rw-r--r--function.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/function.cpp b/function.cpp
index b671f283..45333ebf 100644
--- a/function.cpp
+++ b/function.cpp
@@ -2169,6 +2169,37 @@ vector<VariableReferenceSource> Function::GetHighLevelILVariableReferencesInRang
}
+uint64_t Function::GetHighestAddress()
+{
+ return BNGetFunctionHighestAddress(m_object);
+}
+
+
+uint64_t Function::GetLowestAddress()
+{
+ return BNGetFunctionLowestAddress(m_object);
+}
+
+
+std::vector<BNAddressRange> Function::GetAddressRanges()
+{
+ size_t count;
+ BNAddressRange* ranges = BNGetFunctionAddressRanges(m_object, &count);
+
+ std::vector<BNAddressRange> result;
+ copy(&ranges[0], &ranges[count], back_inserter(result));
+ BNFreeAddressRanges(ranges);
+ return result;
+}
+
+
+bool Function::GetInstructionContainingAddress(Architecture* arch,
+ uint64_t addr, uint64_t* start)
+{
+ return BNGetInstructionContainingAddress(m_object, arch->GetObject(), addr, start);
+}
+
+
AdvancedFunctionAnalysisDataRequestor::AdvancedFunctionAnalysisDataRequestor(Function* func): m_func(func)
{
if (m_func)