diff options
author | David Blaikie <dblaikie@gmail.com> | 2013-06-28 18:47:14 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2013-06-28 18:47:14 +0000 |
commit | 321d83ba9e6e4e99700dcfb96fdcebe758e51905 (patch) | |
tree | f9995b992551430b2ad0f265ff5dbda7459365d5 /lib | |
parent | 26ba4953091491989eb21feb68fef27ca3f280af (diff) | |
download | llvm-321d83ba9e6e4e99700dcfb96fdcebe758e51905.tar.gz llvm-321d83ba9e6e4e99700dcfb96fdcebe758e51905.tar.bz2 llvm-321d83ba9e6e4e99700dcfb96fdcebe758e51905.tar.xz |
DebugInfo: constify the AddressPool MCSymbol pointers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185188 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 20 | ||||
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfDebug.h | 5 |
2 files changed, 13 insertions, 12 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 44485c4bcf..a6d2b17e3b 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -247,8 +247,8 @@ unsigned DwarfUnits::getStringPoolIndex(StringRef Str) { return Entry.second; } -unsigned DwarfUnits::getAddrPoolIndex(MCSymbol *Sym) { - std::pair<MCSymbol*, unsigned> &Entry = AddressPool[Sym]; +unsigned DwarfUnits::getAddrPoolIndex(const MCSymbol *Sym) { + std::pair<const MCSymbol*, unsigned> &Entry = AddressPool[Sym]; if (Entry.first) return Entry.second; Entry.second = NextAddrPoolNumber++; @@ -2358,11 +2358,13 @@ void DwarfUnits::emitAddresses(const MCSection *AddrSection) { // Get all of the string pool entries and put them in an array by their ID so // we can sort them. - SmallVector<std::pair<unsigned, - std::pair<MCSymbol*, unsigned>* >, 64> Entries; + SmallVector<std::pair<unsigned, std::pair<const MCSymbol *, unsigned> *>, 64> + Entries; - for (DenseMap<MCSymbol*, std::pair<MCSymbol*, unsigned> >::iterator - I = AddressPool.begin(), E = AddressPool.end(); + for (DenseMap<const MCSymbol *, + std::pair<const MCSymbol *, unsigned> >::iterator + I = AddressPool.begin(), + E = AddressPool.end(); I != E; ++I) Entries.push_back(std::make_pair(I->second.second, &(I->second))); @@ -2370,10 +2372,8 @@ void DwarfUnits::emitAddresses(const MCSection *AddrSection) { for (unsigned i = 0, e = Entries.size(); i != e; ++i) { // Emit a label for reference from debug information entries. - MCSymbol *Sym = Entries[i].second->first; - if (Sym) - Asm->EmitLabelReference(Entries[i].second->first, - Asm->getDataLayout().getPointerSize()); + if (const MCSymbol *Sym = Entries[i].second->first) + Asm->EmitLabelReference(Sym, Asm->getDataLayout().getPointerSize()); else Asm->OutStreamer.EmitIntValue(0, Asm->getDataLayout().getPointerSize()); } diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.h b/lib/CodeGen/AsmPrinter/DwarfDebug.h index 6cc792b373..4a395a336d 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.h +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.h @@ -197,7 +197,8 @@ typedef StringMap<std::pair<MCSymbol*, unsigned>, // A Symbol->pair<Symbol, unsigned> mapping of addresses used by indirect // references. -typedef DenseMap<MCSymbol *, std::pair<MCSymbol *, unsigned> > AddrPool; +typedef DenseMap<const MCSymbol *, std::pair<const MCSymbol *, unsigned> > + AddrPool; /// \brief Collects and handles information specific to a particular /// collection of units. @@ -270,7 +271,7 @@ public: /// \brief Returns the index into the address pool with the given /// label/symbol. - unsigned getAddrPoolIndex(MCSymbol *); + unsigned getAddrPoolIndex(const MCSymbol *); /// \brief Returns the address pool. AddrPool *getAddrPool() { return &AddressPool; } |