Browse Source

[nce] fix pointer store

remotes/1785372757367212240/tmp_refs/heads/variable-page-size
Exverge 4 weeks ago
parent
commit
f3f7f29390
No known key found for this signature in database GPG Key ID: DAD399BCC5FB77E4
  1. 6
      src/core/arm/nce/arm_nce.cpp

6
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

Loading…
Cancel
Save