summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2021-01-14 22:07:19 -0500
committerGlenn Smith <glenn@vector35.com>2021-01-21 00:06:22 -0500
commit0245b2c84223be520fdfce4e5afdabbdfbe95ee7 (patch)
treef421696cdbc72ab4a62c2074acc1fc87312203e9 /binaryninjaapi.h
parentf8feaa587bcba564ef96955a57121764a0fb0573 (diff)
Let calling conventions opt out of heuristics
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 337a226f..d0a3bbff 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -4639,6 +4639,7 @@ __attribute__ ((format (printf, 1, 2)))
static bool AreArgumentRegistersSharedIndexCallback(void* ctxt);
static bool IsStackReservedForArgumentRegistersCallback(void* ctxt);
static bool IsStackAdjustedOnReturnCallback(void* ctxt);
+ static bool IsEligibleForHeuristicsCallback(void* ctxt);
static uint32_t GetIntegerReturnValueRegisterCallback(void* ctxt);
static uint32_t GetHighIntegerReturnValueRegisterCallback(void* ctxt);
@@ -4666,6 +4667,7 @@ __attribute__ ((format (printf, 1, 2)))
virtual bool AreArgumentRegistersSharedIndex();
virtual bool IsStackReservedForArgumentRegisters();
virtual bool IsStackAdjustedOnReturn();
+ virtual bool IsEligibleForHeuristics();
virtual uint32_t GetIntegerReturnValueRegister() = 0;
virtual uint32_t GetHighIntegerReturnValueRegister();
@@ -4693,6 +4695,7 @@ __attribute__ ((format (printf, 1, 2)))
virtual bool AreArgumentRegistersSharedIndex() override;
virtual bool IsStackReservedForArgumentRegisters() override;
virtual bool IsStackAdjustedOnReturn() override;
+ virtual bool IsEligibleForHeuristics() override;
virtual uint32_t GetIntegerReturnValueRegister() override;
virtual uint32_t GetHighIntegerReturnValueRegister() override;