From 0a2ecf5a1ef954921a659702cee3f801a76d0fb4 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Tue, 4 Dec 2018 21:57:48 -0500 Subject: [PATCH] On Darwin, guard page accesses are raised as SIGBUS. --- lib/execute/signalhandlers/SignalHandlers.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/execute/signalhandlers/SignalHandlers.cpp b/lib/execute/signalhandlers/SignalHandlers.cpp index bbe06cef05..eb3608d5f6 100644 --- a/lib/execute/signalhandlers/SignalHandlers.cpp +++ b/lib/execute/signalhandlers/SignalHandlers.cpp @@ -723,8 +723,9 @@ EnsureEagerSignalHandlers() abort(); } -# if defined(__arm__) - // On Arm Handle Unaligned Accesses +# if defined(__arm__) || defined(__APPLE__) + // On ARM, handle Unaligned Accesses. + // On Darwin, guard page accesses are raised as SIGBUS. struct sigaction busHandler; busHandler.sa_flags = SA_SIGINFO | SA_NODEFER | SA_ONSTACK; busHandler.sa_sigaction = WasmTrapHandler;