diff options
author | Will Dietz <wdietz2@illinois.edu> | 2013-01-18 11:30:38 +0000 |
---|---|---|
committer | Will Dietz <wdietz2@illinois.edu> | 2013-01-18 11:30:38 +0000 |
commit | f54319c891d806e410ac09caac35462cf95b8cce (patch) | |
tree | 195d8af1cea50e7be3e52d45a6c116ed7c578ef3 /clang/lib/CodeGen/BackendUtil.cpp | |
parent | 63c36bbe5e0ae8d64df8c2a3be6c0b072febdc9a (diff) | |
download | llvm-f54319c891d806e410ac09caac35462cf95b8cce.zip llvm-f54319c891d806e410ac09caac35462cf95b8cce.tar.gz llvm-f54319c891d806e410ac09caac35462cf95b8cce.tar.bz2 |
[ubsan] Add support for -fsanitize-blacklist
llvm-svn: 172808
Diffstat (limited to 'clang/lib/CodeGen/BackendUtil.cpp')
-rw-r--r-- | clang/lib/CodeGen/BackendUtil.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/clang/lib/CodeGen/BackendUtil.cpp b/clang/lib/CodeGen/BackendUtil.cpp index d343207..8a3ee39 100644 --- a/clang/lib/CodeGen/BackendUtil.cpp +++ b/clang/lib/CodeGen/BackendUtil.cpp @@ -164,11 +164,11 @@ static void addAddressSanitizerPasses(const PassManagerBuilder &Builder, static_cast<const PassManagerBuilderWrapper&>(Builder); const CodeGenOptions &CGOpts = BuilderWrapper.getCGOpts(); const LangOptions &LangOpts = BuilderWrapper.getLangOpts(); - PM.add(createAddressSanitizerFunctionPass(LangOpts.SanitizeInitOrder, - LangOpts.SanitizeUseAfterReturn, - LangOpts.SanitizeUseAfterScope, + PM.add(createAddressSanitizerFunctionPass(LangOpts.Sanitize.InitOrder, + LangOpts.Sanitize.UseAfterReturn, + LangOpts.Sanitize.UseAfterScope, CGOpts.SanitizerBlacklistFile)); - PM.add(createAddressSanitizerModulePass(LangOpts.SanitizeInitOrder, + PM.add(createAddressSanitizerModulePass(LangOpts.Sanitize.InitOrder, CGOpts.SanitizerBlacklistFile)); } @@ -218,28 +218,28 @@ void EmitAssemblyHelper::CreatePasses(TargetMachine *TM) { addObjCARCOptPass); } - if (LangOpts.SanitizeBounds) { + if (LangOpts.Sanitize.Bounds) { PMBuilder.addExtension(PassManagerBuilder::EP_ScalarOptimizerLate, addBoundsCheckingPass); PMBuilder.addExtension(PassManagerBuilder::EP_EnabledOnOptLevel0, addBoundsCheckingPass); } - if (LangOpts.SanitizeAddress) { + if (LangOpts.Sanitize.Address) { PMBuilder.addExtension(PassManagerBuilder::EP_OptimizerLast, addAddressSanitizerPasses); PMBuilder.addExtension(PassManagerBuilder::EP_EnabledOnOptLevel0, addAddressSanitizerPasses); } - if (LangOpts.SanitizeMemory) { + if (LangOpts.Sanitize.Memory) { PMBuilder.addExtension(PassManagerBuilder::EP_OptimizerLast, addMemorySanitizerPass); PMBuilder.addExtension(PassManagerBuilder::EP_EnabledOnOptLevel0, addMemorySanitizerPass); } - if (LangOpts.SanitizeThread) { + if (LangOpts.Sanitize.Thread) { PMBuilder.addExtension(PassManagerBuilder::EP_OptimizerLast, addThreadSanitizerPass); PMBuilder.addExtension(PassManagerBuilder::EP_EnabledOnOptLevel0, |