LLVM
8.0.1
|
#include "llvm/DebugInfo/PDB/UDTLayout.h"
Protected Member Functions | |
bool | hasVBPtrAtOffset (uint32_t Off) const |
void | initializeChildren (const PDBSymbol &Sym) |
void | addChildToLayout (std::unique_ptr< LayoutItemBase > Child) |
Protected Attributes | |
uint32_t | DirectVBaseCount = 0 |
UniquePtrVector< PDBSymbol > | Other |
UniquePtrVector< PDBSymbolFunc > | Funcs |
UniquePtrVector< LayoutItemBase > | ChildStorage |
std::vector< LayoutItemBase * > | LayoutItems |
std::vector< BaseClassLayout * > | AllBases |
ArrayRef< BaseClassLayout * > | NonVirtualBases |
ArrayRef< BaseClassLayout * > | VirtualBases |
VTableLayoutItem * | VTable = nullptr |
VBPtrLayoutItem * | VBPtr = nullptr |
Protected Attributes inherited from llvm::pdb::LayoutItemBase | |
const PDBSymbol * | Symbol = nullptr |
const UDTLayoutBase * | Parent = nullptr |
BitVector | UsedBytes |
std::string | Name |
uint32_t | OffsetInParent = 0 |
uint32_t | SizeOf = 0 |
uint32_t | LayoutSize = 0 |
bool | IsElided = false |
Definition at line 111 of file UDTLayout.h.
UDTLayoutBase::UDTLayoutBase | ( | const UDTLayoutBase * | Parent, |
const PDBSymbol & | Sym, | ||
const std::string & | Name, | ||
uint32_t | OffsetInParent, | ||
uint32_t | Size, | ||
bool | IsElided | ||
) |
Definition at line 105 of file UDTLayout.cpp.
References initializeChildren(), llvm::pdb::LayoutItemBase::LayoutSize, llvm::BitVector::reset(), llvm::BitVector::resize(), and llvm::pdb::LayoutItemBase::UsedBytes.
|
protected |
Definition at line 278 of file UDTLayout.cpp.
References ChildStorage, llvm::BitVector::count(), llvm::pdb::LayoutItemBase::getOffsetInParent(), LayoutItems, llvm::BitVector::resize(), llvm::BitVector::size(), llvm::upper_bound(), and llvm::pdb::LayoutItemBase::UsedBytes.
Referenced by initializeChildren().
|
inline |
Definition at line 121 of file UDTLayout.h.
|
inline |
Definition at line 124 of file UDTLayout.h.
|
inline |
Definition at line 125 of file UDTLayout.h.
Definition at line 268 of file UDTLayout.cpp.
References AllBases, llvm::ARCISD::BL, llvm::pdb::LayoutItemBase::getOffsetInParent(), and VBPtr.
Referenced by initializeChildren().
Definition at line 166 of file UDTLayout.cpp.
References addChildToLayout(), AllBases, assert(), llvm::ARCISD::BL, llvm::pdb::Data, llvm::BitVector::find_last(), llvm::pdb::PDBSymbol::findAllChildren(), Funcs, hasVBPtrAtOffset(), llvm::pdb::LayoutItemBase::LayoutSize, llvm::makeArrayRef(), llvm::pdb::Member, NonVirtualBases, Other, llvm::pdb::LayoutItemBase::Parent, llvm::pdb::LayoutItemBase::UsedBytes, llvm::codeview::VB, VBPtr, VirtualBases, and VTable.
Referenced by UDTLayoutBase().
|
inline |
Definition at line 120 of file UDTLayout.h.
Definition at line 126 of file UDTLayout.h.
References Other.
|
inline |
Definition at line 122 of file UDTLayout.h.
|
overridevirtual |
Reimplemented from llvm::pdb::LayoutItemBase.
Definition at line 118 of file UDTLayout.cpp.
References LayoutItems, and llvm::pdb::LayoutItemBase::tailPadding().
|
inline |
Definition at line 123 of file UDTLayout.h.
|
protected |
Definition at line 141 of file UDTLayout.h.
Referenced by hasVBPtrAtOffset(), and initializeChildren().
|
protected |
Definition at line 138 of file UDTLayout.h.
Referenced by addChildToLayout().
|
protected |
Definition at line 134 of file UDTLayout.h.
|
protected |
Definition at line 137 of file UDTLayout.h.
Referenced by initializeChildren().
|
protected |
Definition at line 139 of file UDTLayout.h.
Referenced by addChildToLayout(), llvm::pdb::ClassLayout::ClassLayout(), and tailPadding().
|
protected |
Definition at line 142 of file UDTLayout.h.
Referenced by initializeChildren().
|
protected |
Definition at line 136 of file UDTLayout.h.
Referenced by initializeChildren().
|
protected |
Definition at line 146 of file UDTLayout.h.
Referenced by hasVBPtrAtOffset(), and initializeChildren().
|
protected |
Definition at line 143 of file UDTLayout.h.
Referenced by initializeChildren().
|
protected |
Definition at line 145 of file UDTLayout.h.
Referenced by initializeChildren().