diff options
Diffstat (limited to 'src/common')
| -rw-r--r-- | src/common/host_memory.cpp | 3 | ||||
| -rw-r--r-- | src/common/settings.h | 2 | ||||
| -rw-r--r-- | src/common/signal_chain.h | 4 |
3 files changed, 6 insertions, 3 deletions
diff --git a/src/common/host_memory.cpp b/src/common/host_memory.cpp index 8a869e558..f14077750 100644 --- a/src/common/host_memory.cpp +++ b/src/common/host_memory.cpp | |||
| @@ -409,11 +409,14 @@ static void* ChooseVirtualBase(size_t virtual_size) { | |||
| 409 | 409 | ||
| 410 | return MAP_FAILED; | 410 | return MAP_FAILED; |
| 411 | } | 411 | } |
| 412 | |||
| 412 | #else | 413 | #else |
| 414 | |||
| 413 | static void* ChooseVirtualBase(size_t virtual_size) { | 415 | static void* ChooseVirtualBase(size_t virtual_size) { |
| 414 | return mmap(nullptr, virtual_size, PROT_READ | PROT_WRITE, | 416 | return mmap(nullptr, virtual_size, PROT_READ | PROT_WRITE, |
| 415 | MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0); | 417 | MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0); |
| 416 | } | 418 | } |
| 419 | |||
| 417 | #endif | 420 | #endif |
| 418 | 421 | ||
| 419 | class HostMemory::Impl { | 422 | class HostMemory::Impl { |
diff --git a/src/common/settings.h b/src/common/settings.h index 648e0be0d..fea639ee3 100644 --- a/src/common/settings.h +++ b/src/common/settings.h | |||
| @@ -181,7 +181,7 @@ struct Values { | |||
| 181 | 181 | ||
| 182 | // Cpu | 182 | // Cpu |
| 183 | SwitchableSetting<CpuBackend, true> cpu_backend{ | 183 | SwitchableSetting<CpuBackend, true> cpu_backend{ |
| 184 | linkage, CpuBackend::Nce, CpuBackend::Dynarmic, | 184 | linkage, CpuBackend::Dynarmic, CpuBackend::Dynarmic, |
| 185 | #ifdef ARCHITECTURE_arm64 | 185 | #ifdef ARCHITECTURE_arm64 |
| 186 | CpuBackend::Nce, | 186 | CpuBackend::Nce, |
| 187 | #else | 187 | #else |
diff --git a/src/common/signal_chain.h b/src/common/signal_chain.h index e3bfe6882..8d06a1bd1 100644 --- a/src/common/signal_chain.h +++ b/src/common/signal_chain.h | |||
| @@ -10,8 +10,8 @@ | |||
| 10 | namespace Common { | 10 | namespace Common { |
| 11 | 11 | ||
| 12 | // Android's ART overrides sigaction with its own wrapper. This is problematic for SIGSEGV | 12 | // Android's ART overrides sigaction with its own wrapper. This is problematic for SIGSEGV |
| 13 | // in particular, because ARTs handler access TPIDR_EL0, so this extracts the libc version | 13 | // in particular, because ART's handler accesses tpidr_el0, which conflicts with NCE. |
| 14 | // and calls it directly. | 14 | // This extracts the libc symbol and calls it directly. |
| 15 | int SigAction(int signum, const struct sigaction* act, struct sigaction* oldact); | 15 | int SigAction(int signum, const struct sigaction* act, struct sigaction* oldact); |
| 16 | 16 | ||
| 17 | } // namespace Common | 17 | } // namespace Common |