|
LLVM 22.0.0git
|
Keeps cloned data for the type DIE. More...
#include "DWARFLinker/Parallel/TypePool.h"
Public Member Functions | |
| DIE & | getFinalDie () const |
| Returns copy of type DIE which should be emitted into resulting file. | |
| bool | hasOnlyDeclaration () const |
| Returns true if type die entry has only declaration die. | |
Static Public Member Functions | |
| static TypeEntryBody * | create (llvm::parallel::PerThreadBumpPtrAllocator &Allocator) |
| Creates type DIE for the specified name. | |
Public Attributes | |
| std::atomic< DIE * > | Die = {nullptr} |
| TypeEntryBody keeps partially cloned DIEs corresponding to this type. | |
| std::atomic< DIE * > | DeclarationDie = {nullptr} |
| std::atomic< bool > | ParentIsDeclaration = {true} |
| ArrayList< TypeEntry *, 5 > | Children |
| Children for current type. | |
Protected Member Functions | |
| TypeEntryBody ()=delete | |
| TypeEntryBody (const TypeEntryBody &RHS)=delete | |
| TypeEntryBody (TypeEntryBody &&RHS)=delete | |
| TypeEntryBody & | operator= (const TypeEntryBody &RHS)=delete |
| TypeEntryBody & | operator= (const TypeEntryBody &&RHS)=delete |
| TypeEntryBody (llvm::parallel::PerThreadBumpPtrAllocator &Allocator) | |
Keeps cloned data for the type DIE.
Definition at line 30 of file TypePool.h.
|
protecteddelete |
Referenced by create(), operator=(), operator=(), TypeEntryBody(), and TypeEntryBody().
|
protecteddelete |
References RHS, and TypeEntryBody().
|
protecteddelete |
References RHS, and TypeEntryBody().
|
inlineprotected |
Definition at line 77 of file TypePool.h.
|
inlinestatic |
Creates type DIE for the specified name.
Definition at line 46 of file TypePool.h.
References Allocator, and TypeEntryBody().
Referenced by llvm::dwarf_linker::parallel::TypePool::getOrCreateTypeEntryBody(), and llvm::dwarf_linker::parallel::TypePool::TypePool().
|
inline |
Returns copy of type DIE which should be emitted into resulting file.
Definition at line 33 of file TypePool.h.
References assert(), DeclarationDie, and Die.
Referenced by llvm::dwarf_linker::parallel::OutputSections::applyPatches().
|
inline |
Returns true if type die entry has only declaration die.
Definition at line 42 of file TypePool.h.
References Die.
|
protecteddelete |
References RHS, and TypeEntryBody().
|
protecteddelete |
References RHS, and TypeEntryBody().
| std::atomic<DIE *> llvm::dwarf_linker::parallel::TypeEntryBody::DeclarationDie = {nullptr} |
Definition at line 62 of file TypePool.h.
Referenced by getFinalDie().
| std::atomic<DIE *> llvm::dwarf_linker::parallel::TypeEntryBody::Die = {nullptr} |
TypeEntryBody keeps partially cloned DIEs corresponding to this type.
The two kinds of DIE can be kept: declaration and definition. If definition DIE was met while parsing input DWARF then this DIE would be used as a final DIE for this type. If definition DIE is not met then declaration DIE would be used as a final DIE.
Definition at line 59 of file TypePool.h.
Referenced by getFinalDie(), and hasOnlyDeclaration().
| std::atomic<bool> llvm::dwarf_linker::parallel::TypeEntryBody::ParentIsDeclaration = {true} |
Definition at line 65 of file TypePool.h.