From f3ebb20bb1682ac5d908a11f6b7d237f1d02b9a2 Mon Sep 17 00:00:00 2001 From: zilmar Date: Sun, 2 Oct 2016 06:55:59 +1100 Subject: [PATCH] [Android] Have CArmRecompilerOps::CompileExit write back as the working reg set --- .../N64System/Recompiler/Arm/ArmRecompilerOps.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp b/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp index aa80c096d..49540d28c 100644 --- a/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp +++ b/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp @@ -4197,6 +4197,10 @@ void CArmRecompilerOps::SyncRegState(const CRegInfo & SyncTo) void CArmRecompilerOps::CompileExit(uint32_t JumpPC, uint32_t TargetPC, CRegInfo &ExitRegSet, CExitInfo::EXIT_REASON reason) { + m_RegWorkingSet = ExitRegSet; + m_RegWorkingSet.WriteBackRegisters(); + ExitRegSet = m_RegWorkingSet; + if (TargetPC != (uint32_t)-1) { MoveConstToArmReg(Arm_R1, TargetPC);