#include "lldb/Target/Target.h"
#include "lldb/Breakpoint/BreakpointIDList.h"
#include "lldb/Breakpoint/BreakpointPrecondition.h"
#include "lldb/Breakpoint/BreakpointResolver.h"
#include "lldb/Breakpoint/BreakpointResolverAddress.h"
#include "lldb/Breakpoint/BreakpointResolverFileLine.h"
#include "lldb/Breakpoint/BreakpointResolverFileRegex.h"
#include "lldb/Breakpoint/BreakpointResolverName.h"
#include "lldb/Breakpoint/BreakpointResolverScripted.h"
#include "lldb/Breakpoint/Watchpoint.h"
#include "lldb/Core/Debugger.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/ModuleSpec.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Core/SearchFilter.h"
#include "lldb/Core/Section.h"
#include "lldb/Core/SourceManager.h"
#include "lldb/Core/StructuredDataImpl.h"
#include "lldb/Core/ValueObject.h"
#include "lldb/Core/ValueObjectConstResult.h"
#include "lldb/Expression/DiagnosticManager.h"
#include "lldb/Expression/ExpressionVariable.h"
#include "lldb/Expression/REPL.h"
#include "lldb/Expression/UserExpression.h"
#include "lldb/Expression/UtilityFunction.h"
#include "lldb/Host/Host.h"
#include "lldb/Host/PosixApi.h"
#include "lldb/Host/StreamFile.h"
#include "lldb/Interpreter/CommandInterpreter.h"
#include "lldb/Interpreter/CommandReturnObject.h"
#include "lldb/Interpreter/Interfaces/ScriptedStopHookInterface.h"
#include "lldb/Interpreter/OptionGroupWatchpoint.h"
#include "lldb/Interpreter/OptionValues.h"
#include "lldb/Interpreter/Property.h"
#include "lldb/Symbol/Function.h"
#include "lldb/Symbol/ObjectFile.h"
#include "lldb/Symbol/Symbol.h"
#include "lldb/Target/ABI.h"
#include "lldb/Target/ExecutionContext.h"
#include "lldb/Target/Language.h"
#include "lldb/Target/LanguageRuntime.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/RegisterTypeBuilder.h"
#include "lldb/Target/SectionLoadList.h"
#include "lldb/Target/StackFrame.h"
#include "lldb/Target/StackFrameRecognizer.h"
#include "lldb/Target/SystemRuntime.h"
#include "lldb/Target/Thread.h"
#include "lldb/Target/ThreadSpec.h"
#include "lldb/Target/UnixSignals.h"
#include "lldb/Utility/Event.h"
#include "lldb/Utility/FileSpec.h"
#include "lldb/Utility/LLDBAssert.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/RealpathPrefixes.h"
#include "lldb/Utility/State.h"
#include "lldb/Utility/StreamString.h"
#include "lldb/Utility/Timer.h"
#include "llvm/ADT/ScopeExit.h"
#include "llvm/ADT/SetVector.h"
#include <memory>
#include <mutex>
#include <optional>
#include <sstream>
usingnamespacelldb;
usingnamespacelldb_private;
namespace {
struct ExecutableInstaller { … };
struct MainExecutableInstaller { … };
}
template <typename Installer>
static Status installExecutable(const Installer &installer) { … }
constexpr std::chrono::milliseconds EvaluateExpressionOptions::default_timeout;
Target::Arch::Arch(const ArchSpec &spec)
: … { … }
const Target::Arch &Target::Arch::operator=(const ArchSpec &spec) { … }
llvm::StringRef Target::GetStaticBroadcasterClass() { … }
Target::Target(Debugger &debugger, const ArchSpec &target_arch,
const lldb::PlatformSP &platform_sp, bool is_dummy_target)
: … { … }
Target::~Target() { … }
void Target::PrimeFromDummyTarget(Target &target) { … }
void Target::Dump(Stream *s, lldb::DescriptionLevel description_level) { … }
void Target::CleanupProcess() { … }
void Target::DeleteCurrentProcess() { … }
const lldb::ProcessSP &Target::CreateProcess(ListenerSP listener_sp,
llvm::StringRef plugin_name,
const FileSpec *crash_file,
bool can_connect) { … }
const lldb::ProcessSP &Target::GetProcessSP() const { … }
lldb::REPLSP Target::GetREPL(Status &err, lldb::LanguageType language,
const char *repl_options, bool can_create) { … }
void Target::SetREPL(lldb::LanguageType language, lldb::REPLSP repl_sp) { … }
void Target::Destroy() { … }
llvm::StringRef Target::GetABIName() const { … }
BreakpointList &Target::GetBreakpointList(bool internal) { … }
const BreakpointList &Target::GetBreakpointList(bool internal) const { … }
BreakpointSP Target::GetBreakpointByID(break_id_t break_id) { … }
lldb::BreakpointSP
lldb_private::Target::CreateBreakpointAtUserEntry(Status &error) { … }
BreakpointSP Target::CreateSourceRegexBreakpoint(
const FileSpecList *containingModules,
const FileSpecList *source_file_spec_list,
const std::unordered_set<std::string> &function_names,
RegularExpression source_regex, bool internal, bool hardware,
LazyBool move_to_nearest_code) { … }
BreakpointSP Target::CreateBreakpoint(const FileSpecList *containingModules,
const FileSpec &file, uint32_t line_no,
uint32_t column, lldb::addr_t offset,
LazyBool check_inlines,
LazyBool skip_prologue, bool internal,
bool hardware,
LazyBool move_to_nearest_code) { … }
BreakpointSP Target::CreateBreakpoint(lldb::addr_t addr, bool internal,
bool hardware) { … }
BreakpointSP Target::CreateBreakpoint(const Address &addr, bool internal,
bool hardware) { … }
lldb::BreakpointSP
Target::CreateAddressInModuleBreakpoint(lldb::addr_t file_addr, bool internal,
const FileSpec &file_spec,
bool request_hardware) { … }
BreakpointSP Target::CreateBreakpoint(
const FileSpecList *containingModules,
const FileSpecList *containingSourceFiles, const char *func_name,
FunctionNameType func_name_type_mask, LanguageType language,
lldb::addr_t offset, LazyBool skip_prologue, bool internal, bool hardware) { … }
lldb::BreakpointSP
Target::CreateBreakpoint(const FileSpecList *containingModules,
const FileSpecList *containingSourceFiles,
const std::vector<std::string> &func_names,
FunctionNameType func_name_type_mask,
LanguageType language, lldb::addr_t offset,
LazyBool skip_prologue, bool internal, bool hardware) { … }
BreakpointSP
Target::CreateBreakpoint(const FileSpecList *containingModules,
const FileSpecList *containingSourceFiles,
const char *func_names[], size_t num_names,
FunctionNameType func_name_type_mask,
LanguageType language, lldb::addr_t offset,
LazyBool skip_prologue, bool internal, bool hardware) { … }
SearchFilterSP
Target::GetSearchFilterForModule(const FileSpec *containingModule) { … }
SearchFilterSP
Target::GetSearchFilterForModuleList(const FileSpecList *containingModules) { … }
SearchFilterSP Target::GetSearchFilterForModuleAndCUList(
const FileSpecList *containingModules,
const FileSpecList *containingSourceFiles) { … }
BreakpointSP Target::CreateFuncRegexBreakpoint(
const FileSpecList *containingModules,
const FileSpecList *containingSourceFiles, RegularExpression func_regex,
lldb::LanguageType requested_language, LazyBool skip_prologue,
bool internal, bool hardware) { … }
lldb::BreakpointSP
Target::CreateExceptionBreakpoint(enum lldb::LanguageType language,
bool catch_bp, bool throw_bp, bool internal,
Args *additional_args, Status *error) { … }
lldb::BreakpointSP Target::CreateScriptedBreakpoint(
const llvm::StringRef class_name, const FileSpecList *containingModules,
const FileSpecList *containingSourceFiles, bool internal,
bool request_hardware, StructuredData::ObjectSP extra_args_sp,
Status *creation_error) { … }
BreakpointSP Target::CreateBreakpoint(SearchFilterSP &filter_sp,
BreakpointResolverSP &resolver_sp,
bool internal, bool request_hardware,
bool resolve_indirect_symbols) { … }
void Target::AddBreakpoint(lldb::BreakpointSP bp_sp, bool internal) { … }
void Target::AddNameToBreakpoint(BreakpointID &id, llvm::StringRef name,
Status &error) { … }
void Target::AddNameToBreakpoint(BreakpointSP &bp_sp, llvm::StringRef name,
Status &error) { … }
void Target::AddBreakpointName(std::unique_ptr<BreakpointName> bp_name) { … }
BreakpointName *Target::FindBreakpointName(ConstString name, bool can_create,
Status &error) { … }
void Target::DeleteBreakpointName(ConstString name) { … }
void Target::RemoveNameFromBreakpoint(lldb::BreakpointSP &bp_sp,
ConstString name) { … }
void Target::ConfigureBreakpointName(
BreakpointName &bp_name, const BreakpointOptions &new_options,
const BreakpointName::Permissions &new_permissions) { … }
void Target::ApplyNameToBreakpoints(BreakpointName &bp_name) { … }
void Target::GetBreakpointNames(std::vector<std::string> &names) { … }
bool Target::ProcessIsValid() { … }
static bool CheckIfWatchpointsSupported(Target *target, Status &error) { … }
WatchpointSP Target::CreateWatchpoint(lldb::addr_t addr, size_t size,
const CompilerType *type, uint32_t kind,
Status &error) { … }
void Target::RemoveAllowedBreakpoints() { … }
void Target::RemoveAllBreakpoints(bool internal_also) { … }
void Target::DisableAllBreakpoints(bool internal_also) { … }
void Target::DisableAllowedBreakpoints() { … }
void Target::EnableAllBreakpoints(bool internal_also) { … }
void Target::EnableAllowedBreakpoints() { … }
bool Target::RemoveBreakpointByID(break_id_t break_id) { … }
bool Target::DisableBreakpointByID(break_id_t break_id) { … }
bool Target::EnableBreakpointByID(break_id_t break_id) { … }
void Target::ResetBreakpointHitCounts() { … }
Status Target::SerializeBreakpointsToFile(const FileSpec &file,
const BreakpointIDList &bp_ids,
bool append) { … }
Status Target::CreateBreakpointsFromFile(const FileSpec &file,
BreakpointIDList &new_bps) { … }
Status Target::CreateBreakpointsFromFile(const FileSpec &file,
std::vector<std::string> &names,
BreakpointIDList &new_bps) { … }
bool Target::RemoveAllWatchpoints(bool end_to_end) { … }
bool Target::DisableAllWatchpoints(bool end_to_end) { … }
bool Target::EnableAllWatchpoints(bool end_to_end) { … }
bool Target::ClearAllWatchpointHitCounts() { … }
bool Target::ClearAllWatchpointHistoricValues() { … }
bool Target::IgnoreAllWatchpoints(uint32_t ignore_count) { … }
bool Target::DisableWatchpointByID(lldb::watch_id_t watch_id) { … }
bool Target::EnableWatchpointByID(lldb::watch_id_t watch_id) { … }
bool Target::RemoveWatchpointByID(lldb::watch_id_t watch_id) { … }
bool Target::IgnoreWatchpointByID(lldb::watch_id_t watch_id,
uint32_t ignore_count) { … }
ModuleSP Target::GetExecutableModule() { … }
Module *Target::GetExecutableModulePointer() { … }
static void LoadScriptingResourceForModule(const ModuleSP &module_sp,
Target *target) { … }
void Target::ClearModules(bool delete_locations) { … }
void Target::DidExec() { … }
void Target::SetExecutableModule(ModuleSP &executable_sp,
LoadDependentFiles load_dependent_files) { … }
bool Target::SetArchitecture(const ArchSpec &arch_spec, bool set_platform,
bool merge) { … }
bool Target::MergeArchitecture(const ArchSpec &arch_spec) { … }
void Target::NotifyWillClearList(const ModuleList &module_list) { … }
void Target::NotifyModuleAdded(const ModuleList &module_list,
const ModuleSP &module_sp) { … }
void Target::NotifyModuleRemoved(const ModuleList &module_list,
const ModuleSP &module_sp) { … }
void Target::NotifyModuleUpdated(const ModuleList &module_list,
const ModuleSP &old_module_sp,
const ModuleSP &new_module_sp) { … }
void Target::NotifyModulesRemoved(lldb_private::ModuleList &module_list) { … }
void Target::ModulesDidLoad(ModuleList &module_list) { … }
void Target::SymbolsDidLoad(ModuleList &module_list) { … }
void Target::ModulesDidUnload(ModuleList &module_list, bool delete_locations) { … }
bool Target::ModuleIsExcludedForUnconstrainedSearches(
const FileSpec &module_file_spec) { … }
bool Target::ModuleIsExcludedForUnconstrainedSearches(
const lldb::ModuleSP &module_sp) { … }
size_t Target::ReadMemoryFromFileCache(const Address &addr, void *dst,
size_t dst_len, Status &error) { … }
size_t Target::ReadMemory(const Address &addr, void *dst, size_t dst_len,
Status &error, bool force_live_memory,
lldb::addr_t *load_addr_ptr) { … }
size_t Target::ReadCStringFromMemory(const Address &addr, std::string &out_str,
Status &error, bool force_live_memory) { … }
size_t Target::ReadCStringFromMemory(const Address &addr, char *dst,
size_t dst_max_len, Status &result_error,
bool force_live_memory) { … }
addr_t Target::GetReasonableReadSize(const Address &addr) { … }
size_t Target::ReadStringFromMemory(const Address &addr, char *dst,
size_t max_bytes, Status &error,
size_t type_width, bool force_live_memory) { … }
size_t Target::ReadScalarIntegerFromMemory(const Address &addr, uint32_t byte_size,
bool is_signed, Scalar &scalar,
Status &error,
bool force_live_memory) { … }
uint64_t Target::ReadUnsignedIntegerFromMemory(const Address &addr,
size_t integer_byte_size,
uint64_t fail_value, Status &error,
bool force_live_memory) { … }
bool Target::ReadPointerFromMemory(const Address &addr, Status &error,
Address &pointer_addr,
bool force_live_memory) { … }
ModuleSP Target::GetOrCreateModule(const ModuleSpec &orig_module_spec,
bool notify, Status *error_ptr) { … }
TargetSP Target::CalculateTarget() { … }
ProcessSP Target::CalculateProcess() { … }
ThreadSP Target::CalculateThread() { … }
StackFrameSP Target::CalculateStackFrame() { … }
void Target::CalculateExecutionContext(ExecutionContext &exe_ctx) { … }
PathMappingList &Target::GetImageSearchPathList() { … }
void Target::ImageSearchPathsChanged(const PathMappingList &path_list,
void *baton) { … }
llvm::Expected<lldb::TypeSystemSP>
Target::GetScratchTypeSystemForLanguage(lldb::LanguageType language,
bool create_on_demand) { … }
CompilerType Target::GetRegisterType(const std::string &name,
const lldb_private::RegisterFlags &flags,
uint32_t byte_size) { … }
std::vector<lldb::TypeSystemSP>
Target::GetScratchTypeSystems(bool create_on_demand) { … }
PersistentExpressionState *
Target::GetPersistentExpressionStateForLanguage(lldb::LanguageType language) { … }
UserExpression *Target::GetUserExpressionForLanguage(
llvm::StringRef expr, llvm::StringRef prefix, SourceLanguage language,
Expression::ResultType desired_type,
const EvaluateExpressionOptions &options, ValueObject *ctx_obj,
Status &error) { … }
FunctionCaller *Target::GetFunctionCallerForLanguage(
lldb::LanguageType language, const CompilerType &return_type,
const Address &function_address, const ValueList &arg_value_list,
const char *name, Status &error) { … }
llvm::Expected<std::unique_ptr<UtilityFunction>>
Target::CreateUtilityFunction(std::string expression, std::string name,
lldb::LanguageType language,
ExecutionContext &exe_ctx) { … }
void Target::SettingsInitialize() { … }
void Target::SettingsTerminate() { … }
FileSpecList Target::GetDefaultExecutableSearchPaths() { … }
FileSpecList Target::GetDefaultDebugFileSearchPaths() { … }
ArchSpec Target::GetDefaultArchitecture() { … }
void Target::SetDefaultArchitecture(const ArchSpec &arch) { … }
llvm::Error Target::SetLabel(llvm::StringRef label) { … }
Target *Target::GetTargetFromContexts(const ExecutionContext *exe_ctx_ptr,
const SymbolContext *sc_ptr) { … }
ExpressionResults Target::EvaluateExpression(
llvm::StringRef expr, ExecutionContextScope *exe_scope,
lldb::ValueObjectSP &result_valobj_sp,
const EvaluateExpressionOptions &options, std::string *fixed_expression,
ValueObject *ctx_obj) { … }
lldb::ExpressionVariableSP Target::GetPersistentVariable(ConstString name) { … }
lldb::addr_t Target::GetPersistentSymbol(ConstString name) { … }
llvm::Expected<lldb_private::Address> Target::GetEntryPointAddress() { … }
lldb::addr_t Target::GetCallableLoadAddress(lldb::addr_t load_addr,
AddressClass addr_class) const { … }
lldb::addr_t Target::GetOpcodeLoadAddress(lldb::addr_t load_addr,
AddressClass addr_class) const { … }
lldb::addr_t Target::GetBreakableLoadAddress(lldb::addr_t addr) { … }
SourceManager &Target::GetSourceManager() { … }
Target::StopHookSP Target::CreateStopHook(StopHook::StopHookKind kind) { … }
void Target::UndoCreateStopHook(lldb::user_id_t user_id) { … }
bool Target::RemoveStopHookByID(lldb::user_id_t user_id) { … }
void Target::RemoveAllStopHooks() { … }
Target::StopHookSP Target::GetStopHookByID(lldb::user_id_t user_id) { … }
bool Target::SetStopHookActiveStateByID(lldb::user_id_t user_id,
bool active_state) { … }
void Target::SetAllStopHooksActiveState(bool active_state) { … }
bool Target::RunStopHooks() { … }
TargetProperties &Target::GetGlobalProperties() { … }
Status Target::Install(ProcessLaunchInfo *launch_info) { … }
bool Target::ResolveLoadAddress(addr_t load_addr, Address &so_addr,
uint32_t stop_id) { … }
bool Target::ResolveFileAddress(lldb::addr_t file_addr,
Address &resolved_addr) { … }
bool Target::SetSectionLoadAddress(const SectionSP §ion_sp,
addr_t new_section_load_addr,
bool warn_multiple) { … }
size_t Target::UnloadModuleSections(const ModuleList &module_list) { … }
size_t Target::UnloadModuleSections(const lldb::ModuleSP &module_sp) { … }
bool Target::SetSectionUnloaded(const lldb::SectionSP §ion_sp) { … }
bool Target::SetSectionUnloaded(const lldb::SectionSP §ion_sp,
addr_t load_addr) { … }
void Target::ClearAllLoadedSections() { … }
lldb_private::SummaryStatisticsSP Target::GetSummaryStatisticsSPForProviderName(
lldb_private::TypeSummaryImpl &summary_provider) { … }
SummaryStatisticsCache &Target::GetSummaryStatisticsCache() { … }
void Target::SaveScriptedLaunchInfo(lldb_private::ProcessInfo &process_info) { … }
Status Target::Launch(ProcessLaunchInfo &launch_info, Stream *stream) { … }
void Target::SetTrace(const TraceSP &trace_sp) { … }
TraceSP Target::GetTrace() { … }
llvm::Expected<TraceSP> Target::CreateTrace() { … }
llvm::Expected<TraceSP> Target::GetTraceOrCreate() { … }
Status Target::Attach(ProcessAttachInfo &attach_info, Stream *stream) { … }
void Target::FinalizeFileActions(ProcessLaunchInfo &info) { … }
void Target::AddDummySignal(llvm::StringRef name, LazyBool pass, LazyBool notify,
LazyBool stop) { … }
bool Target::UpdateSignalFromDummy(UnixSignalsSP signals_sp,
const DummySignalElement &elem) { … }
bool Target::ResetSignalFromDummy(UnixSignalsSP signals_sp,
const DummySignalElement &elem) { … }
void Target::UpdateSignalsFromDummy(UnixSignalsSP signals_sp,
StreamSP warning_stream_sp) { … }
void Target::ClearDummySignals(Args &signal_names) { … }
void Target::PrintDummySignals(Stream &strm, Args &signal_args) { … }
Target::StopHook::StopHook(lldb::TargetSP target_sp, lldb::user_id_t uid)
: … { … }
Target::StopHook::StopHook(const StopHook &rhs)
: … { … }
void Target::StopHook::SetSpecifier(SymbolContextSpecifier *specifier) { … }
void Target::StopHook::SetThreadSpecifier(ThreadSpec *specifier) { … }
bool Target::StopHook::ExecutionContextPasses(const ExecutionContext &exc_ctx) { … }
void Target::StopHook::GetDescription(Stream &s,
lldb::DescriptionLevel level) const { … }
void Target::StopHookCommandLine::GetSubclassDescription(
Stream &s, lldb::DescriptionLevel level) const { … }
void Target::StopHookCommandLine::SetActionFromString(const std::string &string) { … }
void Target::StopHookCommandLine::SetActionFromStrings(
const std::vector<std::string> &strings) { … }
Target::StopHook::StopHookResult
Target::StopHookCommandLine::HandleStop(ExecutionContext &exc_ctx,
StreamSP output_sp) { … }
Status Target::StopHookScripted::SetScriptCallback(
std::string class_name, StructuredData::ObjectSP extra_args_sp) { … }
Target::StopHook::StopHookResult
Target::StopHookScripted::HandleStop(ExecutionContext &exc_ctx,
StreamSP output_sp) { … }
void Target::StopHookScripted::GetSubclassDescription(
Stream &s, lldb::DescriptionLevel level) const { … }
static constexpr OptionEnumValueElement g_dynamic_value_types[] = …;
OptionEnumValues lldb_private::GetDynamicValueTypes() { … }
static constexpr OptionEnumValueElement g_inline_breakpoint_enums[] = …;
enum x86DisassemblyFlavor { … };
static constexpr OptionEnumValueElement g_x86_dis_flavor_value_types[] = …;
static constexpr OptionEnumValueElement g_import_std_module_value_types[] = …;
static constexpr OptionEnumValueElement
g_dynamic_class_info_helper_value_types[] = …;
static constexpr OptionEnumValueElement g_hex_immediate_style_values[] = …;
static constexpr OptionEnumValueElement g_load_script_from_sym_file_values[] = …;
static constexpr OptionEnumValueElement g_load_cwd_lldbinit_values[] = …;
static constexpr OptionEnumValueElement g_memory_module_load_level_values[] = …;
#define LLDB_PROPERTIES_target
#include "TargetProperties.inc"
enum { … };
class TargetOptionValueProperties
: public Cloneable<TargetOptionValueProperties, OptionValueProperties> { … };
#define LLDB_PROPERTIES_target_experimental
#include "TargetProperties.inc"
enum { … };
class TargetExperimentalOptionValueProperties
: public Cloneable<TargetExperimentalOptionValueProperties,
OptionValueProperties> { … };
TargetExperimentalProperties::TargetExperimentalProperties()
: … { … }
TargetProperties::TargetProperties(Target *target)
: … { … }
TargetProperties::~TargetProperties() = default;
void TargetProperties::UpdateLaunchInfoFromProperties() { … }
std::optional<bool> TargetProperties::GetExperimentalPropertyValue(
size_t prop_idx, ExecutionContext *exe_ctx) const { … }
bool TargetProperties::GetInjectLocalVariables(
ExecutionContext *exe_ctx) const { … }
ArchSpec TargetProperties::GetDefaultArchitecture() const { … }
void TargetProperties::SetDefaultArchitecture(const ArchSpec &arch) { … }
bool TargetProperties::GetMoveToNearestCode() const { … }
lldb::DynamicValueType TargetProperties::GetPreferDynamicValue() const { … }
bool TargetProperties::SetPreferDynamicValue(lldb::DynamicValueType d) { … }
bool TargetProperties::GetPreloadSymbols() const { … }
void TargetProperties::SetPreloadSymbols(bool b) { … }
bool TargetProperties::GetDisableASLR() const { … }
void TargetProperties::SetDisableASLR(bool b) { … }
bool TargetProperties::GetInheritTCC() const { … }
void TargetProperties::SetInheritTCC(bool b) { … }
bool TargetProperties::GetDetachOnError() const { … }
void TargetProperties::SetDetachOnError(bool b) { … }
bool TargetProperties::GetDisableSTDIO() const { … }
void TargetProperties::SetDisableSTDIO(bool b) { … }
const char *TargetProperties::GetDisassemblyFlavor() const { … }
InlineStrategy TargetProperties::GetInlineStrategy() const { … }
RealpathPrefixes TargetProperties::GetSourceRealpathPrefixes() const { … }
llvm::StringRef TargetProperties::GetArg0() const { … }
void TargetProperties::SetArg0(llvm::StringRef arg) { … }
bool TargetProperties::GetRunArguments(Args &args) const { … }
void TargetProperties::SetRunArguments(const Args &args) { … }
Environment TargetProperties::ComputeEnvironment() const { … }
Environment TargetProperties::GetEnvironment() const { … }
Environment TargetProperties::GetInheritedEnvironment() const { … }
Environment TargetProperties::GetTargetEnvironment() const { … }
void TargetProperties::SetEnvironment(Environment env) { … }
bool TargetProperties::GetSkipPrologue() const { … }
PathMappingList &TargetProperties::GetSourcePathMap() const { … }
PathMappingList &TargetProperties::GetObjectPathMap() const { … }
bool TargetProperties::GetAutoSourceMapRelative() const { … }
void TargetProperties::AppendExecutableSearchPaths(const FileSpec &dir) { … }
FileSpecList TargetProperties::GetExecutableSearchPaths() { … }
FileSpecList TargetProperties::GetDebugFileSearchPaths() { … }
FileSpecList TargetProperties::GetClangModuleSearchPaths() { … }
bool TargetProperties::GetEnableAutoImportClangModules() const { … }
ImportStdModule TargetProperties::GetImportStdModule() const { … }
DynamicClassInfoHelper TargetProperties::GetDynamicClassInfoHelper() const { … }
bool TargetProperties::GetEnableAutoApplyFixIts() const { … }
uint64_t TargetProperties::GetNumberOfRetriesWithFixits() const { … }
bool TargetProperties::GetEnableNotifyAboutFixIts() const { … }
FileSpec TargetProperties::GetSaveJITObjectsDir() const { … }
void TargetProperties::CheckJITObjectsDir() { … }
bool TargetProperties::GetEnableSyntheticValue() const { … }
bool TargetProperties::ShowHexVariableValuesWithLeadingZeroes() const { … }
uint32_t TargetProperties::GetMaxZeroPaddingInFloatFormat() const { … }
uint32_t TargetProperties::GetMaximumNumberOfChildrenToDisplay() const { … }
std::pair<uint32_t, bool>
TargetProperties::GetMaximumDepthOfChildrenToDisplay() const { … }
uint32_t TargetProperties::GetMaximumSizeOfStringSummary() const { … }
uint32_t TargetProperties::GetMaximumMemReadSize() const { … }
FileSpec TargetProperties::GetStandardInputPath() const { … }
void TargetProperties::SetStandardInputPath(llvm::StringRef path) { … }
FileSpec TargetProperties::GetStandardOutputPath() const { … }
void TargetProperties::SetStandardOutputPath(llvm::StringRef path) { … }
FileSpec TargetProperties::GetStandardErrorPath() const { … }
void TargetProperties::SetStandardErrorPath(llvm::StringRef path) { … }
SourceLanguage TargetProperties::GetLanguage() const { … }
llvm::StringRef TargetProperties::GetExpressionPrefixContents() { … }
uint64_t TargetProperties::GetExprErrorLimit() const { … }
uint64_t TargetProperties::GetExprAllocAddress() const { … }
uint64_t TargetProperties::GetExprAllocSize() const { … }
uint64_t TargetProperties::GetExprAllocAlign() const { … }
bool TargetProperties::GetBreakpointsConsultPlatformAvoidList() { … }
bool TargetProperties::GetUseHexImmediates() const { … }
bool TargetProperties::GetUseFastStepping() const { … }
bool TargetProperties::GetDisplayExpressionsInCrashlogs() const { … }
LoadScriptFromSymFile TargetProperties::GetLoadScriptFromSymbolFile() const { … }
LoadCWDlldbinitFile TargetProperties::GetLoadCWDlldbinitFile() const { … }
Disassembler::HexImmediateStyle TargetProperties::GetHexImmediateStyle() const { … }
MemoryModuleLoadLevel TargetProperties::GetMemoryModuleLoadLevel() const { … }
bool TargetProperties::GetUserSpecifiedTrapHandlerNames(Args &args) const { … }
void TargetProperties::SetUserSpecifiedTrapHandlerNames(const Args &args) { … }
bool TargetProperties::GetDisplayRuntimeSupportValues() const { … }
void TargetProperties::SetDisplayRuntimeSupportValues(bool b) { … }
bool TargetProperties::GetDisplayRecognizedArguments() const { … }
void TargetProperties::SetDisplayRecognizedArguments(bool b) { … }
const ProcessLaunchInfo &TargetProperties::GetProcessLaunchInfo() const { … }
void TargetProperties::SetProcessLaunchInfo(
const ProcessLaunchInfo &launch_info) { … }
bool TargetProperties::GetRequireHardwareBreakpoints() const { … }
void TargetProperties::SetRequireHardwareBreakpoints(bool b) { … }
bool TargetProperties::GetAutoInstallMainExecutable() const { … }
void TargetProperties::Arg0ValueChangedCallback() { … }
void TargetProperties::RunArgsValueChangedCallback() { … }
void TargetProperties::EnvVarsValueChangedCallback() { … }
void TargetProperties::InputPathValueChangedCallback() { … }
void TargetProperties::OutputPathValueChangedCallback() { … }
void TargetProperties::ErrorPathValueChangedCallback() { … }
void TargetProperties::DetachOnErrorValueChangedCallback() { … }
void TargetProperties::DisableASLRValueChangedCallback() { … }
void TargetProperties::InheritTCCValueChangedCallback() { … }
void TargetProperties::DisableSTDIOValueChangedCallback() { … }
bool TargetProperties::GetDebugUtilityExpression() const { … }
void TargetProperties::SetDebugUtilityExpression(bool debug) { … }
Target::TargetEventData::TargetEventData(const lldb::TargetSP &target_sp)
: … { … }
Target::TargetEventData::TargetEventData(const lldb::TargetSP &target_sp,
const ModuleList &module_list)
: … { … }
Target::TargetEventData::~TargetEventData() = default;
llvm::StringRef Target::TargetEventData::GetFlavorString() { … }
void Target::TargetEventData::Dump(Stream *s) const { … }
const Target::TargetEventData *
Target::TargetEventData::GetEventDataFromEvent(const Event *event_ptr) { … }
TargetSP Target::TargetEventData::GetTargetFromEvent(const Event *event_ptr) { … }
ModuleList
Target::TargetEventData::GetModuleListFromEvent(const Event *event_ptr) { … }
std::recursive_mutex &Target::GetAPIMutex() { … }
llvm::json::Value
Target::ReportStatistics(const lldb_private::StatisticsOptions &options) { … }