From 8563a8d12f5ef5c433df829bbd7a170bcabffd64 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Fri, 19 Sep 2025 22:03:01 +0000 Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?= =?UTF-8?q?itial=20version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Created using spr 1.3.6 --- llvm/lib/Transforms/IPO/SampleProfile.cpp | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/llvm/lib/Transforms/IPO/SampleProfile.cpp b/llvm/lib/Transforms/IPO/SampleProfile.cpp index 000b3ccbb3cbc..964344e9f49d4 100644 --- a/llvm/lib/Transforms/IPO/SampleProfile.cpp +++ b/llvm/lib/Transforms/IPO/SampleProfile.cpp @@ -485,11 +485,11 @@ class SampleProfileLoader final : public SampleProfileLoaderBaseImpl { UseFlattenedProfile(UseFlattenedProfile) {} bool doInitialization(Module &M, FunctionAnalysisManager *FAM = nullptr); - bool runOnModule(Module &M, ModuleAnalysisManager *AM, + bool runOnModule(Module &M, ModuleAnalysisManager &AM, ProfileSummaryInfo *_PSI); protected: - bool runOnFunction(Function &F, ModuleAnalysisManager *AM); + bool runOnFunction(Function &F, ModuleAnalysisManager &AM); bool emitAnnotations(Function &F); ErrorOr getInstWeight(const Instruction &I) override; const FunctionSamples *findCalleeFunctionSamples(const CallBase &I) const; @@ -2160,7 +2160,7 @@ void SampleProfileLoader::removePseudoProbeInstsDiscriminator(Module &M) { } } -bool SampleProfileLoader::runOnModule(Module &M, ModuleAnalysisManager *AM, +bool SampleProfileLoader::runOnModule(Module &M, ModuleAnalysisManager &AM, ProfileSummaryInfo *_PSI) { GUIDToFuncNameMapper Mapper(M, *Reader, GUIDToFuncNameMap); @@ -2238,7 +2238,7 @@ bool SampleProfileLoader::runOnModule(Module &M, ModuleAnalysisManager *AM, return retval; } -bool SampleProfileLoader::runOnFunction(Function &F, ModuleAnalysisManager *AM) { +bool SampleProfileLoader::runOnFunction(Function &F, ModuleAnalysisManager &AM) { LLVM_DEBUG(dbgs() << "\n\nProcessing Function " << F.getName() << "\n"); DILocation2SampleMap.clear(); // By default the entry count is initialized to -1, which will be treated @@ -2290,15 +2290,10 @@ bool SampleProfileLoader::runOnFunction(Function &F, ModuleAnalysisManager *AM) if (!F.getEntryCount()) F.setEntryCount(ProfileCount(initialEntryCount, Function::PCT_Real)); std::unique_ptr OwnedORE; - if (AM) { - auto &FAM = - AM->getResult(*F.getParent()) - .getManager(); - ORE = &FAM.getResult(F); - } else { - OwnedORE = std::make_unique(&F); - ORE = OwnedORE.get(); - } + auto &FAM = + AM.getResult(*F.getParent()) + .getManager(); + ORE = &FAM.getResult(F); if (FunctionSamples::ProfileIsCS) Samples = ContextTracker->getBaseSamplesFor(F); @@ -2363,7 +2358,7 @@ PreservedAnalyses SampleProfileLoaderPass::run(Module &M, return PreservedAnalyses::all(); ProfileSummaryInfo *PSI = &AM.getResult(M); - if (!SampleLoader.runOnModule(M, &AM, PSI)) + if (!SampleLoader.runOnModule(M, AM, PSI)) return PreservedAnalyses::all(); return PreservedAnalyses::none(); From 4d322f0c754e65676012de01b030baed282cb1d0 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Fri, 19 Sep 2025 22:08:54 +0000 Subject: [PATCH 2/2] formatting Created using spr 1.3.6 --- llvm/lib/Transforms/IPO/SampleProfile.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/llvm/lib/Transforms/IPO/SampleProfile.cpp b/llvm/lib/Transforms/IPO/SampleProfile.cpp index 964344e9f49d4..5bc7e34938127 100644 --- a/llvm/lib/Transforms/IPO/SampleProfile.cpp +++ b/llvm/lib/Transforms/IPO/SampleProfile.cpp @@ -2238,7 +2238,8 @@ bool SampleProfileLoader::runOnModule(Module &M, ModuleAnalysisManager &AM, return retval; } -bool SampleProfileLoader::runOnFunction(Function &F, ModuleAnalysisManager &AM) { +bool SampleProfileLoader::runOnFunction(Function &F, + ModuleAnalysisManager &AM) { LLVM_DEBUG(dbgs() << "\n\nProcessing Function " << F.getName() << "\n"); DILocation2SampleMap.clear(); // By default the entry count is initialized to -1, which will be treated @@ -2290,9 +2291,8 @@ bool SampleProfileLoader::runOnFunction(Function &F, ModuleAnalysisManager &AM) if (!F.getEntryCount()) F.setEntryCount(ProfileCount(initialEntryCount, Function::PCT_Real)); std::unique_ptr OwnedORE; - auto &FAM = - AM.getResult(*F.getParent()) - .getManager(); + auto &FAM = AM.getResult(*F.getParent()) + .getManager(); ORE = &FAM.getResult(F); if (FunctionSamples::ProfileIsCS)