9#ifndef LLVM_CODEGEN_NONRELOCATABLESTRINGPOOL_H
10#define LLVM_CODEGEN_NONRELOCATABLESTRINGPOOL_H
58 unsigned NumEntries = 0;
62template <
typename T,
typename S>
class StrongType :
public T {
64 template <
typename... Args>
This file defines the BumpPtrAllocator interface.
static GCRegistry::Add< ErlangGC > A("erlang", "erlang-compatible garbage collector")
DwarfStringPoolEntryRef: Dwarf string pool entry reference.
uint64_t getOffset() const
A string table that doesn't need relocations.
DwarfStringPoolEntryRef getEntry(StringRef S)
std::vector< DwarfStringPoolEntryRef > getEntriesForEmission() const
Return the list of strings to be emitted.
StringMap< DwarfStringPoolEntry, BumpPtrAllocator > MapTy
Entries are stored into the StringMap and simply linked together through the second element of this p...
NonRelocatableStringpool(bool PutEmptyString=false)
StringRef internString(StringRef S)
Get permanent storage for S (but do not necessarily emit S in the output section).
uint64_t getStringOffset(StringRef S)
Get the offset of string S in the string table.
StringRef - Represent a constant reference to a string, i.e.
Helper for making strong types.
This is an optimization pass for GlobalISel generic memory operations.
Implement std::hash so that hash_code can be used in STL containers.
It's very easy to introduce bugs by passing the wrong string pool.