summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorPierre Bourdon <delroth@gmail.com>2012-06-20 18:33:23 +0200
committerPierre Bourdon <delroth@gmail.com>2012-06-20 18:33:23 +0200
commitfa2ee1f4a0bf7e6ba4432e8e4bd1e726bec434d5 (patch)
tree428e7e800714e141f8e6157298feeeccd8e6a091 /Source/Core
parent30de244050d57ff981981b20ce414eb7b5e9f9ab (diff)
Only call CheckExceptions in dcbz in interpreter mode, use FL_ENDBLOCK for Jit64. Now RS3 demo disc does ingame with Jit and block_size = 1
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_LoadStore.cpp3
-rw-r--r--Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_Tables.cpp2
2 files changed, 3 insertions, 2 deletions
diff --git a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_LoadStore.cpp b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_LoadStore.cpp
index f09575e066..bc5cfc10e6 100644
--- a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_LoadStore.cpp
+++ b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_LoadStore.cpp
@@ -409,7 +409,8 @@ void Interpreter::dcbz(UGeckoInstruction _inst)
// HACK but works... we think
if (HID2.WPE || !HID0.DCFA)
Memory::Memset(Helper_Get_EA_X(_inst) & (~31), 0, 32);
- PowerPC::CheckExceptions();
+ if (!jit)
+ PowerPC::CheckExceptions();
}
// eciwx/ecowx technically should access the specified device
diff --git a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_Tables.cpp b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_Tables.cpp
index 13b1cf46c1..33540bfb64 100644
--- a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_Tables.cpp
+++ b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_Tables.cpp
@@ -203,7 +203,7 @@ static GekkoOPTemplate table31[] =
{278, Interpreter::dcbt, {"dcbt", OPTYPE_DCACHE, 0, 1, 0, 0, 0}},
{470, Interpreter::dcbi, {"dcbi", OPTYPE_DCACHE, 0, 4, 0, 0, 0}},
{758, Interpreter::dcba, {"dcba", OPTYPE_DCACHE, 0, 4, 0, 0, 0}},
- {1014, Interpreter::dcbz, {"dcbz", OPTYPE_DCACHE, 0, 4, 0, 0, 0}},
+ {1014, Interpreter::dcbz, {"dcbz", OPTYPE_DCACHE, FL_LOADSTORE, 4, 0, 0, 0}},
//load word
{23, Interpreter::lwzx, {"lwzx", OPTYPE_LOAD, FL_OUT_D | FL_IN_A0 | FL_IN_B | FL_LOADSTORE, 0, 0, 0, 0}},