LLDB  mainline
Classes | Macros | Enumerations | Functions | Variables
Target.cpp File Reference
#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/StreamFile.h"
#include "lldb/Core/StructuredDataImpl.h"
#include "lldb/Core/ValueObject.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/Interpreter/CommandInterpreter.h"
#include "lldb/Interpreter/CommandReturnObject.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/Language.h"
#include "lldb/Target/LanguageRuntime.h"
#include "lldb/Target/Process.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/Utility/Event.h"
#include "lldb/Utility/FileSpec.h"
#include "lldb/Utility/LLDBAssert.h"
#include "lldb/Utility/Log.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 "TargetProperties.inc"
#include "TargetPropertiesEnum.inc"

Go to the source code of this file.

Classes

class  TargetOptionValueProperties
 
class  TargetExperimentalOptionValueProperties
 

Macros

#define LLDB_PROPERTIES_target
 
#define LLDB_PROPERTIES_target
 
#define LLDB_PROPERTIES_target_experimental
 
#define LLDB_PROPERTIES_target_experimental
 

Enumerations

enum  x86DisassemblyFlavor { eX86DisFlavorDefault, eX86DisFlavorIntel, eX86DisFlavorATT }
 
enum  { ePropertyExperimental }
 
enum  
 

Functions

static bool CheckIfWatchpointsSupported (Target *target, Status &error)
 
static void LoadScriptingResourceForModule (const ModuleSP &module_sp, Target *target)
 

Variables

static constexpr OptionEnumValueElement g_dynamic_value_types []
 
static constexpr OptionEnumValueElement g_inline_breakpoint_enums []
 
static constexpr OptionEnumValueElement g_x86_dis_flavor_value_types []
 
static constexpr OptionEnumValueElement g_import_std_module_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 []
 

Macro Definition Documentation

◆ LLDB_PROPERTIES_target [1/2]

#define LLDB_PROPERTIES_target

Definition at line 3664 of file Target.cpp.

◆ LLDB_PROPERTIES_target [2/2]

#define LLDB_PROPERTIES_target

Definition at line 3664 of file Target.cpp.

◆ LLDB_PROPERTIES_target_experimental [1/2]

#define LLDB_PROPERTIES_target_experimental

Definition at line 3699 of file Target.cpp.

◆ LLDB_PROPERTIES_target_experimental [2/2]

#define LLDB_PROPERTIES_target_experimental

Definition at line 3699 of file Target.cpp.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
ePropertyExperimental 

Definition at line 3663 of file Target.cpp.

◆ anonymous enum

anonymous enum

Definition at line 3698 of file Target.cpp.

◆ x86DisassemblyFlavor

Enumerator
eX86DisFlavorDefault 
eX86DisFlavorIntel 
eX86DisFlavorATT 

Definition at line 3544 of file Target.cpp.

Function Documentation

◆ CheckIfWatchpointsSupported()

static bool CheckIfWatchpointsSupported ( Target target,
Status error 
)
static

◆ LoadScriptingResourceForModule()

static void LoadScriptingResourceForModule ( const ModuleSP &  module_sp,
Target target 
)
static

Variable Documentation

◆ g_dynamic_value_types

constexpr OptionEnumValueElement g_dynamic_value_types[]
staticconstexpr
Initial value:
= {
{
"no-dynamic-values",
"Don't calculate the dynamic type of values",
},
{
"run-target",
"Calculate the dynamic type of values "
"even if you have to run the target.",
},
{
"no-run-target",
"Calculate the dynamic type of values, but don't run the target.",
},
}

Definition at line 3498 of file Target.cpp.

Referenced by lldb_private::GetDynamicValueTypes().

◆ g_hex_immediate_style_values

constexpr OptionEnumValueElement g_hex_immediate_style_values[]
staticconstexpr
Initial value:
= {
{
Disassembler::eHexStyleC,
"c",
"C-style (0xffff).",
},
{
Disassembler::eHexStyleAsm,
"asm",
"Asm-style (0ffffh).",
},
}

Definition at line 3590 of file Target.cpp.

◆ g_import_std_module_value_types

constexpr OptionEnumValueElement g_import_std_module_value_types[]
staticconstexpr
Initial value:
= {
{
"false",
"Never import the 'std' C++ module in the expression parser.",
},
{
"fallback",
"Retry evaluating expressions with an imported 'std' C++ module if they"
" failed to parse without the module. This allows evaluating more "
"complex expressions involving C++ standard library types."
},
{
"true",
"Always import the 'std' C++ module. This allows evaluating more "
"complex expressions involving C++ standard library types. This feature"
" is experimental."
},
}

Definition at line 3568 of file Target.cpp.

◆ g_inline_breakpoint_enums

