summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorJosh Ferrell <josh@vector35.com>2025-12-15 15:09:53 -0500
committerJosh Ferrell <josh@vector35.com>2025-12-15 23:55:53 -0500
commit9bb8792f6be698ed9f2bd6e1dc555bfd91709044 (patch)
tree22b6c523ea86cafe31356eeea0706d889d480121 /binaryninjaapi.h
parent95b849d05d05ae9e55eb839508536d5af314d331 (diff)
Add PossibleValueSet operation APIs and fixes to PVS python API
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 55aa96ca..8da2e775 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -8361,7 +8361,7 @@ namespace BinaryNinja {
BulkSymbolModification(BulkSymbolModification&&) = default;
BulkSymbolModification& operator=(BulkSymbolModification&&) = default;
- private:
+ private:
Ref<BinaryView> m_view;
};
@@ -12442,6 +12442,27 @@ namespace BinaryNinja {
static PossibleValueSet FromAPIObject(BNPossibleValueSet& value);
BNPossibleValueSet ToAPIObject() const;
static void FreeAPIObject(BNPossibleValueSet* value);
+
+ PossibleValueSet Add(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet Subtract(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet Multiply(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet SignedDivide(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet UnsignedDivide(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet SignedMod(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet UnsignedMod(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet And(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet Or(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet Xor(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet ShiftLeft(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet LogicalShiftRight(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet ArithShiftRight(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet RotateLeft(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet RotateRight(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet Union(const PossibleValueSet& other, size_t size) const;
+ PossibleValueSet Intersection(const PossibleValueSet& other, size_t size) const;
+
+ PossibleValueSet Negate(size_t size) const;
+ PossibleValueSet Not(size_t size) const;
};
class FlowGraph;