[poolalloc] r238381 - CallTargets: Actually erase duplicate callee entries once identified.
Will Dietz
wdietz2 at illinois.edu
Wed May 27 16:33:24 PDT 2015
Author: wdietz2
Date: Wed May 27 18:33:24 2015
New Revision: 238381
URL: http://llvm.org/viewvc/llvm-project?rev=238381&view=rev
Log:
CallTargets: Actually erase duplicate callee entries once identified.
Also, use same comparator for unique() determination as used when doing
original sort.
Modified:
poolalloc/trunk/lib/DSA/CallTargets.cpp
Modified: poolalloc/trunk/lib/DSA/CallTargets.cpp
URL: http://llvm.org/viewvc/llvm-project/poolalloc/trunk/lib/DSA/CallTargets.cpp?rev=238381&r1=238380&r2=238381&view=diff
==============================================================================
--- poolalloc/trunk/lib/DSA/CallTargets.cpp (original)
+++ poolalloc/trunk/lib/DSA/CallTargets.cpp Wed May 27 18:33:24 2015
@@ -166,11 +166,13 @@ bool CallTargetFinder<dsa>::runOnModule(
// Sort callees alphabetically, remove duplicates
for(auto &i: IndMap) {
auto &callees = i.second;
- std::sort(callees.begin(), callees.end(),
- [](const Function *a, const Function *b) {
- return a->getName() < b->getName();
- });
- std::unique(callees.begin(), callees.end());
+ auto FuncNameCmp = [](const Function *a, const Function *b) {
+ return a->getName() < b->getName();
+ };
+
+ std::sort(callees.begin(), callees.end(), FuncNameCmp);
+ callees.erase(std::unique(callees.begin(), callees.end(), FuncNameCmp),
+ callees.end());
}
return false;
More information about the llvm-commits
mailing list