diff options
Diffstat (limited to 'src/core/core_manager.cpp')
| -rw-r--r-- | src/core/core_manager.cpp | 18 |
1 files changed, 2 insertions, 16 deletions
diff --git a/src/core/core_manager.cpp b/src/core/core_manager.cpp index 45f0bb547..82d7acb40 100644 --- a/src/core/core_manager.cpp +++ b/src/core/core_manager.cpp | |||
| @@ -28,21 +28,7 @@ CoreManager::CoreManager(System& system, std::size_t core_index) | |||
| 28 | CoreManager::~CoreManager() = default; | 28 | CoreManager::~CoreManager() = default; |
| 29 | 29 | ||
| 30 | void CoreManager::RunLoop(bool tight_loop) { | 30 | void CoreManager::RunLoop(bool tight_loop) { |
| 31 | Reschedule(); | 31 | /// Deprecated |
| 32 | |||
| 33 | // If we don't have a currently active thread then don't execute instructions, | ||
| 34 | // instead advance to the next event and try to yield to the next thread | ||
| 35 | if (Kernel::GetCurrentThread() == nullptr) { | ||
| 36 | LOG_TRACE(Core, "Core-{} idling", core_index); | ||
| 37 | } else { | ||
| 38 | if (tight_loop) { | ||
| 39 | physical_core.Run(); | ||
| 40 | } else { | ||
| 41 | physical_core.Step(); | ||
| 42 | } | ||
| 43 | } | ||
| 44 | |||
| 45 | Reschedule(); | ||
| 46 | } | 32 | } |
| 47 | 33 | ||
| 48 | void CoreManager::SingleStep() { | 34 | void CoreManager::SingleStep() { |
| @@ -50,7 +36,7 @@ void CoreManager::SingleStep() { | |||
| 50 | } | 36 | } |
| 51 | 37 | ||
| 52 | void CoreManager::PrepareReschedule() { | 38 | void CoreManager::PrepareReschedule() { |
| 53 | physical_core.Stop(); | 39 | //physical_core.Stop(); |
| 54 | } | 40 | } |
| 55 | 41 | ||
| 56 | void CoreManager::Reschedule() { | 42 | void CoreManager::Reschedule() { |