LLVM 22.0.0git
|
#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 112 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 106 of file UDTLayout.cpp.
References initializeChildren(), llvm::pdb::LayoutItemBase::IsElided, llvm::pdb::LayoutItemBase::LayoutItemBase(), llvm::pdb::LayoutItemBase::LayoutSize, llvm::pdb::LayoutItemBase::Name, llvm::pdb::LayoutItemBase::OffsetInParent, llvm::pdb::LayoutItemBase::Parent, Size, UDTLayoutBase(), and llvm::pdb::LayoutItemBase::UsedBytes.
Referenced by llvm::pdb::BaseClassLayout::BaseClassLayout(), llvm::pdb::ClassLayout::ClassLayout(), operator=(), UDTLayoutBase(), and UDTLayoutBase().
|
delete |
References UDTLayoutBase().
|
protected |
Definition at line 279 of file UDTLayout.cpp.
References ChildStorage, llvm::BitVector::count(), llvm::pdb::LayoutItemBase::getOffsetInParent(), llvm::pdb::LayoutItemBase::LayoutItemBase(), LayoutItems, llvm::BitVector::resize(), llvm::upper_bound(), and llvm::pdb::LayoutItemBase::UsedBytes.
Referenced by initializeChildren().
|
inline |
Definition at line 126 of file UDTLayout.h.
References AllBases.
|
inline |
Definition at line 129 of file UDTLayout.h.
References DirectVBaseCount.
|
inline |
Definition at line 130 of file UDTLayout.h.
References Funcs.
Definition at line 269 of file UDTLayout.cpp.
References AllBases, and VBPtr.
Referenced by initializeChildren().
Definition at line 167 of file UDTLayout.cpp.
References addChildToLayout(), AllBases, llvm::ArrayRef(), assert(), llvm::sampleprof::Base, llvm::pdb::Data, DM, llvm::pdb::PDBSymbol::findAllChildren(), Funcs, hasVBPtrAtOffset(), llvm::pdb::LayoutItemBase::LayoutSize, llvm::pdb::Member, NonVirtualBases, llvm::pdb::Offset, Other, llvm::pdb::LayoutItemBase::Parent, llvm::unique_dyn_cast(), llvm::pdb::LayoutItemBase::UsedBytes, VBPtr, VirtualBases, and VTable.
Referenced by UDTLayoutBase().
|
inline |
Definition at line 125 of file UDTLayout.h.
References LayoutItems.
|
delete |
References tailPadding(), and UDTLayoutBase().
Definition at line 131 of file UDTLayout.h.
References Other.
|
inline |
Definition at line 127 of file UDTLayout.h.
References NonVirtualBases.
|
overridevirtual |
Reimplemented from llvm::pdb::LayoutItemBase.
Definition at line 119 of file UDTLayout.cpp.
References llvm::pdb::LayoutItemBase::LayoutItemBase(), LayoutItems, and llvm::pdb::LayoutItemBase::tailPadding().
Referenced by operator=().
|
inline |
Definition at line 128 of file UDTLayout.h.
References VirtualBases.
|
protected |
Definition at line 146 of file UDTLayout.h.
Referenced by bases(), hasVBPtrAtOffset(), and initializeChildren().
|
protected |
Definition at line 143 of file UDTLayout.h.
Referenced by addChildToLayout().
|
protected |
Definition at line 139 of file UDTLayout.h.
Referenced by directVirtualBaseCount().
|
protected |
Definition at line 142 of file UDTLayout.h.
Referenced by funcs(), and initializeChildren().
|
protected |
Definition at line 144 of file UDTLayout.h.
Referenced by addChildToLayout(), llvm::pdb::ClassLayout::ClassLayout(), layout_items(), and tailPadding().
|
protected |
Definition at line 147 of file UDTLayout.h.
Referenced by initializeChildren(), and regular_bases().
|
protected |
Definition at line 141 of file UDTLayout.h.
Referenced by initializeChildren(), and other_items().
|
protected |
Definition at line 151 of file UDTLayout.h.
Referenced by hasVBPtrAtOffset(), and initializeChildren().
|
protected |
Definition at line 148 of file UDTLayout.h.
Referenced by initializeChildren(), and virtual_bases().
|
protected |
Definition at line 150 of file UDTLayout.h.
Referenced by initializeChildren().