summaryrefslogtreecommitdiff
path: root/src/core/core_manager.cpp
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2020-03-01 12:14:17 -0400
committerGravatar Fernando Sahmkow2020-06-27 11:35:58 -0400
commit1567824d2da8e9b49b433f3d1d753d8ad84e65f9 (patch)
treec9553bb3f1693e430054695737d2f87ba4b58955 /src/core/core_manager.cpp
parentCore: Refactor ARM Interface. (diff)
downloadyuzu-1567824d2da8e9b49b433f3d1d753d8ad84e65f9.tar.gz
yuzu-1567824d2da8e9b49b433f3d1d753d8ad84e65f9.tar.xz
yuzu-1567824d2da8e9b49b433f3d1d753d8ad84e65f9.zip
General: Move ARM_Interface into Threads.
Diffstat (limited to 'src/core/core_manager.cpp')
-rw-r--r--src/core/core_manager.cpp18
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)
28CoreManager::~CoreManager() = default; 28CoreManager::~CoreManager() = default;
29 29
30void CoreManager::RunLoop(bool tight_loop) { 30void 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
48void CoreManager::SingleStep() { 34void CoreManager::SingleStep() {
@@ -50,7 +36,7 @@ void CoreManager::SingleStep() {
50} 36}
51 37
52void CoreManager::PrepareReschedule() { 38void CoreManager::PrepareReschedule() {
53 physical_core.Stop(); 39 //physical_core.Stop();
54} 40}
55 41
56void CoreManager::Reschedule() { 42void CoreManager::Reschedule() {