From 6aae910a97ea68ff27893fe882431c7c21681c03 Mon Sep 17 00:00:00 2001 From: zilmar <zilmar@pj64-emu.com> Date: Thu, 1 Dec 2016 21:21:01 +1100 Subject: [PATCH] [Android] Use writeback instead of unmap --- .../Recompiler/Arm/ArmRecompilerOps.cpp | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp b/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp index 1c8dabd24..b32ec69e4 100644 --- a/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp +++ b/Source/Project64-core/N64System/Recompiler/Arm/ArmRecompilerOps.cpp @@ -3737,8 +3737,8 @@ void CArmRecompilerOps::SPECIAL_SLTU() void CArmRecompilerOps::SPECIAL_DADD() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rs != 0) { UnMap_GPR(m_Opcode.rs, true); } - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rs != 0) { WriteBack_GPR(m_Opcode.rs, false); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DADD, "R4300iOp32::SPECIAL_DADD"); @@ -3752,8 +3752,8 @@ void CArmRecompilerOps::SPECIAL_DADD() void CArmRecompilerOps::SPECIAL_DADDU() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rs != 0) { UnMap_GPR(m_Opcode.rs, true); } - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rs != 0) { WriteBack_GPR(m_Opcode.rs, false); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DADDU, "R4300iOp32::SPECIAL_DADDU"); @@ -3767,8 +3767,8 @@ void CArmRecompilerOps::SPECIAL_DADDU() void CArmRecompilerOps::SPECIAL_DSUB() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rs != 0) { UnMap_GPR(m_Opcode.rs, true); } - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rs != 0) { WriteBack_GPR(m_Opcode.rs, false); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DSUB, "R4300iOp32::SPECIAL_DSUB"); @@ -3782,8 +3782,8 @@ void CArmRecompilerOps::SPECIAL_DSUB() void CArmRecompilerOps::SPECIAL_DSUBU() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rs != 0) { UnMap_GPR(m_Opcode.rs, true); } - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rs != 0) { WriteBack_GPR(m_Opcode.rs, false); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DSUBU, "R4300iOp32::SPECIAL_DSUBU"); @@ -3797,7 +3797,7 @@ void CArmRecompilerOps::SPECIAL_DSUBU() void CArmRecompilerOps::SPECIAL_DSLL() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DSLL, "R4300iOp32::SPECIAL_DSLL"); @@ -3811,7 +3811,7 @@ void CArmRecompilerOps::SPECIAL_DSLL() void CArmRecompilerOps::SPECIAL_DSRL() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DSRL, "R4300iOp32::SPECIAL_DSRL"); @@ -3839,7 +3839,7 @@ void CArmRecompilerOps::SPECIAL_DSRA() void CArmRecompilerOps::SPECIAL_DSLL32() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DSLL32, "R4300iOp32::SPECIAL_DSLL32"); @@ -3853,7 +3853,7 @@ void CArmRecompilerOps::SPECIAL_DSLL32() void CArmRecompilerOps::SPECIAL_DSRL32() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DSRL32, "R4300iOp32::SPECIAL_DSRL32"); @@ -3867,7 +3867,7 @@ void CArmRecompilerOps::SPECIAL_DSRL32() void CArmRecompilerOps::SPECIAL_DSRA32() { UnMap_GPR(m_Opcode.rd, true); - if (m_Opcode.rt != 0) { UnMap_GPR(m_Opcode.rt, true); } + if (m_Opcode.rt != 0) { WriteBack_GPR(m_Opcode.rt, false); } if (g_Settings->LoadBool(Game_32Bit)) { CompileInterpterCall((void *)R4300iOp32::SPECIAL_DSRA32, "R4300iOp32::SPECIAL_DSRA32");