[Lldb-commits] [PATCH] D47110: [LLDB, lldb-mi] Add option --synchronous.
This revision was automatically updated to reflect the committed changes. Closed by commit rL333140: Add a --synchronous option to lldb-mi to facilitate reliable testing. (authored by adrian, committed by ). Changed prior to commit: https://reviews.llvm.org/D47110?vs=147806=148318#toc Repository: rL LLVM https://reviews.llvm.org/D47110 Files: lldb/trunk/tools/lldb-mi/MICmnResources.cpp lldb/trunk/tools/lldb-mi/MICmnResources.h lldb/trunk/tools/lldb-mi/MIDriver.cpp lldb/trunk/tools/lldb-mi/MIDriverMgr.cpp Index: lldb/trunk/tools/lldb-mi/MIDriverMgr.cpp === --- lldb/trunk/tools/lldb-mi/MIDriverMgr.cpp +++ lldb/trunk/tools/lldb-mi/MIDriverMgr.cpp @@ -640,6 +640,7 @@ MIRSRC(IDE_MI_APP_ARG_VERSION), MIRSRC(IDE_MI_APP_ARG_VERSION_LONG), MIRSRC(IDE_MI_APP_ARG_INTERPRETER), MIRSRC(IDE_MI_APP_ARG_SOURCE), MIRSRC(IDE_MI_APP_ARG_EXECUTEABLE), + MIRSRC(IDE_MI_APP_ARG_SYNCHRONOUS), CMIUtilString::Format( MIRSRC(IDE_MI_APP_ARG_APP_LOG), CMICmnLogMediumFile::Instance().GetFileName().c_str()), Index: lldb/trunk/tools/lldb-mi/MIDriver.cpp === --- lldb/trunk/tools/lldb-mi/MIDriver.cpp +++ lldb/trunk/tools/lldb-mi/MIDriver.cpp @@ -382,6 +382,7 @@ // that are only handled by *this driver: // --executable // --source or -s +// --synchronous // The application's options --interpreter and --executable in code act // very similar. // The --executable is necessary to differentiate whether the MI Driver @@ -397,6 +398,7 @@ // argument for a debug session. Using --interpreter on the command // line does not // issue additional commands to initialise a debug session. +// Option --synchronous disables an asynchronous mode in the lldb-mi driver. // Type:Overridden. // Args:argc- (R) An integer that contains the count of arguments // that follow in @@ -469,6 +471,8 @@ // command line { // See fn description. bHaveExecutableLongOption = true; + } else if (strArg.compare("--synchronous") == 0) { +CMICmnLLDBDebugSessionInfo::Instance().GetDebugger().SetAsync(false); } } } Index: lldb/trunk/tools/lldb-mi/MICmnResources.cpp === --- lldb/trunk/tools/lldb-mi/MICmnResources.cpp +++ lldb/trunk/tools/lldb-mi/MICmnResources.cpp @@ -110,6 +110,8 @@ {IDE_MI_APP_ARG_EXECUTABLE, "executable (NOT IMPLEMENTED)\n\tThe file " "path to the executable i.e. '\"C:\\My " "Dev\\foo.exe\"'."}, +{IDE_MI_APP_ARG_SYNCHRONOUS, "--synchronous\n\tBlock until each command " + "has finished executing.\n\tUsed for testing only."}, {IDS_STDIN_ERR_INVALID_PROMPT, "Stdin. Invalid prompt description '%s'"}, {IDS_STDIN_ERR_THREAD_CREATION_FAILED, Index: lldb/trunk/tools/lldb-mi/MICmnResources.h === --- lldb/trunk/tools/lldb-mi/MICmnResources.h +++ lldb/trunk/tools/lldb-mi/MICmnResources.h @@ -77,6 +77,7 @@ IDE_MI_APP_ARG_APP_LOG_DIR, IDE_MI_APP_ARG_EXAMPLE, IDE_MI_APP_ARG_EXECUTABLE, + IDE_MI_APP_ARG_SYNCHRONOUS, IDS_STDIN_ERR_INVALID_PROMPT, IDS_STDIN_ERR_THREAD_CREATION_FAILED, Index: lldb/trunk/tools/lldb-mi/MIDriverMgr.cpp === --- lldb/trunk/tools/lldb-mi/MIDriverMgr.cpp +++ lldb/trunk/tools/lldb-mi/MIDriverMgr.cpp @@ -640,6 +640,7 @@ MIRSRC(IDE_MI_APP_ARG_VERSION), MIRSRC(IDE_MI_APP_ARG_VERSION_LONG), MIRSRC(IDE_MI_APP_ARG_INTERPRETER), MIRSRC(IDE_MI_APP_ARG_SOURCE), MIRSRC(IDE_MI_APP_ARG_EXECUTEABLE), + MIRSRC(IDE_MI_APP_ARG_SYNCHRONOUS), CMIUtilString::Format( MIRSRC(IDE_MI_APP_ARG_APP_LOG), CMICmnLogMediumFile::Instance().GetFileName().c_str()), Index: lldb/trunk/tools/lldb-mi/MIDriver.cpp === --- lldb/trunk/tools/lldb-mi/MIDriver.cpp +++ lldb/trunk/tools/lldb-mi/MIDriver.cpp @@ -382,6 +382,7 @@ // that are only handled by *this driver: // --executable // --source or -s +// --synchronous // The application's options --interpreter and --executable in code act // very similar. // The --executable is necessary to differentiate whether the MI Driver @@ -397,6 +398,7 @@ // argument for a debug session. Using --interpreter on the command // line does not // issue additional commands to initialise a
[Lldb-commits] [PATCH] D47110: [LLDB, lldb-mi] Add option --synchronous.
polyakov.alex updated this revision to Diff 147806. polyakov.alex added a comment. Moved the option parsing code down by the others. Repository: rL LLVM https://reviews.llvm.org/D47110 Files: tools/lldb-mi/MICmnResources.cpp tools/lldb-mi/MICmnResources.h tools/lldb-mi/MIDriver.cpp tools/lldb-mi/MIDriverMgr.cpp Index: tools/lldb-mi/MIDriverMgr.cpp === --- tools/lldb-mi/MIDriverMgr.cpp +++ tools/lldb-mi/MIDriverMgr.cpp @@ -640,6 +640,7 @@ MIRSRC(IDE_MI_APP_ARG_VERSION), MIRSRC(IDE_MI_APP_ARG_VERSION_LONG), MIRSRC(IDE_MI_APP_ARG_INTERPRETER), MIRSRC(IDE_MI_APP_ARG_SOURCE), MIRSRC(IDE_MI_APP_ARG_EXECUTEABLE), + MIRSRC(IDE_MI_APP_ARG_SYNCHRONOUS), CMIUtilString::Format( MIRSRC(IDE_MI_APP_ARG_APP_LOG), CMICmnLogMediumFile::Instance().GetFileName().c_str()), Index: tools/lldb-mi/MIDriver.cpp === --- tools/lldb-mi/MIDriver.cpp +++ tools/lldb-mi/MIDriver.cpp @@ -382,6 +382,7 @@ // that are only handled by *this driver: // --executable // --source or -s +// --synchronous // The application's options --interpreter and --executable in code act // very similar. // The --executable is necessary to differentiate whether the MI Driver @@ -397,6 +398,7 @@ // argument for a debug session. Using --interpreter on the command // line does not // issue additional commands to initialise a debug session. +// Option --synchronous disables an asynchronous mode in the lldb-mi driver. // Type:Overridden. // Args:argc- (R) An integer that contains the count of arguments // that follow in @@ -469,6 +471,8 @@ // command line { // See fn description. bHaveExecutableLongOption = true; + } else if (strArg.compare("--synchronous") == 0) { +CMICmnLLDBDebugSessionInfo::Instance().GetDebugger().SetAsync(false); } } } Index: tools/lldb-mi/MICmnResources.h === --- tools/lldb-mi/MICmnResources.h +++ tools/lldb-mi/MICmnResources.h @@ -77,6 +77,7 @@ IDE_MI_APP_ARG_APP_LOG_DIR, IDE_MI_APP_ARG_EXAMPLE, IDE_MI_APP_ARG_EXECUTABLE, + IDE_MI_APP_ARG_SYNCHRONOUS, IDS_STDIN_ERR_INVALID_PROMPT, IDS_STDIN_ERR_THREAD_CREATION_FAILED, Index: tools/lldb-mi/MICmnResources.cpp === --- tools/lldb-mi/MICmnResources.cpp +++ tools/lldb-mi/MICmnResources.cpp @@ -110,6 +110,8 @@ {IDE_MI_APP_ARG_EXECUTABLE, "executable (NOT IMPLEMENTED)\n\tThe file " "path to the executable i.e. '\"C:\\My " "Dev\\foo.exe\"'."}, +{IDE_MI_APP_ARG_SYNCHRONOUS, "--synchronous\n\tBlock until each command " + "has finished executing.\n\tUsed for testing only."}, {IDS_STDIN_ERR_INVALID_PROMPT, "Stdin. Invalid prompt description '%s'"}, {IDS_STDIN_ERR_THREAD_CREATION_FAILED, Index: tools/lldb-mi/MIDriverMgr.cpp === --- tools/lldb-mi/MIDriverMgr.cpp +++ tools/lldb-mi/MIDriverMgr.cpp @@ -640,6 +640,7 @@ MIRSRC(IDE_MI_APP_ARG_VERSION), MIRSRC(IDE_MI_APP_ARG_VERSION_LONG), MIRSRC(IDE_MI_APP_ARG_INTERPRETER), MIRSRC(IDE_MI_APP_ARG_SOURCE), MIRSRC(IDE_MI_APP_ARG_EXECUTEABLE), + MIRSRC(IDE_MI_APP_ARG_SYNCHRONOUS), CMIUtilString::Format( MIRSRC(IDE_MI_APP_ARG_APP_LOG), CMICmnLogMediumFile::Instance().GetFileName().c_str()), Index: tools/lldb-mi/MIDriver.cpp === --- tools/lldb-mi/MIDriver.cpp +++ tools/lldb-mi/MIDriver.cpp @@ -382,6 +382,7 @@ // that are only handled by *this driver: // --executable // --source or -s +// --synchronous // The application's options --interpreter and --executable in code act // very similar. // The --executable is necessary to differentiate whether the MI Driver @@ -397,6 +398,7 @@ // argument for a debug session. Using --interpreter on the command // line does not // issue additional commands to initialise a debug session. +// Option --synchronous disables an asynchronous mode in the lldb-mi driver. // Type:Overridden. // Args:argc- (R) An integer that contains the count of arguments // that follow in @@ -469,6 +471,8 @@ // command line { // See fn description.
[Lldb-commits] [PATCH] D47110: [LLDB, lldb-mi] Add option --synchronous.
clayborg accepted this revision. clayborg added a comment. Looks fine, just move the option parsing code down by the others instead of having it before the checking for file args. Comment at: tools/lldb-mi/MIDriver.cpp:441-444 + if (strArg.compare("--synchronous") == 0) { +CMICmnLLDBDebugSessionInfo::Instance().GetDebugger().SetAsync(false); + } + This should be moved down by the other arguments (like to line 471 of this file, or 473 of old one) Repository: rL LLVM https://reviews.llvm.org/D47110 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D47110: [LLDB, lldb-mi] Add option --synchronous.
aprantl accepted this revision. aprantl added a comment. This revision is now accepted and ready to land. Looks good! Repository: rL LLVM https://reviews.llvm.org/D47110 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D47110: [LLDB, lldb-mi] Add option --synchronous.
polyakov.alex added a comment. This option is needed by https://reviews.llvm.org/D46588. Repository: rL LLVM https://reviews.llvm.org/D47110 ___ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [PATCH] D47110: [LLDB, lldb-mi] Add option --synchronous.
polyakov.alex created this revision. polyakov.alex added reviewers: aprantl, clayborg, labath. Herald added subscribers: llvm-commits, ki.stfu. Option --synchronous disables asynchronous mode in the lldb-mi driver. Used for testing only. Repository: rL LLVM https://reviews.llvm.org/D47110 Files: tools/lldb-mi/MICmnResources.cpp tools/lldb-mi/MICmnResources.h tools/lldb-mi/MIDriver.cpp tools/lldb-mi/MIDriverMgr.cpp Index: tools/lldb-mi/MIDriverMgr.cpp === --- tools/lldb-mi/MIDriverMgr.cpp +++ tools/lldb-mi/MIDriverMgr.cpp @@ -640,6 +640,7 @@ MIRSRC(IDE_MI_APP_ARG_VERSION), MIRSRC(IDE_MI_APP_ARG_VERSION_LONG), MIRSRC(IDE_MI_APP_ARG_INTERPRETER), MIRSRC(IDE_MI_APP_ARG_SOURCE), MIRSRC(IDE_MI_APP_ARG_EXECUTEABLE), + MIRSRC(IDE_MI_APP_ARG_SYNCHRONOUS), CMIUtilString::Format( MIRSRC(IDE_MI_APP_ARG_APP_LOG), CMICmnLogMediumFile::Instance().GetFileName().c_str()), Index: tools/lldb-mi/MIDriver.cpp === --- tools/lldb-mi/MIDriver.cpp +++ tools/lldb-mi/MIDriver.cpp @@ -382,6 +382,7 @@ // that are only handled by *this driver: // --executable // --source or -s +// --synchronous // The application's options --interpreter and --executable in code act // very similar. // The --executable is necessary to differentiate whether the MI Driver @@ -397,6 +398,7 @@ // argument for a debug session. Using --interpreter on the command // line does not // issue additional commands to initialise a debug session. +// Option --synchronous disables an asynchronous mode in the lldb-mi driver. // Type:Overridden. // Args:argc- (R) An integer that contains the count of arguments // that follow in @@ -436,6 +438,10 @@ const CMIUtilString strArg(argv[i]); const CMICmdArgValFile argFile; + if (strArg.compare("--synchronous") == 0) { +CMICmnLLDBDebugSessionInfo::Instance().GetDebugger().SetAsync(false); + } + // Check for a filename if (argFile.IsFilePath(strArg) || CMICmdArgValString(true, false, true).IsStringArg(strArg)) { Index: tools/lldb-mi/MICmnResources.h === --- tools/lldb-mi/MICmnResources.h +++ tools/lldb-mi/MICmnResources.h @@ -77,6 +77,7 @@ IDE_MI_APP_ARG_APP_LOG_DIR, IDE_MI_APP_ARG_EXAMPLE, IDE_MI_APP_ARG_EXECUTABLE, + IDE_MI_APP_ARG_SYNCHRONOUS, IDS_STDIN_ERR_INVALID_PROMPT, IDS_STDIN_ERR_THREAD_CREATION_FAILED, Index: tools/lldb-mi/MICmnResources.cpp === --- tools/lldb-mi/MICmnResources.cpp +++ tools/lldb-mi/MICmnResources.cpp @@ -110,6 +110,8 @@ {IDE_MI_APP_ARG_EXECUTABLE, "executable (NOT IMPLEMENTED)\n\tThe file " "path to the executable i.e. '\"C:\\My " "Dev\\foo.exe\"'."}, +{IDE_MI_APP_ARG_SYNCHRONOUS, "--synchronous\n\tBlock until each command " + "has finished executing.\n\tUsed for testing only."}, {IDS_STDIN_ERR_INVALID_PROMPT, "Stdin. Invalid prompt description '%s'"}, {IDS_STDIN_ERR_THREAD_CREATION_FAILED, Index: tools/lldb-mi/MIDriverMgr.cpp === --- tools/lldb-mi/MIDriverMgr.cpp +++ tools/lldb-mi/MIDriverMgr.cpp @@ -640,6 +640,7 @@ MIRSRC(IDE_MI_APP_ARG_VERSION), MIRSRC(IDE_MI_APP_ARG_VERSION_LONG), MIRSRC(IDE_MI_APP_ARG_INTERPRETER), MIRSRC(IDE_MI_APP_ARG_SOURCE), MIRSRC(IDE_MI_APP_ARG_EXECUTEABLE), + MIRSRC(IDE_MI_APP_ARG_SYNCHRONOUS), CMIUtilString::Format( MIRSRC(IDE_MI_APP_ARG_APP_LOG), CMICmnLogMediumFile::Instance().GetFileName().c_str()), Index: tools/lldb-mi/MIDriver.cpp === --- tools/lldb-mi/MIDriver.cpp +++ tools/lldb-mi/MIDriver.cpp @@ -382,6 +382,7 @@ // that are only handled by *this driver: // --executable // --source or -s +// --synchronous // The application's options --interpreter and --executable in code act // very similar. // The --executable is necessary to differentiate whether the MI Driver @@ -397,6 +398,7 @@ // argument for a debug session. Using --interpreter on the command // line does not // issue additional commands to initialise a debug session. +// Option --synchronous disables an asynchronous mode in the lldb-mi driver. // Type:Overridden. // Args:argc- (R) An integer that contains the count of arguments // that follow in @@ -436,6 +438,10 @@ const