LLVM: include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9#ifndef LLVM_DEBUGINFO_CODEVIEW_APPENDINGTYPETABLEBUILDER_H

10#define LLVM_DEBUGINFO_CODEVIEW_APPENDINGTYPETABLEBUILDER_H

11

20#include

21

22namespace llvm {

24

26

28

31

32

34

35public:

38

39

40 std::optional getFirst() override;

48

49

52

54

58

63};

64

65}

66}

67

68#endif

This file defines the BumpPtrAllocator interface.

static std::string getTypeName(OverloadKind Kind, Type *Ty)

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),...

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.

uint32_t capacity() override

BumpPtrAllocator & getAllocator()

Definition AppendingTypeTableBuilder.h:53

std::optional< TypeIndex > getFirst() override

TypeIndex nextTypeIndex() const

std::optional< TypeIndex > getNext(TypeIndex Prev) override

TypeIndex insertRecordBytes(ArrayRef< uint8_t > &Record)

bool replaceType(TypeIndex &Index, CVType Data, bool Stabilize) override

TypeIndex writeLeafType(T &Record)

Definition AppendingTypeTableBuilder.h:59

~AppendingTypeTableBuilder() override

AppendingTypeTableBuilder(BumpPtrAllocator &Storage)

CVRecord< TypeLeafKind > CVType

This is an optimization pass for GlobalISel generic memory operations.

FunctionAddr VTableAddr uintptr_t uintptr_t Data

BumpPtrAllocatorImpl<> BumpPtrAllocator

The standard BumpPtrAllocator which just uses the default template parameters.