diff options
author | Narr the Reg <juangerman-13@hotmail.com> | 2024-01-01 20:56:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-01 20:56:16 +0100 |
commit | f0f92edbd0a78abda819251ddc325da4acc14216 (patch) | |
tree | 6a23c1be26148c4137a6f67ebdf926a3f82ce47f /src/core/arm/dynarmic/arm_dynarmic_64.cpp | |
parent | Merge pull request #12501 from liamwhite/ips (diff) | |
parent | heap_tracker: use linear-time mapping eviction (diff) | |
download | yuzu-f0f92edbd0a78abda819251ddc325da4acc14216.tar yuzu-f0f92edbd0a78abda819251ddc325da4acc14216.tar.gz yuzu-f0f92edbd0a78abda819251ddc325da4acc14216.tar.bz2 yuzu-f0f92edbd0a78abda819251ddc325da4acc14216.tar.lz yuzu-f0f92edbd0a78abda819251ddc325da4acc14216.tar.xz yuzu-f0f92edbd0a78abda819251ddc325da4acc14216.tar.zst yuzu-f0f92edbd0a78abda819251ddc325da4acc14216.zip |
Diffstat (limited to 'src/core/arm/dynarmic/arm_dynarmic_64.cpp')
-rw-r--r-- | src/core/arm/dynarmic/arm_dynarmic_64.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/arm/dynarmic/arm_dynarmic_64.cpp b/src/core/arm/dynarmic/arm_dynarmic_64.cpp index f351b13d9..c811c8ad5 100644 --- a/src/core/arm/dynarmic/arm_dynarmic_64.cpp +++ b/src/core/arm/dynarmic/arm_dynarmic_64.cpp @@ -362,11 +362,15 @@ std::shared_ptr<Dynarmic::A64::Jit> ArmDynarmic64::MakeJit(Common::PageTable* pa } HaltReason ArmDynarmic64::RunThread(Kernel::KThread* thread) { + ScopedJitExecution sj(thread->GetOwnerProcess()); + m_jit->ClearExclusiveState(); return TranslateHaltReason(m_jit->Run()); } HaltReason ArmDynarmic64::StepThread(Kernel::KThread* thread) { + ScopedJitExecution sj(thread->GetOwnerProcess()); + m_jit->ClearExclusiveState(); return TranslateHaltReason(m_jit->Step()); } @@ -406,6 +410,7 @@ ArmDynarmic64::ArmDynarmic64(System& system, bool uses_wall_clock, Kernel::KProc auto& page_table = process->GetPageTable().GetBasePageTable(); auto& page_table_impl = page_table.GetImpl(); m_jit = MakeJit(&page_table_impl, page_table.GetAddressSpaceWidth()); + ScopedJitExecution::RegisterHandler(); } ArmDynarmic64::~ArmDynarmic64() = default; |