diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-08-13 01:55:43 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-08-13 01:55:43 +0000 |
commit | 3cdfb4afbbe213bf82c260505bf9729fd6036190 (patch) | |
tree | 106479e0ceb11e89cb932d97b33b8916ffefa4dc /tools/llvm-prof | |
parent | 01889caf73a2faa3b77142851faa09abad5c73b0 (diff) |
Update llvm-prof for ProfileInfo API changes.
- Patch by Erick Tryzelaar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78880 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-prof')
-rw-r--r-- | tools/llvm-prof/llvm-prof.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/tools/llvm-prof/llvm-prof.cpp b/tools/llvm-prof/llvm-prof.cpp index c370e6bee7..f9f109df50 100644 --- a/tools/llvm-prof/llvm-prof.cpp +++ b/tools/llvm-prof/llvm-prof.cpp @@ -58,10 +58,10 @@ namespace { // PairSecondSort - A sorting predicate to sort by the second element of a pair. template<class T> struct PairSecondSortReverse - : public std::binary_function<std::pair<T, unsigned>, - std::pair<T, unsigned>, bool> { - bool operator()(const std::pair<T, unsigned> &LHS, - const std::pair<T, unsigned> &RHS) const { + : public std::binary_function<std::pair<T, double>, + std::pair<T, double>, bool> { + bool operator()(const std::pair<T, double> &LHS, + const std::pair<T, double> &RHS) const { return LHS.second > RHS.second; } }; @@ -98,7 +98,7 @@ namespace { virtual void emitBasicBlockEndAnnot(const BasicBlock *BB, raw_ostream &OS) { // Figure out how many times each successor executed. - std::vector<std::pair<ProfileInfo::Edge, unsigned> > SuccCounts; + std::vector<std::pair<ProfileInfo::Edge, double> > SuccCounts; const TerminatorInst *TI = BB->getTerminator(); for (unsigned s = 0, e = TI->getNumSuccessors(); s != e; ++s) { @@ -151,8 +151,8 @@ bool ProfileInfoPrinterPass::runOnModule(Module &M) { // the command line, for now, just keep things simple. // Emit the most frequent function table... - std::vector<std::pair<Function*, unsigned> > FunctionCounts; - std::vector<std::pair<BasicBlock*, unsigned> > Counts; + std::vector<std::pair<Function*, double> > FunctionCounts; + std::vector<std::pair<BasicBlock*, double> > Counts; for (Module::iterator FI = M.begin(), FE = M.end(); FI != FE; ++FI) { if (FI->isDeclaration()) continue; double w = ignoreMissing(PI.getExecutionCount(FI)); @@ -168,7 +168,7 @@ bool ProfileInfoPrinterPass::runOnModule(Module &M) { sort(FunctionCounts.begin(), FunctionCounts.end(), PairSecondSortReverse<Function*>()); - uint64_t TotalExecutions = 0; + double TotalExecutions = 0; for (unsigned i = 0, e = FunctionCounts.size(); i != e; ++i) TotalExecutions += FunctionCounts[i].second; |