#include "llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/DebugInfo/PDB/Native/Hash.h"
#include "llvm/DebugInfo/PDB/Native/RawTypes.h"
#include "llvm/Support/BinaryStreamWriter.h"
#include "llvm/Support/Endian.h"
#include "llvm/Support/TimeProfiler.h"
#include <map>
usingnamespacellvm;
usingnamespacellvm::msf;
usingnamespacellvm::support;
usingnamespacellvm::support::endian;
usingnamespacellvm::pdb;
StringTableHashTraits::StringTableHashTraits(PDBStringTableBuilder &Table)
: … { … }
uint32_t StringTableHashTraits::hashLookupKey(StringRef S) const { … }
StringRef StringTableHashTraits::storageKeyToLookupKey(uint32_t Offset) const { … }
uint32_t StringTableHashTraits::lookupKeyToStorageKey(StringRef S) { … }
uint32_t PDBStringTableBuilder::insert(StringRef S) { … }
uint32_t PDBStringTableBuilder::getIdForString(StringRef S) const { … }
StringRef PDBStringTableBuilder::getStringForId(uint32_t Id) const { … }
static uint32_t computeBucketCount(uint32_t NumStrings) { … }
uint32_t PDBStringTableBuilder::calculateHashTableSize() const { … }
uint32_t PDBStringTableBuilder::calculateSerializedSize() const { … }
void PDBStringTableBuilder::setStrings(
const codeview::DebugStringTableSubsection &Strings) { … }
Error PDBStringTableBuilder::writeHeader(BinaryStreamWriter &Writer) const { … }
Error PDBStringTableBuilder::writeStrings(BinaryStreamWriter &Writer) const { … }
Error PDBStringTableBuilder::writeHashTable(BinaryStreamWriter &Writer) const { … }
Error PDBStringTableBuilder::writeEpilogue(BinaryStreamWriter &Writer) const { … }
Error PDBStringTableBuilder::commit(BinaryStreamWriter &Writer) const { … }