LLVM 22.0.0git
llvm::dwarf_linker::parallel::CompileUnit::DIEInfo Struct Reference

Information gathered about source DIEs. More...

#include "DWARFLinker/Parallel/DWARFLinkerCompileUnit.h"

Public Member Functions

 DIEInfo ()=default
 DIEInfo (const DIEInfo &Other)
DIEInfooperator= (const DIEInfo &Other)
DieOutputPlacement getPlacement () const
void setPlacement (DieOutputPlacement Placement)
 Sets Placement kind for the corresponding die.
void unsetPlacement ()
 Unsets Placement kind for the corresponding die.
bool setPlacementIfUnset (DieOutputPlacement Placement)
 Sets Placement kind for the corresponding die.
void unsetFlagsWhichSetDuringLiveAnalysis ()
 DIE is a part of the linked output.
void eraseData ()
 Erase all flags.
LLVM_DUMP_METHOD void dump ()
bool needToPlaceInTypeTable () const
bool needToKeepInPlainDwarf () const

Public Attributes

std::atomic< uint16_tFlags = {0}
 Data member keeping various flags.

Detailed Description

Information gathered about source DIEs.

Definition at line 169 of file DWARFLinkerCompileUnit.h.

Constructor & Destructor Documentation

◆ DIEInfo() [1/2]

llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::DIEInfo ( )
default

Referenced by DIEInfo(), and operator=().

◆ DIEInfo() [2/2]

llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::DIEInfo ( const DIEInfo & Other)
inline

Definition at line 171 of file DWARFLinkerCompileUnit.h.

References DIEInfo(), Flags, and llvm::Other.

Member Function Documentation

◆ dump()

LLVM_DUMP_METHOD void llvm::CompileUnit::DIEInfo::dump ( )

Definition at line 22 of file DWARFLinkerCompileUnit.cpp.

References llvm::errs(), llvm::formatv(), llvm::Keep, and LLVM_DUMP_METHOD.

◆ eraseData()

void llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::eraseData ( )
inline

Erase all flags.

Definition at line 258 of file DWARFLinkerCompileUnit.h.

References Flags.

◆ getPlacement()

DieOutputPlacement llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::getPlacement ( ) const
inline
Returns
Placement kind for the corresponding die.

Definition at line 181 of file DWARFLinkerCompileUnit.h.

References Flags.

Referenced by llvm::dwarf_linker::classic::CompileUnit::DIEInfo::dump(), needToKeepInPlainDwarf(), and needToPlaceInTypeTable().

◆ needToKeepInPlainDwarf()

bool llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::needToKeepInPlainDwarf ( ) const
inline

◆ needToPlaceInTypeTable()

◆ operator=()

DIEInfo & llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::operator= ( const DIEInfo & Other)
inline

Definition at line 172 of file DWARFLinkerCompileUnit.h.

References DIEInfo(), Flags, and llvm::Other.

◆ setPlacement()

void llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::setPlacement ( DieOutputPlacement Placement)
inline

◆ setPlacementIfUnset()

bool llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::setPlacementIfUnset ( DieOutputPlacement Placement)
inline

Sets Placement kind for the corresponding die.

Definition at line 201 of file DWARFLinkerCompileUnit.h.

References Flags, llvm::dwarf_linker::parallel::CompileUnit::NotSet, and Placement.

◆ unsetFlagsWhichSetDuringLiveAnalysis()

void llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::unsetFlagsWhichSetDuringLiveAnalysis ( )
inline

DIE is a part of the linked output.

DIE has children which are part of the linked output. DIE has children which are part of the type table. DIE is in module scope. DIE is in function scope. DIE is in anonymous namespace scope. DIE is available for ODR type deduplication. Track liveness for the DIE. Track liveness for the DIE.

Definition at line 250 of file DWARFLinkerCompileUnit.h.

References Flags, and unsetFlagsWhichSetDuringLiveAnalysis().

Referenced by unsetFlagsWhichSetDuringLiveAnalysis().

◆ unsetPlacement()

void llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::unsetPlacement ( )
inline

Unsets Placement kind for the corresponding die.

Definition at line 194 of file DWARFLinkerCompileUnit.h.

References Flags.

Member Data Documentation

◆ Flags

std::atomic<uint16_t> llvm::dwarf_linker::parallel::CompileUnit::DIEInfo::Flags = {0}

The documentation for this struct was generated from the following files: