summaryrefslogtreecommitdiff
path: root/binaryninjacore.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2020-04-14 21:25:41 -0400
committerRusty Wagner <rusty@vector35.com>2020-04-17 14:20:35 -0400
commit072c5cd6eee7af9671e6c4fe583e77bc3bcbdd1d (patch)
tree52e8b1018c7588dc540a687c8219ad2803de13af /binaryninjacore.h
parent1385e2dbd9be1db21114d95b7c4767773e2b0692 (diff)
Add IL support to linear view
Diffstat (limited to 'binaryninjacore.h')
-rw-r--r--binaryninjacore.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h
index 49c9e3d5..941540f0 100644
--- a/binaryninjacore.h
+++ b/binaryninjacore.h
@@ -2691,11 +2691,13 @@ __attribute__ ((format (printf, 1, 2)))
BINARYNINJACOREAPI BNBasicBlock** BNGetBasicBlocksStartingAtAddress(BNBinaryView* view, uint64_t addr, size_t* count);
BINARYNINJACOREAPI BNLowLevelILFunction* BNGetFunctionLowLevelIL(BNFunction* func);
+ BINARYNINJACOREAPI BNLowLevelILFunction* BNGetFunctionLowLevelILIfAvailable(BNFunction* func);
BINARYNINJACOREAPI size_t BNGetLowLevelILForInstruction(BNFunction* func, BNArchitecture* arch, uint64_t addr);
BINARYNINJACOREAPI size_t* BNGetLowLevelILExitsForInstruction(BNFunction* func, BNArchitecture* arch, uint64_t addr,
size_t* count);
BINARYNINJACOREAPI void BNFreeILInstructionList(size_t* list);
BINARYNINJACOREAPI BNMediumLevelILFunction* BNGetFunctionMediumLevelIL(BNFunction* func);
+ BINARYNINJACOREAPI BNMediumLevelILFunction* BNGetFunctionMediumLevelILIfAvailable(BNFunction* func);
BINARYNINJACOREAPI BNRegisterValue BNGetRegisterValueAtInstruction(BNFunction* func, BNArchitecture* arch,
uint64_t addr, uint32_t reg);
BINARYNINJACOREAPI BNRegisterValue BNGetRegisterValueAfterInstruction(BNFunction* func, BNArchitecture* arch,
@@ -2721,6 +2723,7 @@ __attribute__ ((format (printf, 1, 2)))
BINARYNINJACOREAPI void BNFreeConstantReferenceList(BNConstantReference* refs);
BINARYNINJACOREAPI BNLowLevelILFunction* BNGetFunctionLiftedIL(BNFunction* func);
+ BINARYNINJACOREAPI BNLowLevelILFunction* BNGetFunctionLiftedILIfAvailable(BNFunction* func);
BINARYNINJACOREAPI size_t BNGetLiftedILForInstruction(BNFunction* func, BNArchitecture* arch, uint64_t addr);
BINARYNINJACOREAPI size_t* BNGetLiftedILFlagUsesForDefinition(BNFunction* func, size_t i, uint32_t flag, size_t* count);
BINARYNINJACOREAPI size_t* BNGetLiftedILFlagDefinitionsForUse(BNFunction* func, size_t i, uint32_t flag, size_t* count);
@@ -2973,6 +2976,20 @@ __attribute__ ((format (printf, 1, 2)))
BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewDisassembly(BNBinaryView* view,
BNDisassemblySettings* settings);
+ BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewLiftedIL(BNBinaryView* view,
+ BNDisassemblySettings* settings);
+ BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewLowLevelIL(BNBinaryView* view,
+ BNDisassemblySettings* settings);
+ BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewLowLevelILSSAForm(BNBinaryView* view,
+ BNDisassemblySettings* settings);
+ BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewMediumLevelIL(BNBinaryView* view,
+ BNDisassemblySettings* settings);
+ BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewMediumLevelILSSAForm(BNBinaryView* view,
+ BNDisassemblySettings* settings);
+ BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewMappedMediumLevelIL(BNBinaryView* view,
+ BNDisassemblySettings* settings);
+ BINARYNINJACOREAPI BNLinearViewObject* BNCreateLinearViewMappedMediumLevelILSSAForm(BNBinaryView* view,
+ BNDisassemblySettings* settings);
BINARYNINJACOREAPI BNLinearViewObject* BNNewLinearViewObjectReference(BNLinearViewObject* obj);
BINARYNINJACOREAPI void BNFreeLinearViewObject(BNLinearViewObject* obj);
BINARYNINJACOREAPI BNLinearViewObject* BNGetFirstLinearViewObjectChild(BNLinearViewObject* obj);