Fix casting between XThread and Thread causing pointer misalignment
This commit is contained in:
@@ -13,14 +13,14 @@
|
||||
namespace xe {
|
||||
namespace cpu {
|
||||
|
||||
thread_local Thread* Thread::current_thread_tls_ = nullptr;
|
||||
thread_local Thread* Thread::current_thread_ = nullptr;
|
||||
|
||||
Thread::Thread() {}
|
||||
Thread::~Thread() {}
|
||||
|
||||
bool Thread::IsInThread() { return current_thread_tls_ != nullptr; }
|
||||
bool Thread::IsInThread() { return current_thread_ != nullptr; }
|
||||
|
||||
Thread* Thread::GetCurrentThread() { return current_thread_tls_; }
|
||||
Thread* Thread::GetCurrentThread() { return current_thread_; }
|
||||
uint32_t Thread::GetCurrentThreadId() {
|
||||
return Thread::GetCurrentThread()->thread_state()->thread_id();
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ class Thread {
|
||||
const std::string& thread_name() const { return thread_name_; }
|
||||
|
||||
protected:
|
||||
static thread_local Thread* current_thread_tls_;
|
||||
thread_local static Thread* current_thread_;
|
||||
|
||||
ThreadState* thread_state_ = nullptr;
|
||||
std::unique_ptr<xe::threading::Thread> thread_ = nullptr;
|
||||
|
||||
Reference in New Issue
Block a user