summaryrefslogtreecommitdiff
path: root/src/core/cpu_manager.h
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2020-03-10 13:13:39 -0400
committerGravatar Fernando Sahmkow2020-06-27 11:35:45 -0400
commitd494b074e8afd3aff7b65afc7b977496be06ccc9 (patch)
tree002cc29d32a9b1e44e61fb1aae122715556b36c5 /src/core/cpu_manager.h
parentCPU_Manager: Unload/Reload threads on preemption on SingleCore (diff)
downloadyuzu-d494b074e8afd3aff7b65afc7b977496be06ccc9.tar.gz
yuzu-d494b074e8afd3aff7b65afc7b977496be06ccc9.tar.xz
yuzu-d494b074e8afd3aff7b65afc7b977496be06ccc9.zip
Kernel: Preempt Single core on redudant yields.
Diffstat (limited to 'src/core/cpu_manager.h')
-rw-r--r--src/core/cpu_manager.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/cpu_manager.h b/src/core/cpu_manager.h
index ff1935d5c..c0e454a7d 100644
--- a/src/core/cpu_manager.h
+++ b/src/core/cpu_manager.h
@@ -45,6 +45,8 @@ public:
45 std::function<void(void*)> GetSuspendThreadStartFunc(); 45 std::function<void(void*)> GetSuspendThreadStartFunc();
46 void* GetStartFuncParamater(); 46 void* GetStartFuncParamater();
47 47
48 void PreemptSingleCore();
49
48 std::size_t CurrentCore() const { 50 std::size_t CurrentCore() const {
49 return current_core.load(); 51 return current_core.load();
50 } 52 }
@@ -71,8 +73,6 @@ private:
71 73
72 void RunThread(std::size_t core); 74 void RunThread(std::size_t core);
73 75
74 void PreemptSingleCore();
75
76 struct CoreData { 76 struct CoreData {
77 std::shared_ptr<Common::Fiber> host_context; 77 std::shared_ptr<Common::Fiber> host_context;
78 std::unique_ptr<Common::Event> enter_barrier; 78 std::unique_ptr<Common::Event> enter_barrier;