summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorXusheng <xusheng@vector35.com>2022-08-17 18:01:47 +0800
committerXusheng <xusheng@vector35.com>2022-08-20 12:09:01 +0800
commit09f2b5f1254aeaa7dc6b54500a71dfe86f783d84 (patch)
treedbd05c920707073fee1ace4a441ff91f01a88631 /binaryninjaapi.h
parent03d08ab28700c95527f275d009501b0815e436ac (diff)
Improve Python/C++ APIs to get registers, register stacks, and flags for LLIL
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index ecb25684..f18cd5d9 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -7967,13 +7967,20 @@ namespace BinaryNinja {
void ClearIndirectBranches();
void SetIndirectBranches(const std::vector<ArchAndAddr>& branches);
+ // Get a list of registers used in the LLIL function
std::vector<uint32_t> GetRegisters();
std::vector<uint32_t> GetRegisterStacks();
std::vector<uint32_t> GetFlags();
+ // Get a list of SSA registers used in the LLIL SSA function, without versions.
+ std::vector<SSARegister> GetSSARegistersWithoutVersions();
+ std::vector<SSARegisterStack> GetSSARegisterStacksWithoutVersions();
+ std::vector<SSAFlag> GetSSAFlagsWithoutVersions();
+
+ // Get a list of SSA registers used in the LLIL SSA function, with versions
std::vector<SSARegister> GetSSARegisters();
- std::vector<SSARegisterStack> GetRegisterStackSSAVersions();
- std::vector<SSAFlag> GetFlagSSAVersions();
+ std::vector<SSARegisterStack> GetSSARegisterStacks();
+ std::vector<SSAFlag> GetSSAFlags();
ExprId AddExpr(BNLowLevelILOperation operation, size_t size, uint32_t flags, ExprId a = 0, ExprId b = 0,
ExprId c = 0, ExprId d = 0);