summaryrefslogtreecommitdiffstats
path: root/src/core/arm/dynarmic
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2022-03-29 00:45:52 +0200
committerGitHub <noreply@github.com>2022-03-29 00:45:52 +0200
commit642913b0d1e27e4a81ee454903a65b5ce5ddee72 (patch)
treea77c2c60258ff98c475556fffe784074f4c93287 /src/core/arm/dynarmic
parentMerge pull request #8095 from bylaws/master (diff)
parentarm_dynarmic_64: Invalidate on all cores (diff)
downloadyuzu-642913b0d1e27e4a81ee454903a65b5ce5ddee72.tar
yuzu-642913b0d1e27e4a81ee454903a65b5ce5ddee72.tar.gz
yuzu-642913b0d1e27e4a81ee454903a65b5ce5ddee72.tar.bz2
yuzu-642913b0d1e27e4a81ee454903a65b5ce5ddee72.tar.lz
yuzu-642913b0d1e27e4a81ee454903a65b5ce5ddee72.tar.xz
yuzu-642913b0d1e27e4a81ee454903a65b5ce5ddee72.tar.zst
yuzu-642913b0d1e27e4a81ee454903a65b5ce5ddee72.zip
Diffstat (limited to 'src/core/arm/dynarmic')
-rw-r--r--src/core/arm/dynarmic/arm_dynarmic_64.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/arm/dynarmic/arm_dynarmic_64.cpp b/src/core/arm/dynarmic/arm_dynarmic_64.cpp
index d96226c41..24107f9f6 100644
--- a/src/core/arm/dynarmic/arm_dynarmic_64.cpp
+++ b/src/core/arm/dynarmic/arm_dynarmic_64.cpp
@@ -93,17 +93,19 @@ public:
static constexpr u64 ICACHE_LINE_SIZE = 64;
const u64 cache_line_start = value & ~(ICACHE_LINE_SIZE - 1);
- parent.InvalidateCacheRange(cache_line_start, ICACHE_LINE_SIZE);
+ parent.system.InvalidateCpuInstructionCacheRange(cache_line_start, ICACHE_LINE_SIZE);
break;
}
case Dynarmic::A64::InstructionCacheOperation::InvalidateAllToPoU:
- parent.ClearInstructionCache();
+ parent.system.InvalidateCpuInstructionCaches();
break;
case Dynarmic::A64::InstructionCacheOperation::InvalidateAllToPoUInnerSharable:
default:
LOG_DEBUG(Core_ARM, "Unprocesseed instruction cache operation: {}", op);
break;
}
+
+ parent.jit->HaltExecution();
}
void ExceptionRaised(u64 pc, Dynarmic::A64::Exception exception) override {