summaryrefslogtreecommitdiff
path: root/lowlevelil.cpp
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2017-02-25 00:25:36 -0500
committerRusty Wagner <rusty@vector35.com>2017-02-25 00:25:36 -0500
commit57a3ea491d2d819ab5415d8d7bdf7e9e505808fc (patch)
tree5c516eed341b1d0022cfb8c35f1e783874fde5a2 /lowlevelil.cpp
parentba4bb6dbee0476d5c30d942ae978621af790d518 (diff)
Add APIs to access SSA-based data flow
Diffstat (limited to 'lowlevelil.cpp')
-rw-r--r--lowlevelil.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/lowlevelil.cpp b/lowlevelil.cpp
index d09db62c..999e35ee 100644
--- a/lowlevelil.cpp
+++ b/lowlevelil.cpp
@@ -739,3 +739,24 @@ set<size_t> LowLevelILFunction::GetSSAMemoryUses(size_t idx) const
BNFreeLowLevelILInstructionList(instrs);
return result;
}
+
+
+RegisterValue LowLevelILFunction::GetSSARegisterValue(uint32_t reg, size_t idx)
+{
+ BNRegisterValue value = BNGetLowLevelILSSARegisterValue(m_object, reg, idx);
+ return RegisterValue::FromAPIObject(value);
+}
+
+
+RegisterValue LowLevelILFunction::GetSSAFlagValue(uint32_t flag, size_t idx)
+{
+ BNRegisterValue value = BNGetLowLevelILSSAFlagValue(m_object, flag, idx);
+ return RegisterValue::FromAPIObject(value);
+}
+
+
+RegisterValue LowLevelILFunction::GetSSAStackContents(size_t memoryIndex, int64_t offset, size_t size)
+{
+ BNRegisterValue value = BNGetLowLevelILSSAStackContents(m_object, memoryIndex, offset, size);
+ return RegisterValue::FromAPIObject(value);
+}