| 
    LLVM 22.0.0git
    
   | 
 
#include "llvm/DebugInfo/PDB/UDTLayout.h"
Public Member Functions | |
| LayoutItemBase (const UDTLayoutBase *Parent, const PDBSymbol *Symbol, const std::string &Name, uint32_t OffsetInParent, uint32_t Size, bool IsElided) | |
| virtual | ~LayoutItemBase ()=default | 
| uint32_t | deepPaddingSize () const | 
| virtual uint32_t | immediatePadding () const | 
| virtual uint32_t | tailPadding () const | 
| const UDTLayoutBase * | getParent () const | 
| StringRef | getName () const | 
| uint32_t | getOffsetInParent () const | 
| uint32_t | getSize () const | 
| uint32_t | getLayoutSize () const | 
| const PDBSymbol * | getSymbol () const | 
| const BitVector & | usedBytes () const | 
| bool | isElided () const | 
| virtual bool | isVBPtr () const | 
| uint32_t | containsOffset (uint32_t Off) const | 
Protected Attributes | |
| 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 36 of file UDTLayout.h.
| LayoutItemBase::LayoutItemBase | ( | const UDTLayoutBase * | Parent, | 
| const PDBSymbol * | Symbol, | ||
| const std::string & | Name, | ||
| uint32_t | OffsetInParent, | ||
| uint32_t | Size, | ||
| bool | IsElided ) | 
Definition at line 49 of file UDTLayout.cpp.
References IsElided, LayoutSize, Name, OffsetInParent, Parent, Size, SizeOf, Symbol, and UsedBytes.
Referenced by llvm::pdb::UDTLayoutBase::addChildToLayout(), llvm::pdb::DataMemberLayoutItem::DataMemberLayoutItem(), llvm::pdb::UDTLayoutBase::tailPadding(), llvm::pdb::UDTLayoutBase::UDTLayoutBase(), llvm::pdb::VBPtrLayoutItem::VBPtrLayoutItem(), and llvm::pdb::VTableLayoutItem::VTableLayoutItem().
      
  | 
  virtualdefault | 
References deepPaddingSize().
Definition at line 57 of file UDTLayout.h.
References getOffsetInParent(), and getSize().
| uint32_t LayoutItemBase::deepPaddingSize | ( | ) | const | 
      
  | 
  inline | 
Definition at line 51 of file UDTLayout.h.
References LayoutSize.
      
  | 
  inline | 
Definition at line 48 of file UDTLayout.h.
References Name.
Referenced by llvm::pdb::BaseClassLayout::BaseClassLayout(), llvm::pdb::ClassLayout::ClassLayout(), and llvm::pdb::DataMemberLayoutItem::DataMemberLayoutItem().
      
  | 
  inline | 
Definition at line 49 of file UDTLayout.h.
References OffsetInParent.
Referenced by llvm::pdb::UDTLayoutBase::addChildToLayout(), and containsOffset().
      
  | 
  inline | 
Definition at line 47 of file UDTLayout.h.
References Parent.
      
  | 
  inline | 
Definition at line 50 of file UDTLayout.h.
References SizeOf.
Definition at line 52 of file UDTLayout.h.
References Symbol.
      
  | 
  inlinevirtual | 
Reimplemented in llvm::pdb::ClassLayout.
Definition at line 44 of file UDTLayout.h.
      
  | 
  inline | 
Definition at line 54 of file UDTLayout.h.
References IsElided.
      
  | 
  inlinevirtual | 
Reimplemented in llvm::pdb::VBPtrLayoutItem.
Definition at line 55 of file UDTLayout.h.
      
  | 
  virtual | 
Reimplemented in llvm::pdb::UDTLayoutBase.
Definition at line 63 of file UDTLayout.cpp.
References llvm::Last, and UsedBytes.
Referenced by llvm::pdb::UDTLayoutBase::tailPadding().
Definition at line 53 of file UDTLayout.h.
References UsedBytes.
      
  | 
  protected | 
Definition at line 71 of file UDTLayout.h.
Referenced by isElided(), LayoutItemBase(), and llvm::pdb::UDTLayoutBase::UDTLayoutBase().
      
  | 
  protected | 
Definition at line 70 of file UDTLayout.h.
Referenced by getLayoutSize(), llvm::pdb::UDTLayoutBase::initializeChildren(), llvm::pdb::BaseClassLayout::isEmptyBase(), LayoutItemBase(), and llvm::pdb::UDTLayoutBase::UDTLayoutBase().
      
  | 
  protected | 
Definition at line 67 of file UDTLayout.h.
Referenced by getName(), LayoutItemBase(), and llvm::pdb::UDTLayoutBase::UDTLayoutBase().
      
  | 
  protected | 
Definition at line 68 of file UDTLayout.h.
Referenced by llvm::pdb::BaseClassLayout::BaseClassLayout(), getOffsetInParent(), LayoutItemBase(), and llvm::pdb::UDTLayoutBase::UDTLayoutBase().
      
  | 
  protected | 
Definition at line 65 of file UDTLayout.h.
Referenced by llvm::pdb::BaseClassLayout::BaseClassLayout(), llvm::pdb::DataMemberLayoutItem::DataMemberLayoutItem(), getParent(), llvm::pdb::UDTLayoutBase::initializeChildren(), LayoutItemBase(), llvm::pdb::UDTLayoutBase::UDTLayoutBase(), llvm::pdb::VBPtrLayoutItem::VBPtrLayoutItem(), and llvm::pdb::VTableLayoutItem::VTableLayoutItem().
      
  | 
  protected | 
Definition at line 69 of file UDTLayout.h.
Referenced by llvm::pdb::ClassLayout::ClassLayout(), getSize(), llvm::pdb::ClassLayout::immediatePadding(), llvm::pdb::BaseClassLayout::isEmptyBase(), and LayoutItemBase().
Definition at line 64 of file UDTLayout.h.
Referenced by llvm::pdb::DataMemberLayoutItem::getDataMember(), getSymbol(), and LayoutItemBase().
      
  | 
  protected | 
Definition at line 66 of file UDTLayout.h.
Referenced by llvm::pdb::UDTLayoutBase::addChildToLayout(), llvm::pdb::BaseClassLayout::BaseClassLayout(), llvm::pdb::DataMemberLayoutItem::DataMemberLayoutItem(), deepPaddingSize(), llvm::pdb::UDTLayoutBase::initializeChildren(), LayoutItemBase(), tailPadding(), llvm::pdb::UDTLayoutBase::UDTLayoutBase(), and usedBytes().