From 8cb86de02608de94fe262c26cc76b84be0ad4483 Mon Sep 17 00:00:00 2001 From: Flyinghead Date: Tue, 28 May 2019 19:40:30 +0200 Subject: [PATCH] Make SMCCheck=Fast work on arm64 The issue is that flushing the dynarec cache makes rewriting fail for the currently executing block. So this avoids flushing the cache too often but the problem remains. --- core/hw/sh4/modules/ccn.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/hw/sh4/modules/ccn.cpp b/core/hw/sh4/modules/ccn.cpp index 7ed472e3f..459771393 100644 --- a/core/hw/sh4/modules/ccn.cpp +++ b/core/hw/sh4/modules/ccn.cpp @@ -88,7 +88,7 @@ void CCN_CCR_write(u32 addr, u32 value) if (temp.ICI) { printf_smc("Sh4: i-cache invalidation %08X\n",curr_pc); - if (settings.dynarec.SmcCheckLevel != FullCheck) { + if (settings.dynarec.SmcCheckLevel == NoCheck) { //TODO: Add skip/check vectors for Shikigami No Shiro II (uses ICI frequently) //which game is 0xAC13DBF8 from ? if (curr_pc != 0xAC13DBF8)