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/hle/kernel/physical_core.h | |
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 '')
-rw-r--r-- | src/core/hle/kernel/physical_core.h | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/src/core/hle/kernel/physical_core.h b/src/core/hle/kernel/physical_core.h index 898d1e5db..2fc8d4be2 100644 --- a/src/core/hle/kernel/physical_core.h +++ b/src/core/hle/kernel/physical_core.h @@ -14,7 +14,6 @@ class KScheduler; } // namespace Kernel namespace Core { -class CPUInterruptHandler; class ExclusiveMonitor; class System; } // namespace Core @@ -23,15 +22,11 @@ namespace Kernel { class PhysicalCore { public: - PhysicalCore(std::size_t core_index_, Core::System& system_, KScheduler& scheduler_, - Core::CPUInterrupts& interrupts_); + PhysicalCore(std::size_t core_index_, Core::System& system_, KScheduler& scheduler_); ~PhysicalCore(); - PhysicalCore(const PhysicalCore&) = delete; - PhysicalCore& operator=(const PhysicalCore&) = delete; - - PhysicalCore(PhysicalCore&&) = default; - PhysicalCore& operator=(PhysicalCore&&) = delete; + YUZU_NON_COPYABLE(PhysicalCore); + YUZU_NON_MOVEABLE(PhysicalCore); /// Initialize the core for the specified parameters. void Initialize(bool is_64_bit); @@ -86,9 +81,11 @@ private: const std::size_t core_index; Core::System& system; Kernel::KScheduler& scheduler; - Core::CPUInterrupts& interrupts; - std::unique_ptr<std::mutex> guard; + + std::mutex guard; + std::condition_variable on_interrupt; std::unique_ptr<Core::ARM_Interface> arm_interface; + bool is_interrupted; }; } // namespace Kernel |