LLDB mainline
|
#include <SymbolLocatorDebugSymbols.h>
Public Member Functions | |
SymbolLocatorDebugSymbols () | |
llvm::StringRef | GetPluginName () override |
PluginInterface protocol. | |
Public Member Functions inherited from lldb_private::SymbolLocator | |
SymbolLocator ()=default | |
Public Member Functions inherited from lldb_private::PluginInterface | |
PluginInterface ()=default | |
virtual | ~PluginInterface ()=default |
virtual llvm::StringRef | GetPluginName ()=0 |
PluginInterface (const PluginInterface &)=delete | |
PluginInterface & | operator= (const PluginInterface &)=delete |
Static Public Member Functions | |
static void | Initialize () |
static void | Terminate () |
static llvm::StringRef | GetPluginNameStatic () |
static llvm::StringRef | GetPluginDescriptionStatic () |
static lldb_private::SymbolLocator * | CreateInstance () |
static std::optional< ModuleSpec > | LocateExecutableObjectFile (const ModuleSpec &module_spec) |
static std::optional< FileSpec > | LocateExecutableSymbolFile (const ModuleSpec &module_spec, const FileSpecList &default_search_paths) |
static bool | DownloadObjectAndSymbolFile (ModuleSpec &module_spec, Status &error, bool force_lookup, bool copy_executable) |
static std::optional< FileSpec > | FindSymbolFileInBundle (const FileSpec &dsym_bundle_fspec, const UUID *uuid, const ArchSpec *arch) |
Static Public Member Functions inherited from lldb_private::SymbolLocator | |
static void | DownloadSymbolFileAsync (const UUID &uuid) |
Locate the symbol file for the given UUID on a background thread. | |
Definition at line 17 of file SymbolLocatorDebugSymbols.h.
SymbolLocatorDebugSymbols::SymbolLocatorDebugSymbols | ( | ) |
Definition at line 62 of file SymbolLocatorDebugSymbols.cpp.
Referenced by CreateInstance().
|
static |
Definition at line 79 of file SymbolLocatorDebugSymbols.cpp.
References SymbolLocatorDebugSymbols().
Referenced by Initialize(), and Terminate().
|
static |
Definition at line 1026 of file SymbolLocatorDebugSymbols.cpp.
References error(), CFCReleaser< T >::get(), lldb_private::ModuleSpec::GetArchitecture(), lldb_private::UUID::GetAsString(), lldb_private::StreamString::GetData(), GetDbgShellCommand(), GetDsymForUUIDExecutable(), lldb_private::FileSpec::GetFilename(), lldb_private::ModuleSpec::GetFileSpecPtr(), lldb_private::GetLog(), GetModuleSpecInfoFromUUIDDictionary(), lldb_private::FileSpec::GetPath(), lldb_private::ConstString::GetString(), lldb_private::StreamString::GetString(), lldb_private::ModuleSpec::GetUUIDPtr(), lldb_private::Host, lldb_private::FileSystem::Instance(), lldb_private::ArchSpec::IsCompatibleMatch(), LLDB_LOG, LLDB_LOGF, and lldb_private::Host::RunShellCommand().
Referenced by Initialize().
|
static |
Definition at line 329 of file SymbolLocatorDebugSymbols.cpp.
References lldb_private::ModuleSpec::GetArchitecture(), lldb_private::ModuleSpec::GetArchitecturePtr(), lldb_private::ModuleSpecList::GetModuleSpecAtIndex(), lldb_private::ObjectFile::GetModuleSpecifications(), lldb_private::FileSpec::GetPath(), lldb_private::ModuleSpecList::GetSize(), lldb_private::ModuleSpec::GetUUID(), lldb_private::ModuleSpec::GetUUIDPtr(), lldb_private::FileSystem::GetVirtualFileSystem(), lldb_private::FileSystem::Instance(), lldb_private::ArchSpec::IsCompatibleMatch(), and UNUSED_IF_ASSERT_DISABLED.
Referenced by Initialize().
|
static |
Definition at line 75 of file SymbolLocatorDebugSymbols.cpp.
Referenced by Initialize().
|
inlineoverridevirtual |
PluginInterface protocol.
Implements lldb_private::PluginInterface.
Definition at line 31 of file SymbolLocatorDebugSymbols.h.
References GetPluginNameStatic().
|
inlinestatic |
Definition at line 24 of file SymbolLocatorDebugSymbols.h.
Referenced by GetPluginName(), and Initialize().
|
static |
Definition at line 64 of file SymbolLocatorDebugSymbols.cpp.
References CreateInstance(), DownloadObjectAndSymbolFile(), FindSymbolFileInBundle(), GetPluginDescriptionStatic(), GetPluginNameStatic(), LocateExecutableObjectFile(), LocateExecutableSymbolFile(), and lldb_private::PluginManager::RegisterPlugin().
|
static |
Definition at line 83 of file SymbolLocatorDebugSymbols.cpp.
References lldb_private::FileSpec::Clear(), CFCBundle::CopyExecutableURL(), lldb_private::FileSystem::Exists(), lldb_private::ModuleSpecList::FindMatchingModuleSpec(), lldb_private::PluginManager::FindSymbolFileInBundle(), g_dlsym_DBGCopyDSYMPropertyLists, g_dlsym_DBGCopyFullDSYMURLForUUID, CFCReleaser< T >::get(), lldb_private::ModuleSpec::GetArchitecturePtr(), lldb_private::UUID::GetAsString(), lldb_private::UUID::GetBytes(), lldb_private::ModuleSpec::GetFileSpec(), lldb_private::ModuleSpec::GetFileSpecPtr(), lldb_private::ModuleList::GetGlobalModuleListProperties(), lldb_private::GetLog(), lldb_private::ObjectFile::GetModuleSpecifications(), lldb_private::FileSpec::GetPath(), lldb_private::ModuleSpec::GetSymbolFileSpec(), lldb_private::ModuleSpec::GetUUID(), lldb_private::ModuleSpec::GetUUIDPtr(), lldb_private::Host, lldb_private::FileSystem::Instance(), lldb_private::UUID::IsValid(), LLDB_LOGF, PATH_MAX, CFCReleaser< T >::reset(), lldb_private::FileSystem::Resolve(), and lldb_private::SharedCacheImageInfo::uuid.
Referenced by Initialize().
|
static |
Definition at line 768 of file SymbolLocatorDebugSymbols.cpp.
References lldb_private::ConstString::AsCString(), lldb_private::ArchSpec::GetArchitectureName(), lldb_private::ModuleSpec::GetArchitecturePtr(), lldb_private::FileSpec::GetFilename(), lldb_private::ModuleSpec::GetFileSpec(), lldb_private::ModuleSpec::GetFileSpecPtr(), lldb_private::ModuleSpec::GetSymbolFileSpec(), lldb_private::ModuleSpec::GetUUIDPtr(), LLDB_SCOPED_TIMERF, LocateDSYMInVincinityOfExecutable(), and LocateMacOSXFilesUsingDebugSymbols().
Referenced by Initialize().
|
static |
Definition at line 71 of file SymbolLocatorDebugSymbols.cpp.
References CreateInstance(), and lldb_private::PluginManager::UnregisterPlugin().