diff options
author | Xinliang David Li <davidxl@google.com> | 2016-05-27 23:20:16 +0000 |
---|---|---|
committer | Xinliang David Li <davidxl@google.com> | 2016-05-27 23:20:16 +0000 |
commit | d38392ecd619f983baef5082e9e941904703d556 (patch) | |
tree | 3b793f39a64a383ea18b37904c278d7c0e965daa /llvm/lib/Transforms/IPO/SampleProfile.cpp | |
parent | ea2aef4a1d4beded20033fa4fc223936c7ffe5d8 (diff) | |
download | bcm5719-llvm-d38392ecd619f983baef5082e9e941904703d556.tar.gz bcm5719-llvm-d38392ecd619f983baef5082e9e941904703d556.zip |
[PM] Port the Sample FDO to new PM (part-2)
llvm-svn: 271072
Diffstat (limited to 'llvm/lib/Transforms/IPO/SampleProfile.cpp')
-rw-r--r-- | llvm/lib/Transforms/IPO/SampleProfile.cpp | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/llvm/lib/Transforms/IPO/SampleProfile.cpp b/llvm/lib/Transforms/IPO/SampleProfile.cpp index 6c0ce76be6d..68310687f82 100644 --- a/llvm/lib/Transforms/IPO/SampleProfile.cpp +++ b/llvm/lib/Transforms/IPO/SampleProfile.cpp @@ -22,6 +22,7 @@ // //===----------------------------------------------------------------------===// +#include "llvm/Transforms/SampleProfile.h" #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallSet.h" @@ -34,8 +35,8 @@ #include "llvm/IR/Dominators.h" #include "llvm/IR/Function.h" #include "llvm/IR/InstIterator.h" -#include "llvm/IR/IntrinsicInst.h" #include "llvm/IR/Instructions.h" +#include "llvm/IR/IntrinsicInst.h" #include "llvm/IR/LLVMContext.h" #include "llvm/IR/MDBuilder.h" #include "llvm/IR/Metadata.h" @@ -1225,10 +1226,8 @@ bool SampleProfileLoader::emitAnnotations(Function &F) { } char SampleProfileLoaderLegacyPass::ID = 0; -INITIALIZE_PASS_BEGIN(SampleProfileLoaderLegacyPass, "sample-profile", - "Sample Profile loader", false, false) -INITIALIZE_PASS_END(SampleProfileLoaderLegacyPass, "sample-profile", - "Sample Profile loader", false, false) +INITIALIZE_PASS(SampleProfileLoaderLegacyPass, "sample-profile", + "Sample Profile loader", false, false) bool SampleProfileLoader::doInitialization(Module &M) { auto &Ctx = M.getContext(); @@ -1279,3 +1278,16 @@ bool SampleProfileLoader::runOnFunction(Function &F) { return emitAnnotations(F); return false; } + +PreservedAnalyses SampleProfileLoaderPass::run(Module &M, + AnalysisManager<Module> &AM) { + + SampleProfileLoader SampleLoader(SampleProfileFile); + + SampleLoader.doInitialization(M); + + if (!SampleLoader.runOnModule(M)) + return PreservedAnalyses::all(); + + return PreservedAnalyses::none(); +} |