From c17f7b100e36edb1c728dbf21c77f9484d1820c6 Mon Sep 17 00:00:00 2001 From: RSDuck Date: Sat, 9 May 2020 15:39:39 +0200 Subject: [PATCH] allow allocating caller saved regs on windows --- src/ARMJIT_x64/ARMJIT_Compiler.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/ARMJIT_x64/ARMJIT_Compiler.cpp b/src/ARMJIT_x64/ARMJIT_Compiler.cpp index ef04601c..fd3fb706 100644 --- a/src/ARMJIT_x64/ARMJIT_Compiler.cpp +++ b/src/ARMJIT_x64/ARMJIT_Compiler.cpp @@ -24,7 +24,8 @@ template <> const X64Reg RegisterCache::NativeRegAllocOrder[] = { #ifdef _WIN32 - RBX, RSI, RDI, R12, R13, R14 + RBX, RSI, RDI, R12, R13, R14, // callee saved + R10, R11, // caller saved #else RBX, R12, R13, R14, // callee saved, this is sad R9, R10, R11, // caller saved @@ -33,7 +34,7 @@ const X64Reg RegisterCache::NativeRegAllocOrder[] = template <> const int RegisterCache::NativeRegsAvailable = #ifdef _WIN32 - 6 + 8 #else 7 #endif