diff options
author | Liam <byteslice@airmail.cc> | 2022-07-08 02:06:46 +0200 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2022-07-25 18:14:15 +0200 |
commit | 6523854dd6ac2d202dacb2110bc83b8e61621e9a (patch) | |
tree | d3d5c5d3048ef0d316692e5f74a78575666114de /src/core/arm/dynarmic/arm_dynarmic_64.cpp | |
parent | Merge pull request #8549 from liamwhite/kscheduler-sc (diff) | |
download | yuzu-6523854dd6ac2d202dacb2110bc83b8e61621e9a.tar yuzu-6523854dd6ac2d202dacb2110bc83b8e61621e9a.tar.gz yuzu-6523854dd6ac2d202dacb2110bc83b8e61621e9a.tar.bz2 yuzu-6523854dd6ac2d202dacb2110bc83b8e61621e9a.tar.lz yuzu-6523854dd6ac2d202dacb2110bc83b8e61621e9a.tar.xz yuzu-6523854dd6ac2d202dacb2110bc83b8e61621e9a.tar.zst yuzu-6523854dd6ac2d202dacb2110bc83b8e61621e9a.zip |
Diffstat (limited to 'src/core/arm/dynarmic/arm_dynarmic_64.cpp')
-rw-r--r-- | src/core/arm/dynarmic/arm_dynarmic_64.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/core/arm/dynarmic/arm_dynarmic_64.cpp b/src/core/arm/dynarmic/arm_dynarmic_64.cpp index 1a4d37cbc..17d631b2e 100644 --- a/src/core/arm/dynarmic/arm_dynarmic_64.cpp +++ b/src/core/arm/dynarmic/arm_dynarmic_64.cpp @@ -10,7 +10,6 @@ #include "common/logging/log.h" #include "common/page_table.h" #include "common/settings.h" -#include "core/arm/cpu_interrupt_handler.h" #include "core/arm/dynarmic/arm_dynarmic_64.h" #include "core/arm/dynarmic/arm_exclusive_monitor.h" #include "core/core.h" @@ -371,10 +370,9 @@ void ARM_Dynarmic_64::RewindBreakpointInstruction() { LoadContext(breakpoint_context); } -ARM_Dynarmic_64::ARM_Dynarmic_64(System& system_, CPUInterrupts& interrupt_handlers_, - bool uses_wall_clock_, ExclusiveMonitor& exclusive_monitor_, - std::size_t core_index_) - : ARM_Interface{system_, interrupt_handlers_, uses_wall_clock_}, +ARM_Dynarmic_64::ARM_Dynarmic_64(System& system_, bool uses_wall_clock_, + ExclusiveMonitor& exclusive_monitor_, std::size_t core_index_) + : ARM_Interface{system_, uses_wall_clock_}, cb(std::make_unique<DynarmicCallbacks64>(*this)), core_index{core_index_}, exclusive_monitor{dynamic_cast<DynarmicExclusiveMonitor&>(exclusive_monitor_)}, null_jit{MakeJit(nullptr, 48)}, jit{null_jit.get()} {} @@ -461,6 +459,10 @@ void ARM_Dynarmic_64::SignalInterrupt() { jit.load()->HaltExecution(break_loop); } +void ARM_Dynarmic_64::ClearInterrupt() { + jit.load()->ClearHalt(break_loop); +} + void ARM_Dynarmic_64::ClearInstructionCache() { jit.load()->ClearCache(); } |