diff options
author | dim <dim@FreeBSD.org> | 2015-05-27 20:26:41 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-05-27 20:26:41 +0000 |
commit | 5ef8fd3549d38e883a31881636be3dc2a275de20 (patch) | |
tree | bd13a22d9db57ccf3eddbc07b32c18109521d050 /contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h | |
parent | 77794ebe2d5718eb502c93ec32f8ccae4d8a0b7b (diff) | |
parent | 782067d0278612ee75d024b9b135c221c327e9e8 (diff) | |
download | FreeBSD-src-5ef8fd3549d38e883a31881636be3dc2a275de20.zip FreeBSD-src-5ef8fd3549d38e883a31881636be3dc2a275de20.tar.gz |
Merge llvm trunk r238337 from ^/vendor/llvm/dist, resolve conflicts, and
preserve our customizations, where necessary.
Diffstat (limited to 'contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h')
-rw-r--r-- | contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h b/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h index 63e3412..93a1684 100644 --- a/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h +++ b/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h @@ -11,12 +11,13 @@ #define LLVM_LIB_CODEGEN_ASMPRINTER_DWARFSTRINGPOOL_H #include "llvm/ADT/StringMap.h" -#include "llvm/CodeGen/AsmPrinter.h" +#include "llvm/CodeGen/DwarfStringPoolEntry.h" #include "llvm/Support/Allocator.h" #include <utility> namespace llvm { +class AsmPrinter; class MCSymbol; class MCSection; class StringRef; @@ -25,25 +26,24 @@ class StringRef; // A String->Symbol mapping of strings used by indirect // references. class DwarfStringPool { - StringMap<std::pair<MCSymbol *, unsigned>, BumpPtrAllocator &> Pool; + typedef DwarfStringPoolEntry EntryTy; + StringMap<EntryTy, BumpPtrAllocator &> Pool; StringRef Prefix; + unsigned NumBytes = 0; + bool ShouldCreateSymbols; public: - DwarfStringPool(BumpPtrAllocator &A, AsmPrinter &Asm, StringRef Prefix) - : Pool(A), Prefix(Prefix) {} + typedef DwarfStringPoolEntryRef EntryRef; - void emit(AsmPrinter &Asm, const MCSection *StrSection, - const MCSection *OffsetSection = nullptr); + DwarfStringPool(BumpPtrAllocator &A, AsmPrinter &Asm, StringRef Prefix); - /// \brief Returns an entry into the string pool with the given - /// string text. - MCSymbol *getSymbol(AsmPrinter &Asm, StringRef Str); - - /// \brief Returns the index into the string pool with the given - /// string text. - unsigned getIndex(AsmPrinter &Asm, StringRef Str); + void emit(AsmPrinter &Asm, MCSection *StrSection, + MCSection *OffsetSection = nullptr); bool empty() const { return Pool.empty(); } + + /// Get a reference to an entry in the string pool. + EntryRef getEntry(AsmPrinter &Asm, StringRef Str); }; } #endif |