kern: use single interrupt manager object

This commit is contained in:
Michael Scire 2020-12-01 07:35:43 -08:00 committed by SciresM
parent a4e09fc6c4
commit 5cb237d030
5 changed files with 39 additions and 40 deletions
libraries/libmesosphere/include/mesosphere

View file

@ -37,8 +37,6 @@ namespace ams::kern {
class KSynchronization;
class KUnsafeMemory;
#if defined(ATMOSPHERE_ARCH_ARM64)
namespace arch::arm64 {
@ -75,6 +73,7 @@ namespace ams::kern {
static KSynchronization s_synchronization;
static KUnsafeMemory s_unsafe_memory;
static KWorkerTaskManager s_worker_task_managers[KWorkerTaskManager::WorkerType_Count];
static KInterruptManager s_interrupt_manager;
private:
static ALWAYS_INLINE KCoreLocalContext &GetCoreLocalContext() {
return reinterpret_cast<KCoreLocalRegion *>(cpu::GetCoreLocalRegionAddress())->current.context;
@ -111,7 +110,7 @@ namespace ams::kern {
}
static ALWAYS_INLINE KInterruptManager &GetInterruptManager() {
return GetCoreLocalContext().interrupt_manager;
return s_interrupt_manager;
}
static ALWAYS_INLINE KHardwareTimer &GetHardwareTimer() {