Lines Matching defs:SymbolFileDWARF

1 //===-- SymbolFileDWARF.cpp -----------------------------------------------===//
9 #include "SymbolFileDWARF.h"
104 LLDB_PLUGIN_DEFINE(SymbolFileDWARF)
106 char SymbolFileDWARF::ID;
121 return SymbolFileDWARF::GetPluginNameStatic();
158 "SymbolFileDWARF::ParseLineTable failed to parse: {0}");
163 "SymbolFileDWARF::ParseLineTable failed to parse: {0}");
183 "SymbolFileDWARF::ParseSupportFiles failed to parse "
189 "SymbolFileDWARF::ParseSupportFiles failed to parse line "
301 void SymbolFileDWARF::Initialize() {
309 void SymbolFileDWARF::DebuggerInitialize(Debugger &debugger) {
319 void SymbolFileDWARF::Terminate() {
325 llvm::StringRef SymbolFileDWARF::GetPluginDescriptionStatic() {
329 SymbolFile *SymbolFileDWARF::CreateInstance(ObjectFileSP objfile_sp) {
330 return new SymbolFileDWARF(std::move(objfile_sp),
334 TypeList &SymbolFileDWARF::GetTypeList() {
340 void SymbolFileDWARF::GetTypes(const DWARFDIE &die, dw_offset_t min_die_offset,
410 void SymbolFileDWARF::GetTypes(SymbolContextScope *sc_scope,
450 SymbolFileDWARF::GetParentSymbolContextDIE(const DWARFDIE &child_die) {
469 SymbolFileDWARF::SymbolFileDWARF(ObjectFileSP objfile_sp,
477 SymbolFileDWARF::~SymbolFileDWARF() = default;
485 SymbolFileDWARF::GetForwardDeclCompilerTypeToDIE() {
491 UniqueDWARFASTTypeMap &SymbolFileDWARF::GetUniqueDWARFASTTypeMap() {
500 SymbolFileDWARF::GetTypeSystemForLanguage(LanguageType language) {
512 void SymbolFileDWARF::InitializeObject() {
558 void SymbolFileDWARF::InitializeFirstCodeAddress() {
565 void SymbolFileDWARF::InitializeFirstCodeAddressRecursive(
577 bool SymbolFileDWARF::SupportedVersion(uint16_t version) {
596 uint32_t SymbolFileDWARF::CalculateAbilities() {
665 "SymbolFileDWARF can't load this DWARF. It's larger then {0:x+16}",
680 void SymbolFileDWARF::LoadSectionData(lldb::SectionType sect_type,
695 llvm::DWARFDebugAbbrev *SymbolFileDWARF::DebugAbbrev() {
718 DWARFDebugInfo &SymbolFileDWARF::DebugInfo() {
727 DWARFCompileUnit *SymbolFileDWARF::GetDWARFCompileUnit(CompileUnit *comp_unit) {
740 DWARFDebugRanges *SymbolFileDWARF::GetDebugRanges() {
779 lldb::CompUnitSP SymbolFileDWARF::ParseCompileUnit(DWARFCompileUnit &dwarf_cu) {
841 LanguageType cu_language = SymbolFileDWARF::LanguageTypeFromDWARF(
860 void SymbolFileDWARF::BuildCuTranslationTable() {
877 std::optional<uint32_t> SymbolFileDWARF::GetDWARFUnitIndex(uint32_t cu_idx) {
886 uint32_t SymbolFileDWARF::CalculateNumCompileUnits() {
892 CompUnitSP SymbolFileDWARF::ParseCompileUnitAtIndex(uint32_t cu_idx) {
902 Function *SymbolFileDWARF::ParseFunction(CompileUnit &comp_unit,
950 SymbolFileDWARF::ConstructFunctionDemangledName(const DWARFDIE &die) {
975 lldb::addr_t SymbolFileDWARF::FixupAddress(lldb::addr_t file_addr) {
982 bool SymbolFileDWARF::FixupAddress(Address &addr) {
990 lldb::LanguageType SymbolFileDWARF::ParseLanguage(CompileUnit &comp_unit) {
999 XcodeSDK SymbolFileDWARF::ParseXcodeSDK(CompileUnit &comp_unit) {
1027 size_t SymbolFileDWARF::ParseFunctions(CompileUnit &comp_unit) {
1050 bool SymbolFileDWARF::ForEachExternalModule(
1078 bool SymbolFileDWARF::ParseSupportFiles(CompileUnit &comp_unit,
1091 bool SymbolFileDWARF::ParseSupportFiles(DWARFUnit &dwarf_cu,
1111 FileSpec SymbolFileDWARF::GetFile(DWARFUnit &unit, size_t file_idx) {
1125 SymbolFileDWARF::GetTypeUnitSupportFiles(DWARFTypeUnit &tu) {
1148 "SymbolFileDWARF::GetTypeUnitSupportFiles failed to parse "
1162 bool SymbolFileDWARF::ParseIsOptimized(CompileUnit &comp_unit) {
1170 bool SymbolFileDWARF::ParseImportedModules(
1225 bool SymbolFileDWARF::ParseLineTable(CompileUnit &comp_unit) {
1288 SymbolFileDWARF::ParseDebugMacros(lldb::offset_t *offset) {
1310 bool SymbolFileDWARF::ParseDebugMacros(CompileUnit &comp_unit) {
1334 size_t SymbolFileDWARF::ParseBlocksRecursive(
1455 bool SymbolFileDWARF::ClassOrStructIsVirtual(const DWARFDIE &parent_die) {
1477 void SymbolFileDWARF::ParseDeclsForContext(CompilerDeclContext decl_ctx) {
1485 SymbolFileDWARF::GetDIE(lldb::user_id_t uid) { return GetDIE(DIERef(uid)); }
1487 CompilerDecl SymbolFileDWARF::GetDeclForUID(lldb::user_id_t type_uid) {
1492 // SymbolFileDWARF::GetDIE(). See comments inside the
1493 // SymbolFileDWARF::GetDIE() for details.
1500 SymbolFileDWARF::GetDeclContextForUID(lldb::user_id_t type_uid) {
1505 // SymbolFileDWARF::GetDIE(). See comments inside the
1506 // SymbolFileDWARF::GetDIE() for details.
1513 SymbolFileDWARF::GetDeclContextContainingUID(lldb::user_id_t type_uid) {
1516 // SymbolFileDWARF::GetDIE(). See comments inside the
1517 // SymbolFileDWARF::GetDIE() for details.
1524 SymbolFileDWARF::GetCompilerContextForUID(lldb::user_id_t type_uid) {
1527 // SymbolFileDWARF::GetDIE(). See comments inside the
1528 // SymbolFileDWARF::GetDIE() for details.
1534 Type *SymbolFileDWARF::ResolveTypeUID(lldb::user_id_t type_uid) {
1537 // SymbolFileDWARF::GetDIE(). See comments inside the
1538 // SymbolFileDWARF::GetDIE() for details.
1545 std::optional<SymbolFile::ArrayInfo> SymbolFileDWARF::GetDynamicArrayInfoForUID(
1554 Type *SymbolFileDWARF::ResolveTypeUID(const DIERef &die_ref) {
1558 Type *SymbolFileDWARF::ResolveTypeUID(const DWARFDIE &die,
1565 "SymbolFileDWARF::ResolveTypeUID (die = {0:x16}) {1} ({2}) '{3}'",
1583 "SymbolFileDWARF::ResolveTypeUID (die = {0:x16}) {1} ({2}) "
1600 // SymbolFileDWARF objects to detect if this DWARF file is the one that can
1602 bool SymbolFileDWARF::HasForwardDeclForCompilerType(
1619 bool SymbolFileDWARF::CompleteType(CompilerType &compiler_type) {
1682 Type *SymbolFileDWARF::ResolveType(const DWARFDIE &die,
1704 SymbolFileDWARF::GetCompUnitForDWARFCompUnit(DWARFCompileUnit &dwarf_cu) {
1721 void SymbolFileDWARF::GetObjCMethods(
1726 bool SymbolFileDWARF::GetFunction(const DWARFDIE &die, SymbolContext &sc) {
1747 lldb::ModuleSP SymbolFileDWARF::GetExternalModule(ConstString name) {
1755 SymbolFileDWARF *SymbolFileDWARF::GetDIERefSymbolFile(const DIERef &die_ref) {
1759 // SymbolFileDWARF classes, one for each .o file. We can often end up with
1761 // "lldb::user_id_t" that specifies a DIE from another SymbolFileDWARF
1766 // If the file index matches, then we have the right SymbolFileDWARF already.
1789 SymbolFileDWARF::GetDIE(const DIERef &die_ref) {
1796 SymbolFileDWARF *symbol_file = GetDIERefSymbolFile(die_ref);
1813 std::optional<uint64_t> SymbolFileDWARF::GetDWOId() {
1823 DWARFUnit *SymbolFileDWARF::GetSkeletonUnit(DWARFUnit *dwo_unit) {
1828 SymbolFileDWARF::GetDwoSymbolFileForCompileUnit(
2005 void SymbolFileDWARF::UpdateExternalModuleListIfNeeded() {
2089 llvm::dyn_cast_or_null<SymbolFileDWARF>(module_sp->GetSymbolFile());
2108 SymbolFileDWARF::GlobalVariableMap &SymbolFileDWARF::GetGlobalAranges() {
2157 void SymbolFileDWARF::ResolveFunctionAndBlock(lldb::addr_t file_vm_addr,
2184 uint32_t SymbolFileDWARF::ResolveSymbolContext(const Address &so_addr,
2188 LLDB_SCOPED_TIMERF("SymbolFileDWARF::"
2291 uint32_t SymbolFileDWARF::ResolveSymbolContext(
2316 void SymbolFileDWARF::PreloadSymbols() {
2328 std::recursive_mutex &SymbolFileDWARF::GetModuleMutex() const {
2335 bool SymbolFileDWARF::DeclContextMatchesThisSymbolFile(
2366 void SymbolFileDWARF::FindGlobalVariables(
2375 "SymbolFileDWARF::FindGlobalVariables (name=\"{0}\", "
2447 "SymbolFileDWARF::FindGlobalVariables (name=\"{0}\", "
2454 void SymbolFileDWARF::FindGlobalVariables(const RegularExpression &regex,
2463 "SymbolFileDWARF::FindGlobalVariables (regex=\"{0}\", "
2488 bool SymbolFileDWARF::ResolveFunction(const DWARFDIE &orig_die,
2539 bool SymbolFileDWARF::DIEInDeclContext(const CompilerDeclContext &decl_ctx,
2564 void SymbolFileDWARF::FindFunctions(const Module::LookupInfo &lookup_info,
2581 "SymbolFileDWARF::FindFunctions (name=\"{0}\", name_type_mask={1:x}, "
2631 "SymbolFileDWARF::FindFunctions (name=\"{0}\", "
2637 void SymbolFileDWARF::FindFunctions(const RegularExpression &regex,
2641 LLDB_SCOPED_TIMERF("SymbolFileDWARF::FindFunctions (regex = '%s')",
2648 log, "SymbolFileDWARF::FindFunctions (regex=\"{0}\", sc_list)",
2660 void SymbolFileDWARF::GetMangledNamesForFunction(
2712 uint64_t SymbolFileDWARF::GetDebugInfoSize(bool load_all_debug_info) {
2734 void SymbolFileDWARF::FindTypes(const TypeQuery &query, TypeResults &results) {
2857 SymbolFileDWARF::FindNamespace(ConstString name,
2865 log, "SymbolFileDWARF::FindNamespace (sc, name=\"{0}\")",
2889 "SymbolFileDWARF::FindNamespace (sc, name=\"{0}\") => "
2900 TypeSP SymbolFileDWARF::GetTypeForDIE(const DWARFDIE &die,
2934 SymbolFileDWARF::GetDeclContextDIEContainingDIE(const DWARFDIE &orig_die) {
2985 Symbol *SymbolFileDWARF::GetObjCClassSymbol(ConstString objc_class_name) {
3005 bool SymbolFileDWARF::Supports_DW_AT_APPLE_objc_complete_type(DWARFUnit *cu) {
3031 TypeSP SymbolFileDWARF::FindCompleteObjCDefinitionTypeForDIE(
3074 SymbolFileDWARF::FindDefinitionDIE(const DWARFDIE &die) {
3091 "SymbolFileDWARF::FindDefinitionDIE(tag={0} "
3165 "SymbolFileDWARF::FindDefinitionDIE(tag={0} ({1}), "
3177 "SymbolFileDWARF::FindDefinitionTypeDIE(tag={0} ({1}), name='{2}') "
3189 TypeSP SymbolFileDWARF::ParseType(const SymbolContext &sc, const DWARFDIE &die,
3224 size_t SymbolFileDWARF::ParseTypes(const SymbolContext &sc,
3262 size_t SymbolFileDWARF::ParseBlocksRecursive(Function &func) {
3283 size_t SymbolFileDWARF::ParseTypes(CompileUnit &comp_unit) {
3299 size_t SymbolFileDWARF::ParseVariablesForContext(const SymbolContext &sc) {
3346 VariableSP SymbolFileDWARF::ParseVariableDIECached(const SymbolContext &sc,
3452 VariableSP SymbolFileDWARF::ParseVariableDIE(const SymbolContext &sc,
3721 SymbolFileDWARF::FindBlockContainingSpecification(
3731 SymbolFileDWARF::FindBlockContainingSpecification(
3764 void SymbolFileDWARF::ParseAndAppendGlobalVariable(
3821 SymbolFileDWARF::MergeBlockAbstractParameters(const DWARFDIE &block_die,
3896 size_t SymbolFileDWARF::ParseVariablesInFunctionContext(
3914 size_t SymbolFileDWARF::ParseVariablesInFunctionContextRecursive(
3981 size_t SymbolFileDWARF::PopulateBlockVariableList(
4042 SymbolFileDWARF::CollectCallEdges(ModuleSP module, DWARFDIE function_die) {
4199 SymbolFileDWARF::ParseCallEdgesInFunction(lldb_private::UserID func_id) {
4211 void SymbolFileDWARF::Dump(lldb_private::Stream &s) {
4216 void SymbolFileDWARF::DumpClangAST(Stream &s) {
4227 bool SymbolFileDWARF::GetSeparateDebugInfo(StructuredData::Dictionary &d,
4293 SymbolFileDWARFDebugMap *SymbolFileDWARF::GetDebugMapSymfile() {
4304 const std::shared_ptr<SymbolFileDWARFDwo> &SymbolFileDWARF::GetDwpSymbolFile() {
4365 SymbolFileDWARF::GetTypeSystem(DWARFUnit &unit) {
4369 DWARFASTParser *SymbolFileDWARF::GetDWARFParser(DWARFUnit &unit) {
4381 CompilerDecl SymbolFileDWARF::GetDecl(const DWARFDIE &die) {
4387 CompilerDeclContext SymbolFileDWARF::GetDeclContext(const DWARFDIE &die) {
4394 SymbolFileDWARF::GetContainingDeclContext(const DWARFDIE &die) {
4400 LanguageType SymbolFileDWARF::LanguageTypeFromDWARF(uint64_t val) {
4411 LanguageType SymbolFileDWARF::GetLanguage(DWARFUnit &unit) {
4415 LanguageType SymbolFileDWARF::GetLanguageFamily(DWARFUnit &unit) {
4422 StatsDuration::Duration SymbolFileDWARF::GetDebugInfoIndexTime() {
4428 Status SymbolFileDWARF::CalculateFrameVariableError(StackFrame &frame) {
4460 void SymbolFileDWARF::GetCompileOptions(