diff options
| author | 2020-02-24 22:04:12 -0400 | |
|---|---|---|
| committer | 2020-06-27 11:35:06 -0400 | |
| commit | e31425df3877636c098ec7426ebd2067920715cb (patch) | |
| tree | 5c0fc518a4ebb8413c491b43a9fdd99450c7bd80 /src/core/core_manager.cpp | |
| parent | Merge pull request #3396 from FernandoS27/prometheus-1 (diff) | |
| download | yuzu-e31425df3877636c098ec7426ebd2067920715cb.tar.gz yuzu-e31425df3877636c098ec7426ebd2067920715cb.tar.xz yuzu-e31425df3877636c098ec7426ebd2067920715cb.zip | |
General: Recover Prometheus project from harddrive failure
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host
Timing, Reworks the Kernel's Scheduler, Introduce Idle State and
Suspended State, Recreates the bootmanager, Initializes Multicore
system.
Diffstat (limited to 'src/core/core_manager.cpp')
| -rw-r--r-- | src/core/core_manager.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/core/core_manager.cpp b/src/core/core_manager.cpp index b6b797c80..45f0bb547 100644 --- a/src/core/core_manager.cpp +++ b/src/core/core_manager.cpp | |||
| @@ -34,7 +34,6 @@ void CoreManager::RunLoop(bool tight_loop) { | |||
| 34 | // instead advance to the next event and try to yield to the next thread | 34 | // instead advance to the next event and try to yield to the next thread |
| 35 | if (Kernel::GetCurrentThread() == nullptr) { | 35 | if (Kernel::GetCurrentThread() == nullptr) { |
| 36 | LOG_TRACE(Core, "Core-{} idling", core_index); | 36 | LOG_TRACE(Core, "Core-{} idling", core_index); |
| 37 | core_timing.Idle(); | ||
| 38 | } else { | 37 | } else { |
| 39 | if (tight_loop) { | 38 | if (tight_loop) { |
| 40 | physical_core.Run(); | 39 | physical_core.Run(); |
| @@ -42,7 +41,6 @@ void CoreManager::RunLoop(bool tight_loop) { | |||
| 42 | physical_core.Step(); | 41 | physical_core.Step(); |
| 43 | } | 42 | } |
| 44 | } | 43 | } |
| 45 | core_timing.Advance(); | ||
| 46 | 44 | ||
| 47 | Reschedule(); | 45 | Reschedule(); |
| 48 | } | 46 | } |
| @@ -59,7 +57,7 @@ void CoreManager::Reschedule() { | |||
| 59 | // Lock the global kernel mutex when we manipulate the HLE state | 57 | // Lock the global kernel mutex when we manipulate the HLE state |
| 60 | std::lock_guard lock(HLE::g_hle_lock); | 58 | std::lock_guard lock(HLE::g_hle_lock); |
| 61 | 59 | ||
| 62 | global_scheduler.SelectThread(core_index); | 60 | // global_scheduler.SelectThread(core_index); |
| 63 | 61 | ||
| 64 | physical_core.Scheduler().TryDoContextSwitch(); | 62 | physical_core.Scheduler().TryDoContextSwitch(); |
| 65 | } | 63 | } |