From a733e98eb99b2da8d68cc1d94d66cd1a7dd3e9e0 Mon Sep 17 00:00:00 2001 From: Obriv Mostov Date: Fri, 17 Apr 2026 15:10:02 +0700 Subject: [PATCH] [Arm64, Apple] Added X1 as a second syscall retval register --- arch/arm64/arch_arm64.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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; } };