summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/Unix
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2016-05-23 06:47:37 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2016-05-23 06:47:37 +0000
commitb8b0be93ef7b51cb81240d725f4c2cbe2d7f5c4d (patch)
treebc789402e5428b270ddbeae984bef0fa37e78b5a /llvm/lib/Support/Unix
parenta6d010482310fe8ebb55d52954fc14f9b7979910 (diff)
downloadbcm5719-llvm-b8b0be93ef7b51cb81240d725f4c2cbe2d7f5c4d.tar.gz
bcm5719-llvm-b8b0be93ef7b51cb81240d725f4c2cbe2d7f5c4d.zip
Enable use of sigaltstack for signal handlers when available. With this,
backtraces from the signal handler on stack overflow now work reliably (on my system at least...). llvm-svn: 270395
Diffstat (limited to 'llvm/lib/Support/Unix')
-rw-r--r--llvm/lib/Support/Unix/Signals.inc2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Support/Unix/Signals.inc b/llvm/lib/Support/Unix/Signals.inc
index 3d9d3de3a13..8e0d2057c76 100644
--- a/llvm/lib/Support/Unix/Signals.inc
+++ b/llvm/lib/Support/Unix/Signals.inc
@@ -107,7 +107,7 @@ static void RegisterHandler(int Signal) {
struct sigaction NewHandler;
NewHandler.sa_handler = SignalHandler;
- NewHandler.sa_flags = SA_NODEFER|SA_RESETHAND;
+ NewHandler.sa_flags = SA_NODEFER | SA_RESETHAND | SA_ONSTACK;
sigemptyset(&NewHandler.sa_mask);
// Install the new handler, save the old one in RegisteredSignalInfo.
OpenPOWER on IntegriCloud