9#ifndef LLVM_DEBUGINFO_CODEVIEW_MERGINGTYPETABLEBUILDER_H
10#define LLVM_DEBUGINFO_CODEVIEW_MERGINGTYPETABLEBUILDER_H
25struct LocallyHashedType;
27class ContinuationRecordBuilder;
49 std::optional<TypeIndex> getFirst()
override;
50 std::optional<TypeIndex> getNext(
TypeIndex Prev)
override;
72 return insertRecordBytes(Data);
This file defines the BumpPtrAllocator interface.
static std::string getTypeName(OverloadKind Kind, Type *Ty)
This file defines the DenseMap class.
static bool contains(SmallPtrSetImpl< ConstantExpr * > &Cache, ConstantExpr *Expr, Constant *C)
This file defines the SmallVector class.
static SymbolRef::Type getType(const Symbol *Sym)
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
Allocate memory in an ever growing pool, as if by bump-pointer.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
StringRef - Represent a constant reference to a string, i.e.
TypeIndex writeLeafType(T &Record)
BumpPtrAllocator & getAllocator()
~MergingTypeTableBuilder()
ArrayRef< uint8_t > serialize(T &Record)
An opaque object representing a hash code.
This is an optimization pass for GlobalISel generic memory operations.
auto size(R &&Range, std::enable_if_t< std::is_base_of< std::random_access_iterator_tag, typename std::iterator_traits< decltype(Range.begin())>::iterator_category >::value, void > *=nullptr)
Get the size of a range.