From 0bdae251223e2fcd87ccc9f903540eb5ab7cd04f Mon Sep 17 00:00:00 2001 From: Mircea Trofin Date: Thu, 15 Aug 2024 11:44:33 -0700 Subject: [PATCH] [nfc][ctx_prof] Remove the need for `PassBuilder` to know about `UseCtxProfile` --- llvm/include/llvm/Analysis/CtxProfAnalysis.h | 2 +- llvm/lib/Analysis/CtxProfAnalysis.cpp | 3 +++ llvm/lib/Passes/PassBuilder.cpp | 2 -- llvm/lib/Passes/PassRegistry.def | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/llvm/include/llvm/Analysis/CtxProfAnalysis.h b/llvm/include/llvm/Analysis/CtxProfAnalysis.h index f0e2aeb0f92f7..d0fb99fe1966a 100644 --- a/llvm/include/llvm/Analysis/CtxProfAnalysis.h +++ b/llvm/include/llvm/Analysis/CtxProfAnalysis.h @@ -79,7 +79,7 @@ class CtxProfAnalysis : public AnalysisInfoMixin { public: static AnalysisKey Key; - explicit CtxProfAnalysis(StringRef Profile) : Profile(Profile) {}; + explicit CtxProfAnalysis(StringRef Profile = ""); using Result = PGOContextualProfile; diff --git a/llvm/lib/Analysis/CtxProfAnalysis.cpp b/llvm/lib/Analysis/CtxProfAnalysis.cpp index 7b4666b29a193..d0ccf4ba537f8 100644 --- a/llvm/lib/Analysis/CtxProfAnalysis.cpp +++ b/llvm/lib/Analysis/CtxProfAnalysis.cpp @@ -96,6 +96,9 @@ GlobalValue::GUID AssignGUIDPass::getGUID(const Function &F) { } AnalysisKey CtxProfAnalysis::Key; +CtxProfAnalysis::CtxProfAnalysis(StringRef Profile) + : Profile(Profile.empty() ? UseCtxProfile : Profile) {} + PGOContextualProfile CtxProfAnalysis::run(Module &M, ModuleAnalysisManager &MAM) { ErrorOr> MB = MemoryBuffer::getFile(Profile); diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp index c528863d1870a..3200767282b22 100644 --- a/llvm/lib/Passes/PassBuilder.cpp +++ b/llvm/lib/Passes/PassBuilder.cpp @@ -334,8 +334,6 @@ cl::opt PrintPipelinePasses( "(best-effort only).")); } // namespace llvm -extern cl::opt UseCtxProfile; - AnalysisKey NoOpModuleAnalysis::Key; AnalysisKey NoOpCGSCCAnalysis::Key; AnalysisKey NoOpFunctionAnalysis::Key; diff --git a/llvm/lib/Passes/PassRegistry.def b/llvm/lib/Passes/PassRegistry.def index 18f4aa19224da..442c972fc616f 100644 --- a/llvm/lib/Passes/PassRegistry.def +++ b/llvm/lib/Passes/PassRegistry.def @@ -20,7 +20,7 @@ #endif MODULE_ANALYSIS("callgraph", CallGraphAnalysis()) MODULE_ANALYSIS("collector-metadata", CollectorMetadataAnalysis()) -MODULE_ANALYSIS("ctx-prof-analysis", CtxProfAnalysis(UseCtxProfile)) +MODULE_ANALYSIS("ctx-prof-analysis", CtxProfAnalysis()) MODULE_ANALYSIS("dxil-metadata", DXILMetadataAnalysis()) MODULE_ANALYSIS("dxil-resource", DXILResourceAnalysis()) MODULE_ANALYSIS("inline-advisor", InlineAdvisorAnalysis())