LLDB
mainline
|
#include <DWARFBaseDIE.h>
Public Types | |
enum | Recurse : bool { Recurse::no, Recurse::yes } |
Protected Attributes | |
DWARFUnit * | m_cu = nullptr |
DWARFDebugInfoEntry * | m_die = nullptr |
Definition at line 25 of file DWARFBaseDIE.h.
|
strong |
Enumerator | |
---|---|
no | |
yes |
Definition at line 113 of file DWARFBaseDIE.h.
|
default |
|
inline |
Definition at line 29 of file DWARFBaseDIE.h.
|
inline |
Definition at line 32 of file DWARFBaseDIE.h.
|
inline |
Definition at line 35 of file DWARFBaseDIE.h.
|
inline |
Definition at line 38 of file DWARFBaseDIE.h.
|
inline |
Definition at line 69 of file DWARFBaseDIE.h.
Referenced by DWARFDebugInfoEntry::GetQualifiedName(), SymbolFileDWARF::ParseBlocksRecursive(), SymbolFileDWARF::ParseTypes(), and Set().
size_t DWARFBaseDIE::GetAttributes | ( | DWARFAttributes & | attributes, |
Recurse | recurse = Recurse::yes |
||
) | const |
Definition at line 107 of file DWARFBaseDIE.cpp.
References DWARFAttributes::Clear().
Referenced by DWARFDebugInfoEntry::GetAttributes(), DWARFASTParserClang::GetTypeForDIE(), DWARFASTParserClang::ParseChildParameters(), ParsedDWARFTypeAttributes::ParsedDWARFTypeAttributes(), DWARFASTParserClang::ParseInheritance(), DWARFASTParserClang::ParseTemplateDIE(), and SymbolFileDWARF::ParseVariableDIE().
uint64_t DWARFBaseDIE::GetAttributeValueAsAddress | ( | const dw_attr_t | attr, |
uint64_t | fail_value | ||
) | const |
Definition at line 56 of file DWARFBaseDIE.cpp.
const char * DWARFBaseDIE::GetAttributeValueAsString | ( | const dw_attr_t | attr, |
const char * | fail_value | ||
) | const |
Definition at line 40 of file DWARFBaseDIE.cpp.
Referenced by DWARFASTParserClang::GetOwningClangModule(), SymbolFileDWARF::ParseImportedModules(), SymbolFileDWARF::ParseXcodeSDK(), and SymbolFileDWARF::UpdateExternalModuleListIfNeeded().
uint64_t DWARFBaseDIE::GetAttributeValueAsUnsigned | ( | const dw_attr_t | attr, |
uint64_t | fail_value | ||
) | const |
Definition at line 48 of file DWARFBaseDIE.cpp.
Referenced by SymbolFileDWARF::CollectCallEdges(), DWARFASTParserClang::CompleteRecordType(), DWARFASTParserClang::CopyUniqueClassMethodTypes(), lldb_private::DWARFExpression::Evaluate(), SymbolFileDWARF::FindCompleteObjCDefinitionTypeForDIE(), lldb_private::DebugNamesDWARFIndex::GetCompleteObjCClass(), IsClangModuleFwdDecl(), SymbolFileDWARF::ParseDebugMacros(), DWARFASTParserClang::ParseSingleMember(), DWARFASTParserClang::ParseTypeModifier(), and DWARFASTParserClang::ResolveNamespaceDIE().
|
inline |
Definition at line 54 of file DWARFBaseDIE.h.
References m_cu.
Referenced by SymbolFileDWARF::CompleteType(), DWARFASTParserClang::CopyUniqueClassMethodTypes(), SymbolFileDWARF::DIEInDeclContext(), SymbolFileDWARF::FindDefinitionTypeForDWARFDeclContext(), SymbolFileDWARF::FindGlobalVariables(), SymbolFileDWARF::FindNamespace(), DWARFDebugInfoEntry::GetAttributes(), DWARFDebugInfoEntry::GetAttributeValue(), SymbolFileDWARF::GetContainingDeclContext(), SymbolFileDWARF::GetDecl(), SymbolFileDWARF::GetDeclContext(), SymbolFileDWARF::GetDWARFDeclContext(), DWARFDebugInfoEntry::GetDWARFDeclContextStatic(), SymbolFileDWARF::GetFunction(), SymbolFileDWARF::GetTypeForDIE(), GetUnitName(), operator==(), SymbolFileDWARF::ParseFunction(), DWARFASTParserClang::ParseFunctionFromDWARF(), DWARFASTParserClang::ParseInheritance(), DWARFASTParserClang::ParseSingleMember(), DWARFASTParserClang::ParseStructureLikeDIE(), SymbolFileDWARF::ParseType(), DWARFASTParserClang::ParseTypeFromClangModule(), DWARFASTParserClang::ParseTypeModifier(), SymbolFileDWARF::ParseVariableDIE(), and SymbolFileDWARF::ParseVariablesForContext().
const DWARFDataExtractor & DWARFBaseDIE::GetData | ( | ) | const |
Definition at line 123 of file DWARFBaseDIE.cpp.
Referenced by DWARFASTParserClang::ParseInheritance(), and SymbolFileDWARF::ParseVariableDIE().
|
inline |
Definition at line 56 of file DWARFBaseDIE.h.
References m_die.
Referenced by operator==(), SymbolFileDWARF::ParseCompileUnit(), and SymbolFileDWARF::UpdateExternalModuleListIfNeeded().
llvm::Optional< DIERef > DWARFBaseDIE::GetDIERef | ( | ) | const |
Definition at line 21 of file DWARFBaseDIE.cpp.
Referenced by SymbolFileDWARF::GetUID(), lldb_private::ManualDWARFIndex::IndexUnitImpl(), SymbolFileDWARF::MergeBlockAbstractParameters(), DWARFASTParserClang::ParseStructureLikeDIE(), SymbolFileDWARF::ParseType(), and SymbolFileDWARF::ParseVariablesInFunctionContextRecursive().
SymbolFileDWARF * DWARFBaseDIE::GetDWARF | ( | ) | const |
Definition at line 92 of file DWARFBaseDIE.cpp.
Referenced by DWARFASTParserClang::CompleteRecordType(), DWARFASTParserClang::CompleteTypeFromDWARF(), DWARFASTParserClang::CopyUniqueClassMethodTypes(), DWARFASTParserClang::GetClangDeclContextContainingDIE(), DWARFASTParserClang::GetClangDeclContextForDIE(), DWARFASTParserClang::GetClangDeclForDIE(), GetContainingClangModule(), DWARFASTParserClang::GetTypeForDIE(), DWARFASTParserClang::ParseArrayType(), DWARFASTParserClang::ParseChildMembers(), DWARFASTParserClang::ParseEnum(), DWARFASTParserClang::ParseFunctionFromDWARF(), DWARFASTParserClang::ParseObjCProperty(), DWARFASTParserClang::ParsePointerToMemberType(), DWARFASTParserClang::ParseSingleMember(), DWARFASTParserClang::ParseStructureLikeDIE(), DWARFASTParserClang::ParseSubroutine(), DWARFASTParserClang::ParseTypeFromClangModule(), DWARFASTParserClang::ParseTypeFromDWARF(), DWARFASTParserClang::ParseTypeModifier(), SymbolFileDWARF::ParseVariableDIE(), SymbolFileDWARF::ParseVariableDIECached(), PrepareContextToReceiveMembers(), and DWARFASTParserClang::UpdateSymbolContextScopeForType().
lldb::user_id_t DWARFBaseDIE::GetID | ( | ) | const |
Definition at line 64 of file DWARFBaseDIE.cpp.
References LLDB_INVALID_UID.
Referenced by SymbolFileDWARF::CompleteType(), SymbolFileDWARF::FindCompleteObjCDefinitionTypeForDIE(), DWARFASTParserClang::GetClangDeclForDIE(), SymbolFileDWARF::GetFunction(), SymbolFileDWARF::ParseAndAppendGlobalVariable(), DWARFASTParserClang::ParseArrayType(), SymbolFileDWARF::ParseBlocksRecursive(), DWARFASTParserClang::ParseChildParameters(), DWARFASTParserClang::ParseEnum(), DWARFASTParserClang::ParseFunctionFromDWARF(), SymbolFileDWARF::ParseFunctions(), DWARFASTParserClang::ParseObjCProperty(), DWARFASTParserClang::ParsePointerToMemberType(), DWARFASTParserClang::ParseSingleMember(), DWARFASTParserClang::ParseStructureLikeDIE(), DWARFASTParserClang::ParseSubroutine(), SymbolFileDWARF::ParseType(), DWARFASTParserClang::ParseTypeFromClangModule(), DWARFASTParserClang::ParseTypeModifier(), SymbolFileDWARF::ParseTypes(), SymbolFileDWARF::ParseVariableDIE(), SymbolFileDWARF::ParseVariablesInFunctionContextRecursive(), SymbolFileDWARF::ResolveFunction(), SymbolFileDWARF::ResolveFunctionAndBlock(), and DWARFASTParserClang::UpdateSymbolContextScopeForType().
lldb::ModuleSP DWARFBaseDIE::GetModule | ( | ) | const |
Definition at line 77 of file DWARFBaseDIE.cpp.
Referenced by SymbolFileDWARF::ParseFunction().
const char * DWARFBaseDIE::GetName | ( | ) | const |
Definition at line 70 of file DWARFBaseDIE.cpp.
Referenced by SymbolFileDWARF::ParseCompileUnit().
dw_offset_t DWARFBaseDIE::GetOffset | ( | ) | const |
Definition at line 85 of file DWARFBaseDIE.cpp.
References DW_INVALID_OFFSET.
Referenced by SymbolFileDWARF::FindBlockContainingSpecification(), SymbolFileDWARF::FindDefinitionTypeForDWARFDeclContext(), SymbolFileDWARF::GetTypes(), DWARFASTParserClang::ParseEnum(), DWARFASTParserClang::ParseInheritance(), DWARFASTParserClang::ParseStructureLikeDIE(), DWARFASTParserClang::ParseSubroutine(), DWARFASTParserClang::ParseTypeFromDWARF(), DWARFASTParserClang::ParseTypeModifier(), SymbolFileDWARF::ParseVariableDIE(), SymbolFileDWARF::ParseVariablesInFunctionContextRecursive(), PrepareContextToReceiveMembers(), SymbolFileDWARF::ResolveFunction(), SymbolFileDWARF::ResolveType(), SymbolFileDWARF::ResolveTypeUID(), and SymbolFileDWARF::UpdateExternalModuleListIfNeeded().
const char * DWARFBaseDIE::GetTagAsCString | ( | ) | const |
Definition at line 36 of file DWARFBaseDIE.cpp.
References lldb_private::DW_TAG_value_to_name().
Referenced by SymbolFileDWARF::CompleteType(), SymbolFileDWARF::ParseAndAppendGlobalVariable(), DWARFASTParserClang::ParseTypeFromDWARF(), DWARFASTParserClang::ParseTypeModifier(), SymbolFileDWARF::ParseVariableDIE(), SymbolFileDWARF::ResolveType(), and SymbolFileDWARF::ResolveTypeUID().
bool DWARFBaseDIE::HasChildren | ( | ) | const |
Definition at line 99 of file DWARFBaseDIE.cpp.
Referenced by DWARFASTParserClang::CompleteEnumType(), DWARFASTParserClang::CompleteRecordType(), SymbolFileDWARF::MergeBlockAbstractParameters(), SymbolFileDWARF::ParseBlocksRecursive(), DWARFASTParserClang::ParseEnum(), DWARFASTParserClang::ParseStructureLikeDIE(), DWARFASTParserClang::ParseSubroutine(), SymbolFileDWARF::ParseTypes(), and SymbolFileDWARF::UpdateExternalModuleListIfNeeded().
|
inline |
Definition at line 45 of file DWARFBaseDIE.h.
Referenced by DWARFASTParserClang::CopyUniqueClassMethodTypes(), DWARFUnit::ExtractUnitDIEIfNeeded(), GetContainingClangModule(), GetContainingClangModuleDIE(), DWARFDIE::GetDeclContextDIEs(), SymbolFileDWARF::GetDWARFDeclContext(), DWARFASTParserClang::GetOwningClangModule(), operator bool(), DWARFDIE::child_iterator::operator*(), DWARFDIE::child_iterator::operator++(), DWARFDIE::child_iterator::operator==(), SymbolFileDWARF::ParseCallEdgesInFunction(), and SymbolFileDWARF::ParseFunction().
|
inlineexplicit |
Definition at line 43 of file DWARFBaseDIE.h.
References IsValid().
|
inline |
Definition at line 60 of file DWARFBaseDIE.h.
bool DWARFBaseDIE::Supports_DW_AT_APPLE_objc_complete_type | ( | ) | const |
Definition at line 103 of file DWARFBaseDIE.cpp.
Referenced by SymbolFileDWARF::FindCompleteObjCDefinitionTypeForDIE(), and DWARFASTParserClang::ParseStructureLikeDIE().
dw_tag_t DWARFBaseDIE::Tag | ( | ) | const |
Definition at line 29 of file DWARFBaseDIE.cpp.
Referenced by DWARFASTParserClang::CompleteRecordType(), DWARFASTParserClang::CompleteTypeFromDWARF(), DWARFASTParserClang::CopyUniqueClassMethodTypes(), SymbolFileDWARF::DIEDeclContextsMatch(), UniqueDWARFASTTypeList::Find(), SymbolFileDWARF::FindBlockContainingSpecification(), SymbolFileDWARF::FindCompleteObjCDefinitionTypeForDIE(), SymbolFileDWARF::FindDefinitionTypeForDWARFDeclContext(), SymbolFileDWARF::FindGlobalVariables(), DWARFASTParserClang::GetClangDeclContextForDIE(), DWARFASTParserClang::GetClangDeclForDIE(), GetContainingClangModuleDIE(), SymbolFileDWARF::GetDeclContextDIEContainingDIE(), DWARFASTParserClang::GetDeclContextForBlock(), DWARFDebugInfoEntry::GetDWARFDeclContextStatic(), DWARFDebugInfoEntry::GetParentDeclContextDIE(), SymbolFileDWARF::GetParentSymbolContextDIE(), DWARFDebugInfoEntry::GetQualifiedName(), SymbolFileDWARF::GetTypes(), IsSubroutine(), SymbolFileDWARF::MergeBlockAbstractParameters(), SymbolFileDWARF::ParseAndAppendGlobalVariable(), SymbolFileDWARF::ParseBlocksRecursive(), DWARFASTParserClang::ParseChildMembers(), DWARFASTParserClang::ParseChildParameters(), DWARFASTParserClang::ParseEnum(), DWARFASTParserClang::ParseFunctionFromDWARF(), SymbolFileDWARF::ParseImportedModules(), DWARFASTParserClang::ParseObjCProperty(), DWARFASTParserClang::ParseSingleMember(), DWARFASTParserClang::ParseStructureLikeDIE(), DWARFASTParserClang::ParseSubroutine(), DWARFASTParserClang::ParseTemplateDIE(), SymbolFileDWARF::ParseType(), DWARFASTParserClang::ParseTypeFromDWARF(), DWARFASTParserClang::ParseTypeModifier(), SymbolFileDWARF::ParseTypes(), SymbolFileDWARF::ParseVariableDIE(), SymbolFileDWARF::ParseVariablesInFunctionContextRecursive(), DWARFASTParserClang::ResolveBlockDIE(), SymbolFileDWARF::ResolveFunction(), DWARFASTParserClang::ResolveNamespaceDIE(), SymbolFileDWARF::ResolveTypeUID(), and DWARFASTParserClang::UpdateSymbolContextScopeForType().
|
protected |
|
protected |
Definition at line 119 of file DWARFBaseDIE.h.
Referenced by Clear(), UniqueDWARFASTTypeList::Find(), GetDIE(), IsValid(), and Set().