summaryrefslogtreecommitdiff
path: root/binaryninjacore.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty.wagner@gmail.com>2025-05-30 14:21:14 -0600
committerRusty Wagner <rusty.wagner@gmail.com>2025-06-03 13:42:54 -0600
commit37d52c95d94b8a586c5d59fb500a7b35f3e272dc (patch)
treee535f845fa0fd2947e245da187bde01604356c8d /binaryninjacore.h
parent8ef932b35e76f670611b79a2fcba88c6f8e15169 (diff)
Add UI action and API to flip conditions during HLIL restructuring
Diffstat (limited to 'binaryninjacore.h')
-rw-r--r--binaryninjacore.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h
index 505e10e2..9daf70e4 100644
--- a/binaryninjacore.h
+++ b/binaryninjacore.h
@@ -37,7 +37,7 @@
// Current ABI version for linking to the core. This is incremented any time
// there are changes to the API that affect linking, including new functions,
// new types, or modifications to existing functions or types.
-#define BN_CURRENT_CORE_ABI_VERSION 108
+#define BN_CURRENT_CORE_ABI_VERSION 109
// Minimum ABI version that is supported for loading of plugins. Plugins that
// are linked to an ABI version less than this will not be able to load and
@@ -1024,6 +1024,9 @@ extern "C"
// HLIL expression can be folded into other expressions or has been folded
HLILFoldableExpr = 0x100,
+
+ // HLIL condition can be displayed as the inverse
+ HLILInvertableCondition = 0x200,
} BNILInstructionAttribute;
typedef enum BNIntrinsicClass
@@ -4993,6 +4996,8 @@ extern "C"
BNFunction* func, const BNVariable* var, BNDeadStoreElimination mode);
BINARYNINJACOREAPI BNExprFolding BNGetExprFolding(BNFunction* func, uint64_t addr);
BINARYNINJACOREAPI void BNSetExprFolding(BNFunction* func, uint64_t addr, BNExprFolding mode);
+ BINARYNINJACOREAPI bool BNIsConditionInverted(BNFunction* func, uint64_t addr);
+ BINARYNINJACOREAPI void BNSetConditionInverted(BNFunction* func, uint64_t addr, bool invert);
BINARYNINJACOREAPI BNMergedVariable* BNGetMergedVariables(BNFunction* func, size_t* count);
BINARYNINJACOREAPI void BNFreeMergedVariableList(BNMergedVariable* vars, size_t count);
BINARYNINJACOREAPI void BNMergeVariables(BNFunction* func, const BNVariable* target, const BNVariable* sources,