LLVM: llvm::logicalview::LVScopeRoot Class Reference (original) (raw)
Public Member Functions
LVScopeRoot ()
LVScopeRoot (const LVScopeRoot &)=delete
operator= (const LVScopeRoot &)=delete
~LVScopeRoot () override=default
void
setFileFormatName (StringRef FileFormatName)
void
void
equals (const LVScope *Scope) const override
void
print (raw_ostream &OS, bool Full=true) const override
void
printExtra (raw_ostream &OS, bool Full=true) const override
doPrintMatches (bool Split, raw_ostream &OS, bool UseMatchedElements) const
Public Member Functions inherited from llvm::logicalview::LVScope
LVScope ()
LVScope (const LVScope &)=delete
LVScope &
operator= (const LVScope &)=delete
~LVScope () override=default
KIND (LVScopeKind, IsAggregate)
KIND_2 (LVScopeKind, IsBlock, CanHaveRanges, CanHaveLines)
KIND_1 (LVScopeKind, IsCallSite, IsFunction)
KIND_1 (LVScopeKind, IsCatchBlock, IsBlock)
KIND_1 (LVScopeKind, IsClass, IsAggregate)
KIND_3 (LVScopeKind, IsCompileUnit, CanHaveRanges, CanHaveLines, TransformName)
KIND_1 (LVScopeKind, IsEntryPoint, IsFunction)
KIND (LVScopeKind, IsEnumeration)
KIND_2 (LVScopeKind, IsFunction, CanHaveRanges, CanHaveLines)
KIND_1 (LVScopeKind, IsFunctionType, IsFunction)
KIND_2 (LVScopeKind, IsInlinedFunction, IsFunction, IsInlined)
KIND_1 (LVScopeKind, IsLabel, IsFunction)
KIND_1 (LVScopeKind, IsLexicalBlock, IsBlock)
KIND (LVScopeKind, IsNamespace)
KIND_1 (LVScopeKind, IsRoot, TransformName)
KIND_1 (LVScopeKind, IsStructure, IsAggregate)
KIND_1 (LVScopeKind, IsSubprogram, IsFunction)
KIND (LVScopeKind, IsTemplate)
KIND (LVScopeKind, IsTemplateAlias)
KIND (LVScopeKind, IsTemplatePack)
KIND_1 (LVScopeKind, IsTryBlock, IsBlock)
KIND_1 (LVScopeKind, IsUnion, IsAggregate)
KIND_2 (LVScopeKind, IsModule, CanHaveRanges, CanHaveLines)
PROPERTY (Property, HasDiscriminator)
PROPERTY (Property, CanHaveRanges)
PROPERTY (Property, CanHaveLines)
PROPERTY (Property, HasGlobals)
PROPERTY (Property, HasLocals)
PROPERTY (Property, HasLines)
PROPERTY (Property, HasScopes)
PROPERTY (Property, HasSymbols)
PROPERTY (Property, HasTypes)
PROPERTY (Property, IsComdat)
PROPERTY (Property, HasComdatScopes)
PROPERTY (Property, HasRanges)
PROPERTY (Property, AddedMissing)
isCompileUnit () const override
getSymbols () const
getChildren () const
getSortedChildren (LVSortFunction SortFunction=llvm::logicalview::getSortFunction()) const
void
addElement (LVElement *Element)
void
addElement (LVLine *Line)
void
void
void
addElement (LVType *Type)
void
addObject (LVLocation *Location)
void
addObject (LVAddress LowerAddress, LVAddress UpperAddress)
void
addMissingElements (LVScope *Reference)
void
traverseParentsAndChildren (LVObjectGetFunction GetFunction, LVObjectSetFunction SetFunction)
size_t
size_t
rangeCount () const
size_t
scopeCount () const
size_t
symbolCount () const
size_t
LVScope *
outermostParent (LVAddress Address)
void
getLocations (LVLocations &LocationList, LVValidLocation ValidLocation, bool RecordInvalid=false)
void
getRanges (LVLocations &LocationList, LVValidLocation ValidLocation, bool RecordInvalid=false)
void
getRanges (LVRange &RangeList)
doPrint (bool Split, bool Match, bool Print, raw_ostream &OS, bool Full=true) const override
void
sort ()
getTemplateParameterTypes (LVTypes &Params)
virtual LVScope *
LVScope *
getCompileUnitParent () const override
removeElement (LVElement *Element) override
void
updateLevel (LVScope *Parent, bool Moved) override
getBitSize () const override
void
setBitSize (uint32_t Size) override
void
resolve () override
void
resolveName () override
void
resolveReferences () override
void
getQualifiedName (std::string &QualifiedName) const
void
encodeTemplateArguments (std::string &Name) const
void
encodeTemplateArguments (std::string &Name, const LVTypes *Types) const
void
virtual void
markMissingParents (const LVScope *Target, bool TraverseChildren)
virtual bool
equalNumberOfChildren (const LVScope *Scope) const
virtual LVScope *
findEqualScope (const LVScopes *Scopes) const
void
report (LVComparePass Pass) override
virtual void
printWarnings (raw_ostream &OS, bool Full=true) const
virtual void
printMatchedElements (raw_ostream &OS, bool UseMatchedElements)
Public Member Functions inherited from llvm::logicalview::LVElement
LVElement (const LVElement &)=delete
operator= (const LVElement &)=delete
~LVElement () override=default
PROPERTY (Property, IsLine)
PROPERTY (Property, IsScope)
PROPERTY (Property, IsSymbol)
PROPERTY (Property, IsType)
PROPERTY (Property, IsEnumClass)
PROPERTY (Property, IsExternal)
PROPERTY (Property, HasType)
PROPERTY (Property, HasAugmentedName)
PROPERTY (Property, IsTypedefReduced)
PROPERTY (Property, IsArrayResolved)
PROPERTY (Property, IsMemberPointerResolved)
PROPERTY (Property, IsTemplateResolved)
PROPERTY (Property, IsInlined)
PROPERTY (Property, IsInlinedAbstract)
PROPERTY (Property, InvalidFilename)
PROPERTY (Property, HasReference)
PROPERTY (Property, HasReferenceAbstract)
PROPERTY (Property, HasReferenceExtension)
PROPERTY (Property, HasReferenceSpecification)
PROPERTY (Property, QualifiedResolved)
PROPERTY (Property, IncludeInPrint)
PROPERTY (Property, IsStatic)
PROPERTY (Property, TransformName)
PROPERTY (Property, IsScoped)
PROPERTY (Property, IsNested)
PROPERTY (Property, IsScopedAlready)
PROPERTY (Property, IsArtificial)
PROPERTY (Property, IsReferencedType)
PROPERTY (Property, IsSystem)
PROPERTY (Property, OffsetFromTypeIndex)
PROPERTY (Property, IsAnonymous)
void
setName (StringRef ElementName) override
getPathname () const
void
setFilename (StringRef Filename)
void
setQualifiedName (StringRef Name)
size_t
size_t
getQualifiedNameIndex () const
void
void
setInnerComponent (StringRef Name)
getTypeName () const
virtual StringRef
getProducer () const
virtual void
setProducer (StringRef ProducerName)
virtual LVSourceLanguage
virtual void
setSourceLanguage (LVSourceLanguage SL)
virtual void
setReference (LVElement *Element)
virtual void
virtual void
setReference (LVSymbol *Symbol)
virtual void
virtual void
setLinkageName (StringRef LinkageName)
virtual StringRef
virtual size_t
virtual uint32_t
virtual void
setCallLineNumber (uint32_t Number)
virtual size_t
virtual void
setCallFilenameIndex (size_t Index)
size_t
void
setFilenameIndex (size_t Index)
void
setFile (LVElement *Reference=nullptr)
virtual bool
virtual bool
getStorageSizeInBytes () const
virtual int64_t
virtual void
virtual int64_t
virtual void
setLowerBound (int64_t Value)
virtual int64_t
virtual void
setUpperBound (int64_t Value)
virtual std::pair< unsigned, unsigned >
virtual void
setBounds (unsigned Lower, unsigned Upper)
virtual uint32_t
virtual void
setDiscriminator (uint32_t Value)
virtual StringRef
virtual void
virtual size_t
void
setAccessibilityCode (uint32_t Access)
accessibilityString (uint32_t Access=dwarf::DW_ACCESS_private) const
std::optional< uint32_t >
getAccessibilityCode (codeview::MemberAccess Access)
void
setAccessibilityCode (codeview::MemberAccess Access)
void
inlineCodeString (uint32_t Code) const
void
setVirtualityCode (uint32_t Virtuality)
virtualityString (uint32_t Virtuality=dwarf::DW_VIRTUALITY_none) const
std::optional< uint32_t >
getVirtualityCode (codeview::MethodKind Virtuality)
void
setVirtualityCode (codeview::MethodKind Virtuality)
LVType *
LVScope *
void
setType (LVElement *Element=nullptr)
void
setGenericType (LVElement *Element)
std::string
std::string
discriminatorAsString () const
LVScope *
traverseParents (LVScopeGetFunction GetFunction) const
LVScope *
void
printReference (raw_ostream &OS, bool Full, LVElement *Parent) const
void
printLinkageName (raw_ostream &OS, bool Full, LVElement *Parent, LVScope *Scope) const
void
printLinkageName (raw_ostream &OS, bool Full, LVElement *Parent) const
void
resolveFullname (LVElement *BaseType, StringRef Name=emptyString())
void
generateName (std::string &Prefix) const
void
generateName ()
virtual void
resolveExtra ()
void
referenceMatch (const LVElement *Element) const
equals (const LVElement *Element) const
Public Member Functions inherited from llvm::logicalview::LVObject
LVObject ()
LVObject &
operator= (const LVObject &)=delete
virtual
~LVObject ()=default
PROPERTY (Property, IsLocation)
PROPERTY (Property, IsGlobalReference)
PROPERTY (Property, IsGeneratedName)
PROPERTY (Property, IsResolved)
PROPERTY (Property, IsResolvedName)
PROPERTY (Property, IsDiscarded)
PROPERTY (Property, IsOptimized)
PROPERTY (Property, IsAdded)
PROPERTY (Property, IsMatched)
PROPERTY (Property, IsMissing)
PROPERTY (Property, IsMissingLink)
PROPERTY (Property, IsInCompare)
PROPERTY (Property, IsFileFromReference)
PROPERTY (Property, IsLineFromReference)
PROPERTY (Property, HasMoved)
PROPERTY (Property, HasPattern)
PROPERTY (Property, IsFinalized)
PROPERTY (Property, IsReferenced)
PROPERTY (Property, HasCodeViewLocation)
void
void
setAttr (dwarf::Attribute Attr)
void
void
setOffset (LVOffset DieOffset)
void
LVScope *
LVSymbol *
void
void
void
resetParent ()
virtual LVAddress
virtual void
setLowerAddress (LVAddress Address)
virtual LVAddress
virtual void
setUpperAddress (LVAddress Address)
void
setLineNumber (uint32_t Number)
std::string
std::string
indentAsString (LVLevel Level) const
virtual std::string
noLineAsString (bool ShowZero) const
virtual std::string
lineNumberAsString (bool ShowZero=false) const
std::string
lineNumberAsStringStripped (bool ShowZero=false) const
void
printAttributes (raw_ostream &OS, bool Full=true) const
void
printAttributes (raw_ostream &OS, bool Full, StringRef Name, LVObject *Parent, StringRef Value, bool UseQuotes=false, bool PrintRef=false) const
void
void