Path: blob/main/emulators/fbsd-duckstation/files/patch-src-util-page_fault_handler.cpp
16462 views
Fix build on arm6412--- src/util/page_fault_handler.cpp.orig 2024-06-14 05:59:32 UTC3+++ src/util/page_fault_handler.cpp4@@ -188,8 +188,8 @@ void PageFaultHandler::SignalHandler(int sig, siginfo_5void* const exception_pc = reinterpret_cast<void*>(static_cast<ucontext_t*>(ctx)->uc_mcontext.mc_rip);6const bool is_write = (static_cast<ucontext_t*>(ctx)->uc_mcontext.mc_err & 2) != 0;7#elif defined(CPU_ARCH_ARM64)8- void* const exception_address = reinterpret_cast<void*>(static_cast<ucontext_t*>(ctx)->uc_mcontext->__es.__far);9- void* const exception_pc = reinterpret_cast<void*>(static_cast<ucontext_t*>(ctx)->uc_mcontext->__ss.__pc);10+ void* const exception_address = reinterpret_cast<void*>(info->si_addr);11+ void* const exception_pc = reinterpret_cast<void*>(static_cast<ucontext_t*>(ctx)->uc_mcontext.mc_gpregs.gp_elr);12const bool is_write = IsStoreInstruction(exception_pc);13#else14void* const exception_address = reinterpret_cast<void*>(info->si_addr);151617