summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/thread.h
diff options
context:
space:
mode:
authorGravatar Lioncash2015-05-10 20:50:23 -0400
committerGravatar Lioncash2015-05-10 20:50:23 -0400
commit2a19de1d09f725e8ef267a51d4c5ff994b036b04 (patch)
tree945fc0617a3329e14f0b4ec3cf2679a0054cbb7b /src/core/hle/kernel/thread.h
parentMerge pull request #726 from bunnei/gpu-improvements (diff)
parentfixup! Set the TLS address in the scheduler (diff)
downloadyuzu-2a19de1d09f725e8ef267a51d4c5ff994b036b04.tar.gz
yuzu-2a19de1d09f725e8ef267a51d4c5ff994b036b04.tar.xz
yuzu-2a19de1d09f725e8ef267a51d4c5ff994b036b04.zip
Merge pull request #741 from Subv/tls
Give each emulated thread it's own TLS memory
Diffstat (limited to 'src/core/hle/kernel/thread.h')
-rw-r--r--src/core/hle/kernel/thread.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/hle/kernel/thread.h b/src/core/hle/kernel/thread.h
index 9958b16e6..6891c8c2f 100644
--- a/src/core/hle/kernel/thread.h
+++ b/src/core/hle/kernel/thread.h
@@ -135,6 +135,12 @@ public:
135 */ 135 */
136 void Stop(); 136 void Stop();
137 137
138 /*
139 * Returns the Thread Local Storage address of the current thread
140 * @returns VAddr of the thread's TLS
141 */
142 VAddr GetTLSAddress() const;
143
138 Core::ThreadContext context; 144 Core::ThreadContext context;
139 145
140 u32 thread_id; 146 u32 thread_id;
@@ -150,6 +156,8 @@ public:
150 156
151 s32 processor_id; 157 s32 processor_id;
152 158
159 VAddr tls_address; ///< Address of the Thread Local Storage of the thread
160
153 /// Mutexes currently held by this thread, which will be released when it exits. 161 /// Mutexes currently held by this thread, which will be released when it exits.
154 boost::container::flat_set<SharedPtr<Mutex>> held_mutexes; 162 boost::container::flat_set<SharedPtr<Mutex>> held_mutexes;
155 163