mirror of
https://github.com/intel/llvm.git
synced 2026-01-22 06:19:46 +08:00
Remote Non-Stop Support
Summary: This patch is the beginnings of support for Non-stop mode in the remote protocol. Letting a user examine stopped threads, while other threads execute freely. Non-stop mode is enabled using the setting target.non-stop-mode, which sends a QNonStop packet when establishing the remote connection. Changes are also made to treat the '?' stop reply packet differently in non-stop mode, according to spec https://sourceware.org/gdb/current/onlinedocs/gdb/Remote-Non_002dStop.html#Remote-Non_002dStop. A setting for querying the remote for default thread on setup is also included. Handling of '%' async notification packets will be added next. Reviewers: clayborg Subscribers: lldb-commits, ADodds, ted, deepak2427 Differential Revision: http://reviews.llvm.org/D9656 llvm-svn: 237239
This commit is contained in:
@@ -2978,6 +2978,7 @@ g_properties[] =
|
||||
{ "display-expression-in-crashlogs" , OptionValue::eTypeBoolean , false, false, NULL, NULL, "Expressions that crash will show up in crash logs if the host system supports executable specific crash log strings and this setting is set to true." },
|
||||
{ "trap-handler-names" , OptionValue::eTypeArray , true, OptionValue::eTypeString, NULL, NULL, "A list of trap handler function names, e.g. a common Unix user process one is _sigtramp." },
|
||||
{ "display-runtime-support-values" , OptionValue::eTypeBoolean , false, false, NULL, NULL, "If true, LLDB will show variables that are meant to support the operation of a language's runtime support." },
|
||||
{ "non-stop-mode" , OptionValue::eTypeBoolean , false, 0, NULL, NULL, "Disable lock-step debugging, instead control threads independently." },
|
||||
{ NULL , OptionValue::eTypeInvalid , false, 0 , NULL, NULL, NULL }
|
||||
};
|
||||
|
||||
@@ -3016,7 +3017,8 @@ enum
|
||||
ePropertyMemoryModuleLoadLevel,
|
||||
ePropertyDisplayExpressionsInCrashlogs,
|
||||
ePropertyTrapHandlerNames,
|
||||
ePropertyDisplayRuntimeSupportValues
|
||||
ePropertyDisplayRuntimeSupportValues,
|
||||
ePropertyNonStopModeEnabled
|
||||
};
|
||||
|
||||
|
||||
@@ -3515,6 +3517,13 @@ TargetProperties::SetDisplayRuntimeSupportValues (bool b)
|
||||
m_collection_sp->SetPropertyAtIndexAsBoolean (NULL, idx, b);
|
||||
}
|
||||
|
||||
bool
|
||||
TargetProperties::GetNonStopModeEnabled () const
|
||||
{
|
||||
const uint32_t idx = ePropertyNonStopModeEnabled;
|
||||
return m_collection_sp->GetPropertyAtIndexAsBoolean (NULL, idx, false);
|
||||
}
|
||||
|
||||
const ProcessLaunchInfo &
|
||||
TargetProperties::GetProcessLaunchInfo ()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user