diff options
author | Vitaly Buka <vitalybuka@google.com> | 2017-08-07 07:12:34 +0000 |
---|---|---|
committer | Vitaly Buka <vitalybuka@google.com> | 2017-08-07 07:12:34 +0000 |
commit | 629047de8eb16d1d9b207d1f05a7747ff399c54e (patch) | |
tree | 5964aaee58a63123cb5897b22b62d5242ed4b8be /llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | |
parent | f20b9bc21829cbabdbf5fd646357a0990cefc7a6 (diff) | |
download | bcm5719-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.cpp | 3 |
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); |