summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
diff options
context:
space:
mode:
authorAlexey Samsonov <vonosmas@gmail.com>2015-02-05 19:39:20 +0000
committerAlexey Samsonov <vonosmas@gmail.com>2015-02-05 19:39:20 +0000
commit19763c48df28503fc15eccaad4043d0e731d66a3 (patch)
treec36a259ae2c421c6cb726404d1159b7943addd3a /llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
parent24f3f65196ec1afb528d2924fde0ed51789e5e36 (diff)
downloadbcm5719-llvm-19763c48df28503fc15eccaad4043d0e731d66a3.tar.gz
bcm5719-llvm-19763c48df28503fc15eccaad4043d0e731d66a3.zip
[ASan] Enable -asan-stack-dynamic-alloca by default.
By default, store all local variables in dynamic alloca instead of static one. It reduces the stack space usage in use-after-return mode (dynamic alloca will not be called if the local variables are stored in a fake stack), and improves the debug info quality for local variables (they will not be described relatively to %rbp/%rsp, which are assumed to be clobbered by function calls). llvm-svn: 228336
Diffstat (limited to 'llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp')
-rw-r--r--llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
index 14289b114a9..3d14d8f0cfa 100644
--- a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
+++ b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
@@ -189,7 +189,7 @@ static cl::opt<bool> ClCheckLifetime("asan-check-lifetime",
static cl::opt<bool> ClDynamicAllocaStack(
"asan-stack-dynamic-alloca",
cl::desc("Use dynamic alloca to represent stack variables"), cl::Hidden,
- cl::init(false));
+ cl::init(true));
// Debug flags.
static cl::opt<int> ClDebug("asan-debug", cl::desc("debug"), cl::Hidden,
OpenPOWER on IntegriCloud