using namespace llvm;
-static std::pair<MCSymbol *, unsigned> &
-getEntry(AsmPrinter &Asm,
- StringMap<std::pair<MCSymbol *, unsigned>, BumpPtrAllocator &> &Pool,
- StringRef Prefix, StringRef Str) {
+std::pair<MCSymbol *, unsigned> &DwarfStringPool::getEntry(AsmPrinter &Asm,
+ StringRef Str) {
std::pair<MCSymbol *, unsigned> &Entry = Pool[Str];
if (!Entry.first) {
Entry.second = Pool.size() - 1;
return Entry;
}
-MCSymbol *DwarfStringPool::getSymbol(AsmPrinter &Asm, StringRef Str) {
- return getEntry(Asm, Pool, Prefix, Str).first;
-}
-
-unsigned DwarfStringPool::getIndex(AsmPrinter &Asm, StringRef Str) {
- return getEntry(Asm, Pool, Prefix, Str).second;
-}
-
void DwarfStringPool::emit(AsmPrinter &Asm, MCSection *StrSection,
MCSection *OffsetSection) {
if (Pool.empty())
/// \brief Returns an entry into the string pool with the given
/// string text.
- MCSymbol *getSymbol(AsmPrinter &Asm, StringRef Str);
+ MCSymbol *getSymbol(AsmPrinter &Asm, StringRef Str) {
+ return getEntry(Asm, Str).first;
+ }
/// \brief Returns the index into the string pool with the given
/// string text.
- unsigned getIndex(AsmPrinter &Asm, StringRef Str);
+ unsigned getIndex(AsmPrinter &Asm, StringRef Str) {
+ return getEntry(Asm, Str).second;
+ }
bool empty() const { return Pool.empty(); }
+
+private:
+ std::pair<MCSymbol *, unsigned> &getEntry(AsmPrinter &Asm, StringRef Str);
};
}
#endif