diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2016-11-07 21:02:11 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2016-11-07 21:02:11 +0000 |
commit | 5b5370aebe96de047ff2578ded998f476713fbea (patch) | |
tree | bb5d41ab952402433f6ebace033f129312bf1453 /clang/lib/CodeGen | |
parent | e06ef141fc7a7f3ee3bec84176659d022eb85f9a (diff) | |
download | bcm5719-llvm-5b5370aebe96de047ff2578ded998f476713fbea.tar.gz bcm5719-llvm-5b5370aebe96de047ff2578ded998f476713fbea.zip |
Use -fsanitize-recover instead of -mllvm -msan-keep-going: clang.
Summary: Use -fsanitize-recover instead of -mllvm -msan-keep-going: pass -fsanitize-recover value to msan.
Reviewers: eugenis
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D26354
Patch by Aleksey Shlyapnikov.
llvm-svn: 286148
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r-- | clang/lib/CodeGen/BackendUtil.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/BackendUtil.cpp b/clang/lib/CodeGen/BackendUtil.cpp index 367cace096a..7b832ab5639 100644 --- a/clang/lib/CodeGen/BackendUtil.cpp +++ b/clang/lib/CodeGen/BackendUtil.cpp @@ -200,7 +200,9 @@ static void addMemorySanitizerPass(const PassManagerBuilder &Builder, const PassManagerBuilderWrapper &BuilderWrapper = static_cast<const PassManagerBuilderWrapper&>(Builder); const CodeGenOptions &CGOpts = BuilderWrapper.getCGOpts(); - PM.add(createMemorySanitizerPass(CGOpts.SanitizeMemoryTrackOrigins)); + int TrackOrigins = CGOpts.SanitizeMemoryTrackOrigins; + bool Recover = CGOpts.SanitizeRecover.has(SanitizerKind::Memory); + PM.add(createMemorySanitizerPass(TrackOrigins, Recover)); // MemorySanitizer inserts complex instrumentation that mostly follows // the logic of the original code, but operates on "shadow" values. |