Author: Marco Elver Date: 2021-05-25T12:57:14+02:00 New Revision: ca6df734069ae590d1632e920ceba03bea317549
URL: https://github.com/llvm/llvm-project/commit/ca6df734069ae590d1632e920ceba03bea317549 DIFF: https://github.com/llvm/llvm-project/commit/ca6df734069ae590d1632e920ceba03bea317549.diff LOG: [NFC][CodeGenOptions] Refactor checking SanitizeCoverage options Refactor checking SanitizeCoverage options into CodeGenOptions::hasSanitizeCoverage(). Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D102927 Added: Modified: clang/include/clang/Basic/CodeGenOptions.h clang/lib/CodeGen/BackendUtil.cpp Removed: ################################################################################ diff --git a/clang/include/clang/Basic/CodeGenOptions.h b/clang/include/clang/Basic/CodeGenOptions.h index c77c34a8a57d6..617c255641efd 100644 --- a/clang/include/clang/Basic/CodeGenOptions.h +++ b/clang/include/clang/Basic/CodeGenOptions.h @@ -452,6 +452,12 @@ class CodeGenOptions : public CodeGenOptionsBase { bool hasMaybeUnusedDebugInfo() const { return getDebugInfo() >= codegenoptions::UnusedTypeInfo; } + + // Check if any one of SanitizeCoverage* is enabled. + bool hasSanitizeCoverage() const { + return SanitizeCoverageType || SanitizeCoverageIndirectCalls || + SanitizeCoverageTraceCmp; + } }; } // end namespace clang diff --git a/clang/lib/CodeGen/BackendUtil.cpp b/clang/lib/CodeGen/BackendUtil.cpp index a2d219e92d6b0..ca1067dbb79f5 100644 --- a/clang/lib/CodeGen/BackendUtil.cpp +++ b/clang/lib/CodeGen/BackendUtil.cpp @@ -727,9 +727,7 @@ void EmitAssemblyHelper::CreatePasses(legacy::PassManager &MPM, addBoundsCheckingPass); } - if (CodeGenOpts.SanitizeCoverageType || - CodeGenOpts.SanitizeCoverageIndirectCalls || - CodeGenOpts.SanitizeCoverageTraceCmp) { + if (CodeGenOpts.hasSanitizeCoverage()) { PMBuilder.addExtension(PassManagerBuilder::EP_OptimizerLast, addSanitizerCoveragePass); PMBuilder.addExtension(PassManagerBuilder::EP_EnabledOnOptLevel0, @@ -1099,9 +1097,7 @@ static void addSanitizers(const Triple &TargetTriple, const LangOptions &LangOpts, PassBuilder &PB) { PB.registerOptimizerLastEPCallback([&](ModulePassManager &MPM, PassBuilder::OptimizationLevel Level) { - if (CodeGenOpts.SanitizeCoverageType || - CodeGenOpts.SanitizeCoverageIndirectCalls || - CodeGenOpts.SanitizeCoverageTraceCmp) { + if (CodeGenOpts.hasSanitizeCoverage()) { auto SancovOpts = getSancovOptsFromCGOpts(CodeGenOpts); MPM.addPass(ModuleSanitizerCoveragePass( SancovOpts, CodeGenOpts.SanitizeCoverageAllowlistFiles, _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits