diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-04-01 23:28:49 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-06-27 17:36:05 +0200 |
commit | 48fa3b7a0f2054a836b0a8061e6b082c246b5ae0 (patch) | |
tree | 37a09cfb55f13ebf2df2b9a71622c599733100b0 /src/core/core_manager.h | |
parent | Kernel/svcBreak: Implement CacheInvalidation for Singlecore and correct svcBreak. (diff) | |
download | yuzu-48fa3b7a0f2054a836b0a8061e6b082c246b5ae0.tar yuzu-48fa3b7a0f2054a836b0a8061e6b082c246b5ae0.tar.gz yuzu-48fa3b7a0f2054a836b0a8061e6b082c246b5ae0.tar.bz2 yuzu-48fa3b7a0f2054a836b0a8061e6b082c246b5ae0.tar.lz yuzu-48fa3b7a0f2054a836b0a8061e6b082c246b5ae0.tar.xz yuzu-48fa3b7a0f2054a836b0a8061e6b082c246b5ae0.tar.zst yuzu-48fa3b7a0f2054a836b0a8061e6b082c246b5ae0.zip |
Diffstat (limited to 'src/core/core_manager.h')
-rw-r--r-- | src/core/core_manager.h | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/src/core/core_manager.h b/src/core/core_manager.h deleted file mode 100644 index d525de00a..000000000 --- a/src/core/core_manager.h +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2018 yuzu emulator team -// Licensed under GPLv2 or any later version -// Refer to the license.txt file included. - -#pragma once - -#include <atomic> -#include <cstddef> -#include <memory> -#include "common/common_types.h" - -namespace Kernel { -class GlobalScheduler; -class PhysicalCore; -} // namespace Kernel - -namespace Core { -class System; -} - -namespace Core::Timing { -class CoreTiming; -} - -namespace Core::Memory { -class Memory; -} - -namespace Core { - -constexpr unsigned NUM_CPU_CORES{4}; - -class CoreManager { -public: - CoreManager(System& system, std::size_t core_index); - ~CoreManager(); - - void RunLoop(bool tight_loop = true); - - void SingleStep(); - - void PrepareReschedule(); - - bool IsMainCore() const { - return core_index == 0; - } - - std::size_t CoreIndex() const { - return core_index; - } - -private: - void Reschedule(); - - Kernel::GlobalScheduler& global_scheduler; - Kernel::PhysicalCore& physical_core; - Timing::CoreTiming& core_timing; - - std::atomic<bool> reschedule_pending = false; - std::size_t core_index; -}; - -} // namespace Core |