From: David Blaikie Date: Mon, 8 Jul 2013 17:33:10 +0000 (+0000) Subject: DebugInfo: Simplify Address Pool index handling. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=5ce4091a68936b94c1f8858a101e61e65f71a23b;p=oota-llvm.git DebugInfo: Simplify Address Pool index handling. Since the pool indexes are necessarily sequential and contiguous, just insert things in the right place rather than having to sort the sequence after the fact. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185842 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 401e67cf04e..6b06d8b99b3 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -2385,19 +2385,17 @@ void DwarfUnits::emitAddresses(const MCSection *AddrSection) { // Get all of the address pool entries and put them in an array by their ID so // we can sort them. - SmallVector, 64> Entries; + SmallVector Entries(AddressPool.size()); for (DenseMap::iterator I = AddressPool.begin(), E = AddressPool.end(); I != E; ++I) - Entries.push_back(std::make_pair(I->second, I->first)); - - array_pod_sort(Entries.begin(), Entries.end()); + Entries[I->second] = I->first; for (unsigned i = 0, e = Entries.size(); i != e; ++i) { // Emit an expression for reference from debug information entries. - if (const MCExpr *Expr = Entries[i].second) + if (const MCExpr *Expr = Entries[i]) Asm->OutStreamer.EmitValue(Expr, Asm->getDataLayout().getPointerSize()); else Asm->OutStreamer.EmitIntValue(0, Asm->getDataLayout().getPointerSize());