Browse Source
[nce] fix pointer store
remotes/1785372757367212240/tmp_refs/heads/variable-page-size
Exverge
4 weeks ago
No known key found for this signature in database
GPG Key ID: DAD399BCC5FB77E4
1 changed files with
3 additions and
3 deletions
-
src/core/arm/nce/arm_nce.cpp
|
|
|
@ -335,7 +335,7 @@ void* ArmNce::RestoreGuestContext(void* raw_context) { |
|
|
|
// Retrieve the host context.
|
|
|
|
auto host_ctx = KernelContext(raw_context); |
|
|
|
|
|
|
|
#ifndef _WIN32
|
|
|
|
#ifdef __linux__
|
|
|
|
// Thread-local parameters will be located in x9.
|
|
|
|
auto* tpidr = reinterpret_cast<NativeExecutionParameters*>(host_ctx.regs()[9]); |
|
|
|
#else
|
|
|
|
@ -453,9 +453,9 @@ HaltReason ArmNce::RunThread(Kernel::KThread* thread) { |
|
|
|
auto* process = thread->GetOwnerProcess(); |
|
|
|
|
|
|
|
#if defined(__APPLE__)
|
|
|
|
ASSERT(pthread_setspecific(ContextKey, &thread_params) == 0); |
|
|
|
ASSERT(pthread_setspecific(ContextKey, thread_params) == 0); |
|
|
|
#elif defined(_WIN32)
|
|
|
|
ASSERT_MSG(TlsSetValue(ContextKey, &thread_params), "Failed to set TLS value: id {}, error {}", ContextKey, GetLastError()); |
|
|
|
ASSERT_MSG(TlsSetValue(ContextKey, thread_params), "Failed to set TLS value: id {}, error {}", ContextKey, GetLastError()); |
|
|
|
#endif
|
|
|
|
|
|
|
|
// Move non-critical operations outside the locked section
|
|
|
|
|