|
LLDB mainline
|
#include "lldb/Target/DynamicLoader.h"#include "lldb/Core/Debugger.h"#include "lldb/Core/Module.h"#include "lldb/Core/ModuleList.h"#include "lldb/Core/ModuleSpec.h"#include "lldb/Core/PluginManager.h"#include "lldb/Core/Section.h"#include "lldb/Symbol/ObjectFile.h"#include "lldb/Symbol/SymbolLocator.h"#include "lldb/Target/MemoryRegionInfo.h"#include "lldb/Target/Platform.h"#include "lldb/Target/Process.h"#include "lldb/Target/Target.h"#include "lldb/Utility/ConstString.h"#include "lldb/Utility/LLDBLog.h"#include "lldb/Utility/Log.h"#include "lldb/lldb-private-interfaces.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SmallVector.h"#include "llvm/ADT/StringRef.h"#include "llvm/Support/Error.h"#include <memory>#include <optional>#include <string>#include <cassert>Go to the source code of this file.
Functions | |
| static ModuleSP | ReadUnnamedMemoryModule (Process *process, addr_t addr, llvm::StringRef name) |
| static std::string | GetBinaryDescription (const DynamicLoader::BinarySpec &bin_spec) |
| static std::string | GetBinaryNotFoundMessage (const DynamicLoader::BinarySpec &bin_spec) |
| static std::optional< SymbolLocator::Request > | PrepareSearch (Target &target, DynamicLoader::BinarySpec &bin_spec) |
| Reads the Target, so it has to be called for one binary at a time. | |
| static void | FinishSearch (DynamicLoader::BinarySpec &bin_spec, llvm::Expected< SymbolLocator::Result > &&located) |
| The module is not registered with the Target until LoadBinaryInTarget. | |
| static void | FindBinaryUUIDInMemory (Process *process, DynamicLoader::BinarySpec &bin_spec) |
|
static |
Definition at line 313 of file DynamicLoader.cpp.
References lldb_private::DynamicLoader::BinarySpec::memory_module_sp, lldb_private::DynamicLoader::BinarySpec::name, ReadUnnamedMemoryModule(), lldb_private::DynamicLoader::BinarySpec::uuid, and lldb_private::DynamicLoader::BinarySpec::value.
Referenced by lldb_private::DynamicLoader::LocateBinaries().
|
static |
The module is not registered with the Target until LoadBinaryInTarget.
Definition at line 280 of file DynamicLoader.cpp.
References error(), lldb_private::DynamicLoader::BinarySpec::error, lldb_private::Status::FromError(), lldb_private::ModuleList::GetSharedModule(), and lldb_private::DynamicLoader::BinarySpec::module_sp.
Referenced by lldb_private::DynamicLoader::LocateBinaries().
|
static |
Definition at line 220 of file DynamicLoader.cpp.
References lldb_private::UUID::GetAsString(), lldb_private::StreamString::GetString(), lldb_private::UUID::IsValid(), LLDB_INVALID_ADDRESS, lldb_private::DynamicLoader::BinarySpec::name, lldb_private::Stream::PutHex64(), lldb_private::DynamicLoader::BinarySpec::uuid, lldb_private::DynamicLoader::BinarySpec::value, and lldb_private::DynamicLoader::BinarySpec::value_is_offset.
Referenced by lldb_private::DynamicLoader::LoadBinaryInTarget(), and PrepareSearch().
|
static |
Definition at line 234 of file DynamicLoader.cpp.
References lldb_private::UUID::GetAsString(), lldb_private::StreamString::GetString(), lldb_private::UUID::IsValid(), LLDB_INVALID_ADDRESS, lldb_private::DynamicLoader::BinarySpec::name, lldb_private::Stream::Printf(), lldb_private::DynamicLoader::BinarySpec::uuid, lldb_private::DynamicLoader::BinarySpec::value, and lldb_private::DynamicLoader::BinarySpec::value_is_offset.
Referenced by lldb_private::DynamicLoader::LoadBinaryInTarget().
|
static |
Reads the Target, so it has to be called for one binary at a time.
Definition at line 254 of file DynamicLoader.cpp.
References lldb_private::SymbolLocator::Request::description, lldb_private::SymbolLocator::Request::external_lookup, lldb_private::DynamicLoader::BinarySpec::force_symbol_search, GetBinaryDescription(), lldb_private::ModuleSpec::GetFileSpec(), lldb_private::Target::GetPlatform(), lldb_private::ModuleList::GetSharedModule(), lldb_private::ModuleSpec::GetUUID(), lldb_private::FileSystem::Instance(), lldb_private::DynamicLoader::BinarySpec::module_sp, lldb_private::SymbolLocator::Request::module_spec, lldb_private::DynamicLoader::BinarySpec::name, lldb_private::SymbolLocator::Request::platform, lldb_private::ModuleSpec::SetTarget(), and lldb_private::DynamicLoader::BinarySpec::uuid.
Referenced by lldb_private::DynamicLoader::LocateBinaries().
Definition at line 202 of file DynamicLoader.cpp.
References lldb_private::DynamicLoader, lldb_private::GetLog(), LLDB_LOG_ERROR, and lldb_private::Process::ReadModuleFromMemory().
Referenced by FindBinaryUUIDInMemory(), and lldb_private::DynamicLoader::LoadBinaryInTarget().