diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-03-31 21:12:41 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-06-27 17:36:04 +0200 |
commit | c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee (patch) | |
tree | dfd5bbcb4a0d025b7d77537dec23e70c57052717 /src/core/hle/kernel/kernel.cpp | |
parent | Bootmanager/CPU_Manager: Correct shader caches and sync GPU on OpenGL. (diff) | |
download | yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.gz yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.bz2 yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.lz yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.xz yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.zst yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/kernel/kernel.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index 739205eca..1f230fc4a 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -545,7 +545,17 @@ const Core::ExclusiveMonitor& KernelCore::GetExclusiveMonitor() const { } void KernelCore::InvalidateAllInstructionCaches() { - //TODO: Reimplement, this + if (!IsMulticore()) { + auto& threads = GlobalScheduler().GetThreadList(); + for (auto& thread : threads) { + if (!thread->IsHLEThread()) { + auto& arm_interface = thread->ArmInterface(); + arm_interface.ClearInstructionCache(); + } + } + } else { + UNIMPLEMENTED_MSG("Cache Invalidation unimplemented for multicore"); + } } void KernelCore::PrepareReschedule(std::size_t id) { |