llvm-project/lldb/source
Leonard Mosescu 17ffd39ed8 Implement interactive command interruption
The core of this change is the new CommandInterpreter::m_command_state,
which models the state transitions for interactive commands, including
an "interrupted" state transition.

In general, command interruption requires cooperation from the code
executing the command, which needs to poll for interruption requests
through CommandInterpreter::WasInterrupted().

CommandInterpreter::PrintCommandOutput() implements an optionally
interruptible printing of the command output, which for large outputs 
was likely the longest blocking part.
(ex. target modules dump symtab on a complex binary could take 10+ minutes)

Differential Revision: https://reviews.llvm.org/D37923

llvm-svn: 315037
2017-10-05 23:41:28 +00:00
..
API Implement interactive command interruption 2017-10-05 23:41:28 +00:00
Breakpoint Wire up the breakpoint name help string. 2017-09-15 00:52:35 +00:00
Commands Implement interactive command interruption 2017-10-05 23:41:28 +00:00
Core Implement interactive command interruption 2017-10-05 23:41:28 +00:00
DataFormatters Use exact equality for category language matching, for all languages, except those specifically mentioned. 2017-06-06 20:40:24 +00:00
Expression Add support for the DWP debug info format 2017-08-25 13:56:14 +00:00
Host Signal polling is supported with pselect (re-land r313704 without a Windows breakage) 2017-09-20 06:56:46 +00:00
Initialization Move Timer and TraceOptions from Core to Utility 2017-06-29 14:32:17 +00:00
Interpreter Implement interactive command interruption 2017-10-05 23:41:28 +00:00
Plugins Enable breakpoints and read/write GPRs for ppc64le 2017-10-05 19:44:05 +00:00
Symbol Improve FreeBSD kernel debugging 2017-10-02 14:35:07 +00:00
Target Enable breakpoints and read/write GPRs for ppc64le 2017-10-05 19:44:05 +00:00
Utility Enable breakpoints and read/write GPRs for ppc64le 2017-10-05 19:44:05 +00:00
CMakeLists.txt Remove Plugins/Process/POSIX from include_directories 2017-04-11 12:26:25 +00:00
lldb.cpp One more cleanup to lldb version printing 2016-11-14 22:43:08 +00:00