summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
diff options
context:
space:
mode:
authorVitaly Buka <vitalybuka@google.com>2017-08-07 07:12:34 +0000
committerVitaly Buka <vitalybuka@google.com>2017-08-07 07:12:34 +0000
commit629047de8eb16d1d9b207d1f05a7747ff399c54e (patch)
tree5964aaee58a63123cb5897b22b62d5242ed4b8be /llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
parentf20b9bc21829cbabdbf5fd646357a0990cefc7a6 (diff)
downloadbcm5719-llvm-629047de8eb16d1d9b207d1f05a7747ff399c54e.tar.gz
bcm5719-llvm-629047de8eb16d1d9b207d1f05a7747ff399c54e.zip
[asan] Disable checking of arguments passed by value for --asan-force-dynamic-shadow
Fails with "Instruction does not dominate all uses!" llvm-svn: 310241
Diffstat (limited to 'llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp')
-rw-r--r--llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
index 057f746e052..d437ae93f79 100644
--- a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
+++ b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
@@ -756,7 +756,8 @@ struct FunctionStackPoisoner : public InstVisitor<FunctionStackPoisoner> {
bool runOnFunction() {
if (!ClStack) return false;
- if (ClRedzoneByvalArgs) copyArgsPassedByValToAllocas();
+ if (ClRedzoneByvalArgs && !ClForceDynamicShadow)
+ copyArgsPassedByValToAllocas();
// Collect alloca, ret, lifetime instructions etc.
for (BasicBlock *BB : depth_first(&F.getEntryBlock())) visit(*BB);
OpenPOWER on IntegriCloud