Use more efficient API of SmallVector/array_pod_sort

for sorting (radar 8076356).

llvm-svn: 106453
This commit is contained in:
Fariborz Jahanian 2010-06-21 19:49:38 +00:00
parent dd41bba517
commit 090e4e5773
1 changed files with 3 additions and 3 deletions

View File

@ -193,9 +193,9 @@ CodeGenModule::EmitCXXGlobalInitFunc() {
CreateGlobalInitOrDestructFunction(*this, FTy, "_GLOBAL__I_a");
if (!PrioritizedCXXGlobalInits.empty()) {
std::vector<llvm::Constant*> LocalCXXGlobalInits;
std::sort(PrioritizedCXXGlobalInits.begin(),
PrioritizedCXXGlobalInits.end());
llvm::SmallVector<llvm::Constant*, 8> LocalCXXGlobalInits;
llvm::array_pod_sort(PrioritizedCXXGlobalInits.begin(),
PrioritizedCXXGlobalInits.end());
for (unsigned i = 0; i < PrioritizedCXXGlobalInits.size(); i++) {
llvm::Function *Fn = PrioritizedCXXGlobalInits[i].second;
LocalCXXGlobalInits.push_back(Fn);