LLVM 20.0.0git
|
#include "llvm/DebugInfo/LogicalView/Core/LVSymbol.h"
Static Public Member Functions | |
static bool | classof (const LVElement *Element) |
static LVSymbolDispatch & | getDispatch () |
static bool | parametersMatch (const LVSymbols *References, const LVSymbols *Targets) |
static void | getParameters (const LVSymbols *Symbols, LVSymbols *Parameters) |
static void | markMissingParents (const LVSymbols *References, const LVSymbols *Targets) |
static bool | equals (const LVSymbols *References, const LVSymbols *Targets) |
Static Public Member Functions inherited from llvm::logicalview::LVElement | |
static LVElementDispatch & | getDispatch () |
Additional Inherited Members | |
Protected Member Functions inherited from llvm::logicalview::LVElement | |
void | printFileIndex (raw_ostream &OS, bool Full=true) const override |
Protected Member Functions inherited from llvm::logicalview::LVObject | |
std::string | lineAsString (uint32_t LineNumber, LVHalf Discriminator, bool ShowZero) const |
std::string | referenceAsString (uint32_t LineNumber, bool Spaces) const |
virtual void | printFileIndex (raw_ostream &OS, bool Full=true) const |
Protected Attributes inherited from llvm::logicalview::LVElement | |
LVElement * | ElementType = nullptr |
Definition at line 36 of file LVSymbol.h.
|
inline |
Definition at line 70 of file LVSymbol.h.
|
default |
void LVSymbol::addLocation | ( | dwarf::Attribute | Attr, |
LVAddress | LowPC, | ||
LVAddress | HighPC, | ||
LVUnsigned | SectionOffset, | ||
uint64_t | LocDescOffset, | ||
bool | CallSiteLocation = false |
||
) |
Definition at line 65 of file LVSymbol.cpp.
References llvm::logicalview::LVLocation::addObject(), llvm::logicalview::LVObject::Attr, llvm::logicalview::getReader(), llvm::logicalview::LVObject::setAttr(), and llvm::logicalview::LVObject::setParent().
Referenced by addLocationConstant().
void LVSymbol::addLocationConstant | ( | dwarf::Attribute | Attr, |
LVUnsigned | Constant, | ||
uint64_t | LocDescOffset | ||
) |
Definition at line 92 of file LVSymbol.cpp.
References addLocation(), addLocationOperands(), llvm::logicalview::LVObject::Attr, and llvm::logicalview::LVLocationMemberOffset.
Definition at line 85 of file LVSymbol.cpp.
References llvm::logicalview::LVLocation::addObject(), llvm::logicalview::LVObject::Opcode, and Operands.
Referenced by addLocationConstant().
void LVSymbol::calculateCoverage | ( | ) |
Definition at line 190 of file LVSymbol.cpp.
References llvm::logicalview::LVScopeCompileUnit::addInvalidCoverage(), llvm::logicalview::LVLocation::calculateCoverage(), llvm::logicalview::LVScope::getCoverageFactor(), llvm::logicalview::LVObject::getParentScope(), llvm::logicalview::getReaderCompileUnit(), llvm::logicalview::options(), llvm::logicalview::LVScope::outermostParent(), and llvm::logicalview::LVObject::Scope.
Referenced by getLocations().
Definition at line 78 of file LVSymbol.h.
References llvm::logicalview::LVObject::Element, llvm::logicalview::LVElement::getSubclassID(), and llvm::logicalview::LV_SYMBOL.
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 187 of file LVSymbol.h.
References llvm::dbgs(), and print().
Definition at line 355 of file LVSymbol.cpp.
References llvm::logicalview::LVElement::equals(), equals(), getReference(), llvm::logicalview::LVElement::referenceMatch(), and llvm::logicalview::LVObject::Symbol.
Referenced by equals(), and parametersMatch().
Definition at line 369 of file LVSymbol.cpp.
References llvm::SmallVectorBase< Size_T >::size().
void LVSymbol::fillLocationGaps | ( | ) |
Definition at line 125 of file LVSymbol.cpp.
References llvm::logicalview::LVObject::getParentScope(), llvm::logicalview::LVScope::getRanges(), llvm::logicalview::Location, and llvm::logicalview::Ranges.
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 114 of file LVSymbol.h.
Referenced by printExtra().
|
inline |
Definition at line 145 of file LVSymbol.h.
Referenced by llvm::logicalview::LVLocation::print().
|
inline |
Definition at line 147 of file LVSymbol.h.
Referenced by llvm::logicalview::LVLocation::print(), and llvm::logicalview::LVScopeCompileUnit::printWarnings().
|
inlinestatic |
Definition at line 160 of file LVSymbol.h.
Referenced by llvm::logicalview::LVPatterns::LVPatterns().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 109 of file LVSymbol.h.
References llvm::logicalview::LVStringPool::getString(), and llvm::logicalview::getStringPool().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 112 of file LVSymbol.h.
Referenced by printExtra().
void LVSymbol::getLocations | ( | LVLocations & | LocationList | ) | const |
Definition at line 181 of file LVSymbol.cpp.
References llvm::logicalview::Location, and llvm::SmallVectorTemplateBase< T, bool >::push_back().
void LVSymbol::getLocations | ( | LVLocations & | LocationList, |
LVValidLocation | ValidLocation, | ||
bool | RecordInvalid = false |
||
) |
Definition at line 166 of file LVSymbol.cpp.
References calculateCoverage(), llvm::logicalview::Location, and llvm::SmallVectorTemplateBase< T, bool >::push_back().
Referenced by llvm::logicalview::LVScope::getLocations().
Definition at line 348 of file LVSymbol.cpp.
References llvm::logicalview::LVObject::Symbol, and llvm::codeview::Symbols.
Referenced by parametersMatch().
|
inline |
Definition at line 96 of file LVSymbol.h.
References llvm::logicalview::Reference.
Referenced by llvm::logicalview::LVScope::addMissingElements(), equals(), printExtra(), resolveReferences(), and resolveReferencesChain().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 118 of file LVSymbol.h.
References llvm::logicalview::LVStringPool::getString(), and llvm::logicalview::getStringPool().
Referenced by printExtra().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 124 of file LVSymbol.h.
Reimplemented from llvm::logicalview::LVObject.
Definition at line 36 of file LVSymbol.cpp.
References llvm::logicalview::Kind.
Referenced by markMissingParents(), printExtra(), and llvm::logicalview::LVScopeCompileUnit::printWarnings().
llvm::logicalview::LVSymbol::KIND | ( | LVSymbolKind | , |
IsCallSiteParameter | |||
) |
llvm::logicalview::LVSymbol::KIND | ( | LVSymbolKind | , |
IsConstant | |||
) |
llvm::logicalview::LVSymbol::KIND | ( | LVSymbolKind | , |
IsInheritance | |||
) |
llvm::logicalview::LVSymbol::KIND | ( | LVSymbolKind | , |
IsMember | |||
) |
llvm::logicalview::LVSymbol::KIND | ( | LVSymbolKind | , |
IsParameter | |||
) |
llvm::logicalview::LVSymbol::KIND | ( | LVSymbolKind | , |
IsUnspecified | |||
) |
llvm::logicalview::LVSymbol::KIND | ( | LVSymbolKind | , |
IsVariable | |||
) |
|
static |
Definition at line 281 of file LVSymbol.cpp.
References llvm::dbgs(), llvm::logicalview::formattedKind(), llvm::logicalview::formattedName(), llvm::Target::getName(), llvm::logicalview::LVElement::getName(), kind(), LLVM_DEBUG, and llvm::logicalview::LVObject::markBranchAsMissing().
Referenced by llvm::logicalview::LVScope::markMissingParents().
Definition at line 333 of file LVSymbol.cpp.
References equals(), and getParameters().
Referenced by llvm::logicalview::LVScopeFunction::equals().
|
overridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 391 of file LVSymbol.cpp.
References llvm::Full, llvm::logicalview::getReader(), llvm::logicalview::getReaderCompileUnit(), llvm::logicalview::LVScopeCompileUnit::incrementPrintedSymbols(), OS, llvm::logicalview::LVObject::print(), and printExtra().
Referenced by dump().
|
overridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 399 of file LVSymbol.cpp.
References llvm::logicalview::LVElement::accessibilityString(), Attributes, llvm::dwarf::DW_ACCESS_private, llvm::dwarf::DW_ACCESS_public, llvm::logicalview::LVElement::externalString(), llvm::logicalview::formatAttributes(), llvm::logicalview::formattedKind(), llvm::logicalview::formattedName(), llvm::logicalview::formattedNames(), llvm::Full, getBitSize(), getLinkageNameIndex(), llvm::logicalview::LVElement::getName(), llvm::logicalview::LVObject::getParentScope(), getReference(), llvm::logicalview::LVElement::getTypeQualifiedName(), getValue(), kind(), llvm::logicalview::options(), OS, llvm::logicalview::LVLocation::print(), llvm::logicalview::LVElement::printLinkageName(), llvm::logicalview::LVElement::printReference(), Size, llvm::logicalview::LVObject::Symbol, llvm::logicalview::LVElement::typeAsString(), llvm::logicalview::LVElement::typeOffsetAsString(), and llvm::logicalview::LVElement::virtualityString().
Referenced by print().
void LVSymbol::printLocations | ( | raw_ostream & | OS, |
bool | Full = true |
||
) | const |
Definition at line 385 of file LVSymbol.cpp.
References llvm::Full, llvm::logicalview::Location, and OS.
llvm::logicalview::LVSymbol::PROPERTY | ( | Property | , |
FillGaps | |||
) |
llvm::logicalview::LVSymbol::PROPERTY | ( | Property | , |
HasLocation | |||
) |
|
overridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 381 of file LVSymbol.cpp.
References llvm::logicalview::getComparator(), and llvm::logicalview::LVCompare::printItem().
|
overridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 220 of file LVSymbol.cpp.
References llvm::logicalview::patterns(), llvm::logicalview::LVElement::resolveName(), and llvm::logicalview::LVPatterns::resolvePatternMatch().
|
overridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 231 of file LVSymbol.cpp.
References llvm::logicalview::LVObject::Element, getReference(), llvm::logicalview::LVElement::getType(), llvm::logicalview::Reference, llvm::logicalview::LVElement::resolve(), resolveReferencesChain(), llvm::logicalview::LVElement::setFile(), llvm::logicalview::LVElement::setGenericType(), and llvm::logicalview::LVElement::setType().
StringRef LVSymbol::resolveReferencesChain | ( | ) |
Definition at line 272 of file LVSymbol.cpp.
References llvm::logicalview::LVElement::getName(), getReference(), llvm::logicalview::LVElement::isNamed(), resolveReferencesChain(), and llvm::logicalview::LVElement::setName().
Referenced by resolveReferences(), and resolveReferencesChain().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 115 of file LVSymbol.h.
References Size.
|
inline |
Definition at line 146 of file LVSymbol.h.
|
inline |
Definition at line 148 of file LVSymbol.h.
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 106 of file LVSymbol.h.
References llvm::logicalview::LVStringPool::getIndex(), llvm::logicalview::getStringPool(), and llvm::LinkageName.
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 101 of file LVSymbol.h.
References assert(), llvm::logicalview::LVObject::Element, and setReference().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 97 of file LVSymbol.h.
References llvm::logicalview::Reference, and llvm::logicalview::LVObject::Symbol.
Referenced by llvm::logicalview::LVScope::addMissingElements(), and setReference().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVElement.
Definition at line 121 of file LVSymbol.h.
References llvm::logicalview::LVStringPool::getIndex(), and llvm::logicalview::getStringPool().