diff --git a/arch/arm64/arch_arm64.cpp b/arch/arm64/arch_arm64.cpp index fd4942fd5..2d3f88990 100644 --- a/arch/arm64/arch_arm64.cpp +++ b/arch/arm64/arch_arm64.cpp @@ -2749,7 +2749,7 @@ class AppleArm64SystemCallConvention : public CallingConvention } - virtual vector GetCallerSavedRegisters() override { return vector {REG_X0}; } + virtual vector GetCallerSavedRegisters() override { return vector {REG_X0, REG_X1}; } virtual vector GetCalleeSavedRegisters() override @@ -2761,6 +2761,8 @@ class AppleArm64SystemCallConvention : public CallingConvention virtual uint32_t GetIntegerReturnValueRegister() override { return REG_X0; } + virtual uint32_t GetHighIntegerReturnValueRegister() override { return REG_X1; } + virtual bool IsEligibleForHeuristics() override { return false; } };