constexpr OptionEnumValueElement g_inline_breakpoint_enums[]
staticconstexpr
Initial value:
= {
{
"never",
"Never look for inline breakpoint locations (fastest). This setting "
"should only be used if you know that no inlining occurs in your"
"programs.",
},
{
"headers",
"Only check for inline breakpoint locations when setting breakpoints "
"in header files, but not when setting breakpoint in implementation "
"source files (default).",
},
{
"always",
"Always look for inline breakpoint locations when setting file and "
"line breakpoints (slower but most accurate).",
},
}

Definition at line 3521 of file Target.cpp.

◆ g_load_cwd_lldbinit_values

constexpr OptionEnumValueElement g_load_cwd_lldbinit_values[]
staticconstexpr
Initial value:
= {
{
"true",
"Load .lldbinit files from current directory",
},
{
"false",
"Do not load .lldbinit files from current directory",
},
{
"warn",
"Warn about loading .lldbinit files from current directory",
},
}

Definition at line 3621 of file Target.cpp.

◆ g_load_script_from_sym_file_values

constexpr OptionEnumValueElement g_load_script_from_sym_file_values[]
staticconstexpr
Initial value:
= {
{
"true",
"Load debug scripts inside symbol files",
},
{
"false",
"Do not load debug scripts inside symbol files.",
},
{
"warn",
"Warn about debug scripts inside symbol files but do not load them.",
},
}

Definition at line 3603 of file Target.cpp.

◆ g_memory_module_load_level_values

constexpr OptionEnumValueElement g_memory_module_load_level_values[]
staticconstexpr
Initial value:
= {
{
"minimal",
"Load minimal information when loading modules from memory. Currently "
"this setting loads sections only.",
},
{
"partial",
"Load partial information when loading modules from memory. Currently "
"this setting loads sections and function bounds.",
},
{
"complete",
"Load complete information when loading modules from memory. Currently "
"this setting loads sections and all symbols.",
},
}

Definition at line 3639 of file Target.cpp.

◆ g_x86_dis_flavor_value_types

constexpr OptionEnumValueElement g_x86_dis_flavor_value_types[]
staticconstexpr
Initial value:
= {
{
"default",
"Disassembler default (currently att).",
},
{
"intel",
"Intel disassembler flavor.",
},
{
"att",
"AT&T disassembler flavor.",
},
}

Definition at line 3550 of file Target.cpp.

Referenced by lldb_private::TargetProperties::GetDisassemblyFlavor().

eX86DisFlavorDefault
@ eX86DisFlavorDefault
Definition: Target.cpp:3545
lldb::eNoDynamicValues
@ eNoDynamicValues
Definition: lldb-enumerations.h:495
lldb_private::eImportStdModuleTrue
@ eImportStdModuleTrue
Definition: Target.h:70
lldb_private::eImportStdModuleFallback
@ eImportStdModuleFallback
Definition: Target.h:69
lldb_private::eLoadScriptFromSymFileFalse
@ eLoadScriptFromSymFileFalse
Definition: Target.h:51
eX86DisFlavorATT
@ eX86DisFlavorATT
Definition: Target.cpp:3547
lldb_private::eLoadScriptFromSymFileTrue
@ eLoadScriptFromSymFileTrue
Definition: Target.h:50
lldb_private::eLoadScriptFromSymFileWarn
@ eLoadScriptFromSymFileWarn
Definition: Target.h:52
lldb::eDynamicDontRunTarget
@ eDynamicDontRunTarget
Definition: lldb-enumerations.h:497
lldb_private::eInlineBreakpointsNever
@ eInlineBreakpointsNever
Definition: Target.h:44
lldb_private::eImportStdModuleFalse
@ eImportStdModuleFalse
Definition: Target.h:68
lldb_private::eLoadCWDlldbinitWarn
@ eLoadCWDlldbinitWarn
Definition: Target.h:58
lldb_private::eLoadCWDlldbinitTrue
@ eLoadCWDlldbinitTrue
Definition: Target.h:56
lldb_private::eMemoryModuleLoadLevelPartial
@ eMemoryModuleLoadLevelPartial
Definition: lldb-private-enumerations.h:171
lldb_private::eInlineBreakpointsAlways
@ eInlineBreakpointsAlways
Definition: Target.h:46
eX86DisFlavorIntel
@ eX86DisFlavorIntel
Definition: Target.cpp:3546
lldb_private::eMemoryModuleLoadLevelComplete
@ eMemoryModuleLoadLevelComplete
Definition: lldb-private-enumerations.h:172
lldb_private::eMemoryModuleLoadLevelMinimal
@ eMemoryModuleLoadLevelMinimal
Definition: lldb-private-enumerations.h:170
lldb_private::eLoadCWDlldbinitFalse
@ eLoadCWDlldbinitFalse
Definition: Target.h:57
lldb_private::eInlineBreakpointsHeaders
@ eInlineBreakpointsHeaders
Definition: Target.h:45
lldb::eDynamicCanRunTarget
@ eDynamicCanRunTarget
Definition: lldb-enumerations.h:496