hanchenye-llvm-project/lldb/tools/lldb-mi
Chuck Ries da21e98932 -thread-info in lldbmi does not conform to protocol. Should end with current thread id
-thread-info in lldbmi does not conform to protocol. Should end with
current thread id as described here:
https://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI-Thread-Commands.html#GDB_002fMI-Thread-Commands

When printing all threads, the current thread id should be printed
afterwards.

Example:
-thread-info
     ^done,threads=[
     {id="2",target-id="Thread 0xb7e14b90 (LWP 21257)",
        frame={level="0",addr="0xffffe410",func="__kernel_vsyscall",
                args=[]},state="running"},
     {id="1",target-id="Thread 0xb7e156b0 (LWP 21254)",
        frame={level="0",addr="0x0804891f",func="foo",
                args=[{name="i",value="10"}],
                file="/tmp/a.c",fullname="/tmp/a.c",line="158"},
                state="running"}],
     current-thread-id="1"
     (gdb)

Patch from jacdavis@microsoft.com

Reviewers: zturner, chuckr

Differential Revision: http://reviews.llvm.org/differential/revision/edit/18880/

llvm-svn: 265858
2016-04-08 22:17:53 +00:00
..
CMakeLists.txt Revert the "build fix" in r264104 2016-03-29 14:39:10 +00:00
MICmdArgContext.cpp Allow to construct CMIUtilString using std::string directly + cleanup CMIUtilString (MI) 2015-09-25 08:28:58 +00:00
MICmdArgContext.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgSet.cpp [lldb-mi] Clean up CMICmdArgSet usage. 2015-09-15 12:00:08 +00:00
MICmdArgSet.h Fix Clang-tidy modernize-use-override warnings in include/lldb/Expression, source/Expression and tools/lldb-mi; other minor fixes. 2015-10-31 00:43:59 +00:00
MICmdArgValBase.cpp Fix Clang-tidy modernize-use-override warnings in include/lldb/Expression, source/Expression and tools/lldb-mi; other minor fixes. 2015-10-31 00:43:59 +00:00
MICmdArgValBase.h Fix Clang-tidy modernize-use-override warnings in include/lldb/Expression, source/Expression and tools/lldb-mi; other minor fixes. 2015-10-31 00:43:59 +00:00
MICmdArgValConsume.cpp Fix CMICmdArgValConsume to correctly handle "--". 2015-09-04 16:10:48 +00:00
MICmdArgValConsume.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValFile.cpp Simplify find_first_of & find_last_of on single char. 2015-09-01 23:57:17 +00:00
MICmdArgValFile.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValListBase.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValListBase.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValListOfN.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValListOfN.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValNumber.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValNumber.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValOptionLong.cpp Allow to construct CMIUtilString using std::string directly + cleanup CMIUtilString (MI) 2015-09-25 08:28:58 +00:00
MICmdArgValOptionLong.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValOptionShort.cpp Allow to construct CMIUtilString using std::string directly + cleanup CMIUtilString (MI) 2015-09-25 08:28:58 +00:00
MICmdArgValOptionShort.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValPrintValues.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValPrintValues.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValString.cpp Simplify find_first_of & find_last_of on single char. 2015-09-01 23:57:17 +00:00
MICmdArgValString.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdArgValThreadGrp.cpp Allow to construct CMIUtilString using std::string directly + cleanup CMIUtilString (MI) 2015-09-25 08:28:58 +00:00
MICmdArgValThreadGrp.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdBase.cpp Handle the options and parameters separator in every MI command 2015-11-02 11:43:40 +00:00
MICmdBase.h Handle the options and parameters separator in every MI command 2015-11-02 11:43:40 +00:00
MICmdCmd.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmd.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdBreak.cpp Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdBreak.h Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdData.cpp Show real error message in -data-evaluate-expression 2016-02-08 10:04:51 +00:00
MICmdCmdData.h Show real error message in -data-evaluate-expression 2016-02-08 10:04:51 +00:00
MICmdCmdEnviro.cpp [lldb-mi] Clean up CMICmdArgSet usage. 2015-09-15 12:00:08 +00:00
MICmdCmdEnviro.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdExec.cpp Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdExec.h Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdFile.cpp Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdFile.h Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdGdbInfo.cpp [lldb-mi] Clean up CMICmdArgSet usage. 2015-09-15 12:00:08 +00:00
MICmdCmdGdbInfo.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdGdbSet.cpp Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdGdbSet.h Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdGdbShow.cpp Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdGdbShow.h Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdGdbThread.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdGdbThread.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdMiscellanous.cpp [lldb-mi] Clean up CMICmdArgSet usage. 2015-09-15 12:00:08 +00:00
MICmdCmdMiscellanous.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdStack.cpp Remove 2 lines missed in earlier commit (r251636). 2015-10-30 16:20:40 +00:00
MICmdCmdStack.h Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCmdSupportInfo.cpp [lldb-mi] Clean up CMICmdArgSet usage. 2015-09-15 12:00:08 +00:00
MICmdCmdSupportInfo.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdSupportList.cpp [lldb-mi] Add support for StopAtEntry in MI via "-exec-run --start". 2015-10-01 21:15:43 +00:00
MICmdCmdSupportList.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdSymbol.cpp Apply missed changes from svn r256863 "Add support for "source info" and use it to fix MI's -symbol-list-lines.". 2016-01-06 00:03:43 +00:00
MICmdCmdSymbol.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdTarget.cpp [lldb-mi] Clean up CMICmdArgSet usage. 2015-09-15 12:00:08 +00:00
MICmdCmdTarget.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdThread.cpp -thread-info in lldbmi does not conform to protocol. Should end with current thread id 2016-04-08 22:17:53 +00:00
MICmdCmdThread.h -thread-info in lldbmi does not conform to protocol. Should end with current thread id 2016-04-08 22:17:53 +00:00
MICmdCmdTrace.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdTrace.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCmdVar.cpp Add a DiagnosticManager replace error streams in the expression parser. 2016-03-19 00:03:59 +00:00
MICmdCmdVar.h Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdCommands.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdCommands.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdData.cpp Remove redundant comments from lldb-mi source files. 2015-03-16 18:18:18 +00:00
MICmdData.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdFactory.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdFactory.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdInterpreter.cpp Allow to construct CMIUtilString using std::string directly + cleanup CMIUtilString (MI) 2015-09-25 08:28:58 +00:00
MICmdInterpreter.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdInvoker.cpp Better handle the arguments common to all MI commands. 2015-10-29 16:30:47 +00:00
MICmdInvoker.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdMgr.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdMgr.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdMgrSetCmdDeleteCallback.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmdMgrSetCmdDeleteCallback.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnBase.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnBase.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnConfig.h Make lldb-mi handle only MI commands 2015-03-18 10:07:46 +00:00
MICmnLLDBBroadcaster.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnLLDBBroadcaster.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnLLDBDebugSessionInfo.cpp Unicode support on Win32. 2016-03-22 17:58:09 +00:00
MICmnLLDBDebugSessionInfo.h [lldb-mi] Simplify CMICmnLLDBDebugSessionInfo::Shutdown. 2015-09-15 10:36:08 +00:00
MICmnLLDBDebugSessionInfoVarObj.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnLLDBDebugSessionInfoVarObj.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnLLDBDebugger.cpp [lldb-mi] Fix unused variable warning. 2015-10-24 00:30:18 +00:00
MICmnLLDBDebugger.h [lldb-mi] display summary for simple types + refactor (use lldb formatting for all cases) 2015-10-23 00:23:53 +00:00
MICmnLLDBDebuggerHandleEvents.cpp Added a break statement that was needed. Caught by clang's unannotated case fall through warning. 2016-03-18 20:53:35 +00:00
MICmnLLDBDebuggerHandleEvents.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnLLDBProxySBValue.cpp [lldb-mi] Fix typos 2015-07-07 14:04:40 +00:00
MICmnLLDBProxySBValue.h [lldb-mi] Remove unwanted comment blocks. 2015-07-23 09:04:56 +00:00
MICmnLLDBUtilSBValue.cpp [lldb-mi] Fix expansion of anonymous structures and unions 2015-10-24 02:01:28 +00:00
MICmnLLDBUtilSBValue.h [lldb-mi] display summary for simple types + refactor (use lldb formatting for all cases) 2015-10-23 00:23:53 +00:00
MICmnLog.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnLog.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnLogMediumFile.cpp [lldb-mi] Fix failure in log file initialization. 2015-09-11 08:02:50 +00:00
MICmnLogMediumFile.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIOutOfBandRecord.cpp [lldb-mi] Fix non-OS X builds. 2015-08-04 13:25:23 +00:00
MICmnMIOutOfBandRecord.h [lldb-mi] Simplify MICmnMIOutOfBandRecord implementation. 2015-08-04 13:12:31 +00:00
MICmnMIResultRecord.cpp [lldb-mi] Remove unused bool results. 2015-07-22 17:07:27 +00:00
MICmnMIResultRecord.h [lldb-mi] Remove unwanted comment blocks. 2015-07-23 09:04:56 +00:00
MICmnMIValue.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValue.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueConst.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueConst.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueList.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueList.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueResult.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueResult.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueTuple.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnMIValueTuple.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnResources.cpp [lldb-mi] Simplify CMICmnLLDBDebugSessionInfo::Shutdown. 2015-09-15 10:36:08 +00:00
MICmnResources.h [lldb-mi] Simplify CMICmnLLDBDebugSessionInfo::Shutdown. 2015-09-15 10:36:08 +00:00
MICmnStreamStderr.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnStreamStderr.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnStreamStdin.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnStreamStdin.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnStreamStdout.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnStreamStdout.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnThreadMgrStd.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MICmnThreadMgrStd.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIDataTypes.h [lldb-mi] Remove unused portions of MIDataTypes.h. 2015-07-21 11:27:40 +00:00
MIDriver.cpp Allow to construct CMIUtilString using std::string directly + cleanup CMIUtilString (MI) 2015-09-25 08:28:58 +00:00
MIDriver.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIDriverBase.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIDriverBase.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIDriverMain.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIDriverMgr.cpp [lldb-mi] No need to call Format with no varargs. 2015-09-11 11:17:30 +00:00
MIDriverMgr.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIExtensions.txt test commit. 2015-12-07 19:08:15 +00:00
MIReadMe.txt Make lldb-mi handle only MI commands 2015-03-18 10:07:46 +00:00
MIUtilDateTimeStd.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilDateTimeStd.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilDebug.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilDebug.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilFileStd.cpp Reverted a change in r264074 that made lldb-mi use lldb_private APIs. 2016-03-22 22:42:42 +00:00
MIUtilFileStd.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilMapIdToVariant.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilMapIdToVariant.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilParse.cpp [lldb-mi] Fix the handling of files in -data-info-line and -symbol-list-lines. 2015-09-17 16:22:30 +00:00
MIUtilParse.h [lldb-mi] Fix the handling of files in -data-info-line and -symbol-list-lines. 2015-09-17 16:22:30 +00:00
MIUtilSingletonBase.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilSingletonHelper.h [lldb-mi] Remove unwanted comment blocks. 2015-07-23 09:04:56 +00:00
MIUtilString.cpp [lldb-mi] Fix assignment operator in CMIUtilString 2015-09-25 18:08:45 +00:00
MIUtilString.h Allow to construct CMIUtilString using std::string directly + cleanup CMIUtilString (MI) 2015-09-25 08:28:58 +00:00
MIUtilThreadBaseStd.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilThreadBaseStd.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilVariant.cpp [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
MIUtilVariant.h [lldb-mi] Use empty arg lists instead of (void). 2015-08-04 10:24:20 +00:00
Platform.h Unicode support on Win32. 2016-03-22 17:58:09 +00:00
lldb-Info.plist
lldb-mi.exports Only export public symbols with the cmake build. 2015-09-04 00:00:41 +00:00