summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei2019-01-31 15:19:02 -0500
committerGravatar GitHub2019-01-31 15:19:02 -0500
commitdb21ac262774029a7b844e626a6474202263f9aa (patch)
treeed14b003d8ec872cd3d815fd5b372c4e64eb9a01 /src
parentMerge pull request #2075 from lioncash/find (diff)
parentkernel/wait_object: Devirtualize functions related to manipulating the thread... (diff)
downloadyuzu-db21ac262774029a7b844e626a6474202263f9aa.tar.gz
yuzu-db21ac262774029a7b844e626a6474202263f9aa.tar.xz
yuzu-db21ac262774029a7b844e626a6474202263f9aa.zip
Merge pull request #2077 from lioncash/virt
kernel/wait_object: Devirtualize functions related to manipulating the thread list directly
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/kernel/readable_event.cpp4
-rw-r--r--src/core/hle/kernel/readable_event.h2
-rw-r--r--src/core/hle/kernel/timer.cpp4
-rw-r--r--src/core/hle/kernel/timer.h2
-rw-r--r--src/core/hle/kernel/wait_object.h6
5 files changed, 3 insertions, 15 deletions
diff --git a/src/core/hle/kernel/readable_event.cpp b/src/core/hle/kernel/readable_event.cpp
index 6973e580c..0e5083f70 100644
--- a/src/core/hle/kernel/readable_event.cpp
+++ b/src/core/hle/kernel/readable_event.cpp
@@ -44,8 +44,4 @@ ResultCode ReadableEvent::Reset() {
44 return RESULT_SUCCESS; 44 return RESULT_SUCCESS;
45} 45}
46 46
47void ReadableEvent::WakeupAllWaitingThreads() {
48 WaitObject::WakeupAllWaitingThreads();
49}
50
51} // namespace Kernel 47} // namespace Kernel
diff --git a/src/core/hle/kernel/readable_event.h b/src/core/hle/kernel/readable_event.h
index 80b3b0aba..77a9c362c 100644
--- a/src/core/hle/kernel/readable_event.h
+++ b/src/core/hle/kernel/readable_event.h
@@ -39,8 +39,6 @@ public:
39 bool ShouldWait(Thread* thread) const override; 39 bool ShouldWait(Thread* thread) const override;
40 void Acquire(Thread* thread) override; 40 void Acquire(Thread* thread) override;
41 41
42 void WakeupAllWaitingThreads() override;
43
44 /// Unconditionally clears the readable event's state. 42 /// Unconditionally clears the readable event's state.
45 void Clear(); 43 void Clear();
46 44
diff --git a/src/core/hle/kernel/timer.cpp b/src/core/hle/kernel/timer.cpp
index 2c4f50e2b..3afe60469 100644
--- a/src/core/hle/kernel/timer.cpp
+++ b/src/core/hle/kernel/timer.cpp
@@ -66,10 +66,6 @@ void Timer::Clear() {
66 signaled = false; 66 signaled = false;
67} 67}
68 68
69void Timer::WakeupAllWaitingThreads() {
70 WaitObject::WakeupAllWaitingThreads();
71}
72
73void Timer::Signal(int cycles_late) { 69void Timer::Signal(int cycles_late) {
74 LOG_TRACE(Kernel, "Timer {} fired", GetObjectId()); 70 LOG_TRACE(Kernel, "Timer {} fired", GetObjectId());
75 71
diff --git a/src/core/hle/kernel/timer.h b/src/core/hle/kernel/timer.h
index 12915c1b1..ce3e74426 100644
--- a/src/core/hle/kernel/timer.h
+++ b/src/core/hle/kernel/timer.h
@@ -51,8 +51,6 @@ public:
51 bool ShouldWait(Thread* thread) const override; 51 bool ShouldWait(Thread* thread) const override;
52 void Acquire(Thread* thread) override; 52 void Acquire(Thread* thread) override;
53 53
54 void WakeupAllWaitingThreads() override;
55
56 /** 54 /**
57 * Starts the timer, with the specified initial delay and interval. 55 * Starts the timer, with the specified initial delay and interval.
58 * @param initial Delay until the timer is first fired 56 * @param initial Delay until the timer is first fired
diff --git a/src/core/hle/kernel/wait_object.h b/src/core/hle/kernel/wait_object.h
index d70b67893..5987fb971 100644
--- a/src/core/hle/kernel/wait_object.h
+++ b/src/core/hle/kernel/wait_object.h
@@ -33,19 +33,19 @@ public:
33 * Add a thread to wait on this object 33 * Add a thread to wait on this object
34 * @param thread Pointer to thread to add 34 * @param thread Pointer to thread to add
35 */ 35 */
36 virtual void AddWaitingThread(SharedPtr<Thread> thread); 36 void AddWaitingThread(SharedPtr<Thread> thread);
37 37
38 /** 38 /**
39 * Removes a thread from waiting on this object (e.g. if it was resumed already) 39 * Removes a thread from waiting on this object (e.g. if it was resumed already)
40 * @param thread Pointer to thread to remove 40 * @param thread Pointer to thread to remove
41 */ 41 */
42 virtual void RemoveWaitingThread(Thread* thread); 42 void RemoveWaitingThread(Thread* thread);
43 43
44 /** 44 /**
45 * Wake up all threads waiting on this object that can be awoken, in priority order, 45 * Wake up all threads waiting on this object that can be awoken, in priority order,
46 * and set the synchronization result and output of the thread. 46 * and set the synchronization result and output of the thread.
47 */ 47 */
48 virtual void WakeupAllWaitingThreads(); 48 void WakeupAllWaitingThreads();
49 49
50 /** 50 /**
51 * Wakes up a single thread waiting on this object. 51 * Wakes up a single thread waiting on this object.