[Lldb-commits] [lldb] r251636 - Better handle the arguments common to all MI commands.

Hafiz Abid Qadeer via lldb-commits lldb-commits at lists.llvm.org
Thu Oct 29 09:30:47 PDT 2015


Author: abidh
Date: Thu Oct 29 11:30:47 2015
New Revision: 251636

URL: http://llvm.org/viewvc/llvm-project?rev=251636&view=rev
Log:
Better handle the arguments common to all MI commands.

Summary:
I observed that eclipse was passing --thread-group for many other commands
then we are currently handling. Looking at the MI documentation, the
following link states that each MI command accept the --thread and
--frame option. Looking at the GDB implementation, it seems that apart
from these 2, --thread-group is also handled the same way.

https://sourceware.org/gdb/onlinedocs/gdb/Context-management.html#Context-management

So instead of handling those arguments in every comamnds, I have moved
them into the base class and removed them from elsewhere. Now any command
can use these arguments. The patch seems big but most of the changes are
mechanical.

Reviewers: ki.stfu

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D14177

Modified:
    lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/stack/TestMiStack.py
    lldb/trunk/tools/lldb-mi/MICmdBase.cpp
    lldb/trunk/tools/lldb-mi/MICmdBase.h
    lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdBreak.h
    lldb/trunk/tools/lldb-mi/MICmdCmdData.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdData.h
    lldb/trunk/tools/lldb-mi/MICmdCmdExec.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdExec.h
    lldb/trunk/tools/lldb-mi/MICmdCmdFile.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdFile.h
    lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.h
    lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.h
    lldb/trunk/tools/lldb-mi/MICmdCmdStack.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdStack.h
    lldb/trunk/tools/lldb-mi/MICmdCmdVar.cpp
    lldb/trunk/tools/lldb-mi/MICmdCmdVar.h
    lldb/trunk/tools/lldb-mi/MICmdInvoker.cpp

Modified: lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/stack/TestMiStack.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/stack/TestMiStack.py?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/stack/TestMiStack.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/stack/TestMiStack.py Thu Oct 29 11:30:47 2015
@@ -441,7 +441,7 @@ class MiStackTestCase(lldbmi_testcase.Mi
 
         # Test that -stack-select-frame requires 1 mandatory argument
         self.runCmd("-stack-select-frame")
-        self.expect("\^error,msg=\"Command 'stack-select-frame'\. Command Args\. Validation failed. Mandatory args not found: frame\"")
+        self.expect("\^error,msg=\"Command 'stack-select-frame'\. Command Args\. Validation failed. Mandatory args not found: frame_id\"")
 
         # Test that -stack-select-frame fails on invalid frame number
         self.runCmd("-stack-select-frame 99")

Modified: lldb/trunk/tools/lldb-mi/MICmdBase.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdBase.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdBase.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdBase.cpp Thu Oct 29 11:30:47 2015
@@ -11,6 +11,7 @@
 #include "MICmdBase.h"
 #include "MICmnMIValueConst.h"
 #include "MICmnLLDBDebugSessionInfo.h"
+#include "MICmdArgValOptionLong.h"
 
 //++ ------------------------------------------------------------------------------------
 // Details: CMICmdBase constructor.
@@ -23,6 +24,12 @@ CMICmdBase::CMICmdBase()
     : m_pSelfCreatorFn(nullptr)
     , m_rLLDBDebugSessionInfo(CMICmnLLDBDebugSessionInfo::Instance())
     , m_bHasResultRecordExtra(false)
+    , m_constStrArgThreadGroup("thread-group")
+    , m_constStrArgThread("thread")
+    , m_constStrArgFrame("frame")
+    , m_ThreadGrpArgMandatory(false)
+    , m_ThreadArgMandatory(false)
+    , m_FrameArgMandatory(false)
 {
 }
 
@@ -79,6 +86,20 @@ CMICmdBase::GetMiCmd() const
 }
 
 //++ ------------------------------------------------------------------------------------
+// Details: Help parse the arguments that are common to all commands.
+// Args:    None.
+// Return:  None
+// Throws:  None.
+//--
+void
+CMICmdBase::AddCommonArgs()
+{
+    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThreadGroup, m_ThreadGrpArgMandatory, true, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
+    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, m_ThreadArgMandatory, true, CMICmdArgValListBase::eArgValType_Number, 1));
+    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgFrame, m_FrameArgMandatory, true, CMICmdArgValListBase::eArgValType_Number, 1));
+}
+
+//++ ------------------------------------------------------------------------------------
 // Details: The invoker requires this function. A command must be given working data and
 //          provide data about its status or provide information to other objects.
 // Type:    Overridden.

Modified: lldb/trunk/tools/lldb-mi/MICmdBase.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdBase.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdBase.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdBase.h Thu Oct 29 11:30:47 2015
@@ -65,6 +65,7 @@ class CMICmdBase : public CMICmnBase, pu
     virtual CMICmdFactory::CmdCreatorFnPtr GetCmdCreatorFn() const;
 
     virtual MIuint GetGUID();
+    void AddCommonArgs();
 
     // Overrideable:
   public:
@@ -94,6 +95,15 @@ class CMICmdBase : public CMICmnBase, pu
     bool m_bHasResultRecordExtra; // True = Yes command produced additional MI output to its 1 line response, false = no extra MI output
                                   // formed.
     CMICmdArgSet m_setCmdArgs;    // The list of arguments *this command needs to parse from the options string to carry out work.
+    const CMIUtilString m_constStrArgThreadGroup;
+    const CMIUtilString m_constStrArgThread;
+    const CMIUtilString m_constStrArgFrame;
+
+    // These 3 members can be used by the derived classes to make any of
+    // "thread", "frame" or "thread-group" mandatory.
+    bool m_ThreadGrpArgMandatory;
+    bool m_ThreadArgMandatory;
+    bool m_FrameArgMandatory;
 };
 
 //++ ------------------------------------------------------------------------------------

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp Thu Oct 29 11:30:47 2015
@@ -57,7 +57,6 @@ CMICmdCmdBreakInsert::CMICmdCmdBreakInse
     , m_constStrArgNamedInoreCnt("i")
     , m_constStrArgNamedRestrictBrkPtToThreadId("p")
     , m_constStrArgNamedLocation("location")
-    , m_constStrArgNamedThreadGroup("thread-group")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "break-insert";
@@ -102,8 +101,6 @@ CMICmdCmdBreakInsert::ParseArgs()
     m_setCmdArgs.Add(new CMICmdArgValOptionShort(m_constStrArgNamedRestrictBrkPtToThreadId, false, true,
                                                    CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgNamedLocation, false, true));
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGroup, false, true, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     return ParseValidateCmdOptions();
 }
 
@@ -139,7 +136,7 @@ bool
 CMICmdCmdBreakInsert::Execute()
 {
     CMICMDBASE_GETOPTION(pArgTempBrkPt, OptionShort, m_constStrArgNamedTempBrkPt);
-    CMICMDBASE_GETOPTION(pArgThreadGroup, OptionLong, m_constStrArgNamedThreadGroup);
+    CMICMDBASE_GETOPTION(pArgThreadGroup, OptionLong, m_constStrArgThreadGroup);
     CMICMDBASE_GETOPTION(pArgLocation, String, m_constStrArgNamedLocation);
     CMICMDBASE_GETOPTION(pArgIgnoreCnt, OptionShort, m_constStrArgNamedInoreCnt);
     CMICMDBASE_GETOPTION(pArgPendingBrkPt, OptionShort, m_constStrArgNamedPendinfBrkPt);
@@ -372,7 +369,6 @@ CMICmdCmdBreakInsert::CreateSelf()
 //--
 CMICmdCmdBreakDelete::CMICmdCmdBreakDelete()
     : m_constStrArgNamedBrkPt("breakpoint")
-    , m_constStrArgNamedThreadGrp("thread-group")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "break-delete";
@@ -404,8 +400,6 @@ CMICmdCmdBreakDelete::~CMICmdCmdBreakDel
 bool
 CMICmdCmdBreakDelete::ParseArgs()
 {
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     m_setCmdArgs.Add(new CMICmdArgValListOfN(m_constStrArgNamedBrkPt, true, true, CMICmdArgValListBase::eArgValType_Number));
     return ParseValidateCmdOptions();
 }
@@ -488,8 +482,7 @@ CMICmdCmdBreakDelete::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdBreakDisable::CMICmdCmdBreakDisable()
-    : m_constStrArgNamedThreadGrp("thread-group")
-    , m_constStrArgNamedBrkPt("breakpoint")
+    : m_constStrArgNamedBrkPt("breakpoint")
     , m_bBrkPtDisabledOk(false)
     , m_nBrkPtId(0)
 {
@@ -523,8 +516,6 @@ CMICmdCmdBreakDisable::~CMICmdCmdBreakDi
 bool
 CMICmdCmdBreakDisable::ParseArgs()
 {
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     m_setCmdArgs.Add(new CMICmdArgValListOfN(m_constStrArgNamedBrkPt, true, true, CMICmdArgValListBase::eArgValType_Number));
     return ParseValidateCmdOptions();
 }
@@ -627,8 +618,7 @@ CMICmdCmdBreakDisable::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdBreakEnable::CMICmdCmdBreakEnable()
-    : m_constStrArgNamedThreadGrp("thread-group")
-    , m_constStrArgNamedBrkPt("breakpoint")
+    : m_constStrArgNamedBrkPt("breakpoint")
     , m_bBrkPtEnabledOk(false)
     , m_nBrkPtId(0)
 {
@@ -662,8 +652,6 @@ CMICmdCmdBreakEnable::~CMICmdCmdBreakEna
 bool
 CMICmdCmdBreakEnable::ParseArgs()
 {
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     m_setCmdArgs.Add(new CMICmdArgValListOfN(m_constStrArgNamedBrkPt, true, true, CMICmdArgValListBase::eArgValType_Number));
     return ParseValidateCmdOptions();
 }
@@ -766,8 +754,7 @@ CMICmdCmdBreakEnable::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdBreakAfter::CMICmdCmdBreakAfter()
-    : m_constStrArgNamedThreadGrp("thread-group")
-    , m_constStrArgNamedNumber("number")
+    : m_constStrArgNamedNumber("number")
     , m_constStrArgNamedCount("count")
     , m_nBrkPtId(0)
     , m_nBrkPtCount(0)
@@ -802,8 +789,6 @@ CMICmdCmdBreakAfter::~CMICmdCmdBreakAfte
 bool
 CMICmdCmdBreakAfter::ParseArgs()
 {
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNamedNumber, true, true));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNamedCount, true, true));
     return ParseValidateCmdOptions();
@@ -896,8 +881,7 @@ CMICmdCmdBreakAfter::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdBreakCondition::CMICmdCmdBreakCondition()
-    : m_constStrArgNamedThreadGrp("thread-group")
-    , m_constStrArgNamedNumber("number")
+    : m_constStrArgNamedNumber("number")
     , m_constStrArgNamedExpr("expr")
     , m_constStrArgNamedExprNoQuotes(
           "expression not surround by quotes") // Not specified in MI spec, we need to handle expressions not surrounded by quotes
@@ -933,8 +917,6 @@ CMICmdCmdBreakCondition::~CMICmdCmdBreak
 bool
 CMICmdCmdBreakCondition::ParseArgs()
 {
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNamedNumber, true, true));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgNamedExpr, true, true, true, true));
     m_setCmdArgs.Add(new CMICmdArgValListOfN(m_constStrArgNamedExprNoQuotes, false, false,

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdBreak.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdBreak.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdBreak.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdBreak.h Thu Oct 29 11:30:47 2015
@@ -95,7 +95,6 @@ class CMICmdCmdBreakInsert : public CMIC
     const CMIUtilString m_constStrArgNamedInoreCnt;
     const CMIUtilString m_constStrArgNamedRestrictBrkPtToThreadId;
     const CMIUtilString m_constStrArgNamedLocation;
-    const CMIUtilString m_constStrArgNamedThreadGroup; // Not specified in MI spec but Eclipse gives this option sometimes
 };
 
 //++ ============================================================================
@@ -125,7 +124,6 @@ class CMICmdCmdBreakDelete : public CMIC
     // Attributes:
   private:
     const CMIUtilString m_constStrArgNamedBrkPt;
-    const CMIUtilString m_constStrArgNamedThreadGrp; // Not specified in MI spec but Eclipse gives this option
 };
 
 //++ ============================================================================
@@ -154,7 +152,6 @@ class CMICmdCmdBreakDisable : public CMI
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgNamedThreadGrp; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNamedBrkPt;
     bool m_bBrkPtDisabledOk;
     MIuint m_nBrkPtId;
@@ -186,7 +183,6 @@ class CMICmdCmdBreakEnable : public CMIC
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgNamedThreadGrp; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNamedBrkPt;
     bool m_bBrkPtEnabledOk;
     MIuint m_nBrkPtId;
@@ -218,7 +214,6 @@ class CMICmdCmdBreakAfter : public CMICm
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgNamedThreadGrp; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNamedNumber;
     const CMIUtilString m_constStrArgNamedCount;
     MIuint m_nBrkPtId;
@@ -255,7 +250,6 @@ class CMICmdCmdBreakCondition : public C
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgNamedThreadGrp; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNamedNumber;
     const CMIUtilString m_constStrArgNamedExpr;
     const CMIUtilString m_constStrArgNamedExprNoQuotes; // Not specified in MI spec, we need to handle expressions not surrounded by quotes

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdData.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdData.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdData.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdData.cpp Thu Oct 29 11:30:47 2015
@@ -57,8 +57,6 @@ CMICmdCmdDataEvaluateExpression::CMICmdC
     , m_strValue("??")
     , m_bFoundInvalidChar(false)
     , m_cExpressionInvalidChar(0x00)
-    , m_constStrArgThread("thread")
-    , m_constStrArgFrame("frame")
     , m_constStrArgExpr("expr")
 {
     // Command factory matches this name with that received from the stdin stream
@@ -91,8 +89,6 @@ CMICmdCmdDataEvaluateExpression::~CMICmd
 bool
 CMICmdCmdDataEvaluateExpression::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, false, CMICmdArgValListBase::eArgValType_Number, 1));
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgFrame, false, false, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgExpr, true, true, true, true));
     return ParseValidateCmdOptions();
 }
@@ -241,8 +237,7 @@ CMICmdCmdDataEvaluateExpression::HaveInv
 // Throws:  None.
 //--
 CMICmdCmdDataDisassemble::CMICmdCmdDataDisassemble()
-    : m_constStrArgThread("thread")
-    , m_constStrArgAddrStart("s")
+    : m_constStrArgAddrStart("s")
     , m_constStrArgAddrEnd("e")
     , m_constStrArgConsume("--")
     , m_constStrArgMode("mode")
@@ -278,7 +273,6 @@ CMICmdCmdDataDisassemble::~CMICmdCmdData
 bool
 CMICmdCmdDataDisassemble::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(
         new CMICmdArgValOptionShort(m_constStrArgAddrStart, true, true, CMICmdArgValListBase::eArgValType_StringQuotedNumber, 1));
     m_setCmdArgs.Add(
@@ -463,9 +457,7 @@ CMICmdCmdDataDisassemble::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdDataReadMemoryBytes::CMICmdCmdDataReadMemoryBytes()
-    : m_constStrArgThread("thread")
-    , m_constStrArgFrame("frame")
-    , m_constStrArgByteOffset("o")
+    : m_constStrArgByteOffset("o")
     , m_constStrArgAddrExpr("address")
     , m_constStrArgNumBytes("count")
     , m_pBufferMemory(nullptr)
@@ -507,8 +499,6 @@ CMICmdCmdDataReadMemoryBytes::~CMICmdCmd
 bool
 CMICmdCmdDataReadMemoryBytes::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgFrame, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValOptionShort(m_constStrArgByteOffset, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgAddrExpr, true, true, true, true));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNumBytes, true, true));
@@ -789,8 +779,7 @@ CMICmdCmdDataReadMemory::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdDataListRegisterNames::CMICmdCmdDataListRegisterNames()
-    : m_constStrArgThreadGroup("thread-group")
-    , m_constStrArgRegNo("regno")
+    : m_constStrArgRegNo("regno")
     , m_miValueList(true)
 {
     // Command factory matches this name with that received from the stdin stream
@@ -823,7 +812,6 @@ CMICmdCmdDataListRegisterNames::~CMICmdC
 bool
 CMICmdCmdDataListRegisterNames::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThreadGroup, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     m_setCmdArgs.Add(new CMICmdArgValListOfN(m_constStrArgRegNo, false, false, CMICmdArgValListBase::eArgValType_Number));
     return ParseValidateCmdOptions();
 }
@@ -977,8 +965,7 @@ CMICmdCmdDataListRegisterNames::GetRegis
 // Throws:  None.
 //--
 CMICmdCmdDataListRegisterValues::CMICmdCmdDataListRegisterValues()
-    : m_constStrArgThread("thread")
-    , m_constStrArgSkip("skip-unavailable")
+    : m_constStrArgSkip("skip-unavailable")
     , m_constStrArgFormat("fmt")
     , m_constStrArgRegNo("regno")
     , m_miValueList(true)
@@ -1288,8 +1275,7 @@ CMICmdCmdDataListRegisterChanged::Create
 // Throws:  None.
 //--
 CMICmdCmdDataWriteMemoryBytes::CMICmdCmdDataWriteMemoryBytes()
-    : m_constStrArgThread("thread")
-    , m_constStrArgAddr("address")
+    : m_constStrArgAddr("address")
     , m_constStrArgContents("contents")
     , m_constStrArgCount("count")
 {
@@ -1323,7 +1309,6 @@ CMICmdCmdDataWriteMemoryBytes::~CMICmdCm
 bool
 CMICmdCmdDataWriteMemoryBytes::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, false, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgAddr, true, true, false, true));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgContents, true, true, true, true));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgCount, false, true, false, true));
@@ -1400,8 +1385,7 @@ CMICmdCmdDataWriteMemoryBytes::CreateSel
 // Throws:  None.
 //--
 CMICmdCmdDataWriteMemory::CMICmdCmdDataWriteMemory()
-    : m_constStrArgThread("thread")
-    , m_constStrArgOffset("o")
+    : m_constStrArgOffset("o")
     , m_constStrArgAddr("address")
     , m_constStrArgD("d")
     , m_constStrArgNumber("a number")
@@ -1445,7 +1429,6 @@ CMICmdCmdDataWriteMemory::~CMICmdCmdData
 bool
 CMICmdCmdDataWriteMemory::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, false, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValOptionShort(m_constStrArgOffset, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgAddr, true, true));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgD, true, true));

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdData.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdData.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdData.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdData.h Thu Oct 29 11:30:47 2015
@@ -75,8 +75,6 @@ class CMICmdCmdDataEvaluateExpression :
     CMICmnMIValueTuple m_miValueTuple;
     bool m_bFoundInvalidChar; // True = yes found unexpected character in the expression, false = all ok
     char m_cExpressionInvalidChar;
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option. Not handled by command.
-    const CMIUtilString m_constStrArgFrame;  // Not specified in MI spec but Eclipse gives this option. Not handled by command.
     const CMIUtilString m_constStrArgExpr;
 };
 
@@ -106,7 +104,6 @@ class CMICmdCmdDataDisassemble : public
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgThread;    // Not specified in MI spec but Eclipse gives this option. Not handled by command.
     const CMIUtilString m_constStrArgAddrStart; // MI spec non mandatory, *this command mandatory
     const CMIUtilString m_constStrArgAddrEnd;   // MI spec non mandatory, *this command mandatory
     const CMIUtilString m_constStrArgConsume;
@@ -140,8 +137,6 @@ class CMICmdCmdDataReadMemoryBytes : pub
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgThread; // Not in the MI spec but implemented by GDB.
-    const CMIUtilString m_constStrArgFrame; // Not in the MI spec but implemented by GDB.
     const CMIUtilString m_constStrArgByteOffset;
     const CMIUtilString m_constStrArgAddrExpr;
     const CMIUtilString m_constStrArgNumBytes;
@@ -204,7 +199,6 @@ class CMICmdCmdDataListRegisterNames : p
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgThreadGroup; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgRegNo;       // Not handled by *this command
     CMICmnMIValueList m_miValueList;
 };
@@ -240,7 +234,6 @@ class CMICmdCmdDataListRegisterValues :
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgSkip;   // Not handled by *this command
     const CMIUtilString m_constStrArgFormat;
     const CMIUtilString m_constStrArgRegNo;
@@ -297,7 +290,6 @@ class CMICmdCmdDataWriteMemoryBytes : pu
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option. Not handled by command.
     const CMIUtilString m_constStrArgAddr;
     const CMIUtilString m_constStrArgContents;
     const CMIUtilString m_constStrArgCount;
@@ -331,7 +323,6 @@ class CMICmdCmdDataWriteMemory : public
 
     // Attributes:
   private:
-    const CMIUtilString m_constStrArgThread;   // Not specified in MI spec but Eclipse gives this option. Not handled by command.
     const CMIUtilString m_constStrArgOffset;   // Not specified in MI spec but Eclipse gives this option.
     const CMIUtilString m_constStrArgAddr;     // Not specified in MI spec but Eclipse gives this option.
     const CMIUtilString m_constStrArgD;        // Not specified in MI spec but Eclipse gives this option.

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdExec.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdExec.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdExec.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdExec.cpp Thu Oct 29 11:30:47 2015
@@ -299,8 +299,7 @@ CMICmdCmdExecContinue::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdExecNext::CMICmdCmdExecNext()
-    : m_constStrArgThread("thread")
-    , m_constStrArgNumber("number")
+    : m_constStrArgNumber("number")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "exec-next";
@@ -332,7 +331,6 @@ CMICmdCmdExecNext::~CMICmdCmdExecNext()
 bool
 CMICmdCmdExecNext::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNumber, false, false));
     return ParseValidateCmdOptions();
 }
@@ -425,8 +423,7 @@ CMICmdCmdExecNext::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdExecStep::CMICmdCmdExecStep()
-    : m_constStrArgThread("thread")
-    , m_constStrArgNumber("number")
+    : m_constStrArgNumber("number")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "exec-step";
@@ -458,7 +455,6 @@ CMICmdCmdExecStep::~CMICmdCmdExecStep()
 bool
 CMICmdCmdExecStep::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNumber, false, false));
     return ParseValidateCmdOptions();
 }
@@ -551,8 +547,7 @@ CMICmdCmdExecStep::CreateSelf()
 // Throws:  None.
 //--
 CMICmdCmdExecNextInstruction::CMICmdCmdExecNextInstruction()
-    : m_constStrArgThread("thread")
-    , m_constStrArgNumber("number")
+    : m_constStrArgNumber("number")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "exec-next-instruction";
@@ -584,7 +579,6 @@ CMICmdCmdExecNextInstruction::~CMICmdCmd
 bool
 CMICmdCmdExecNextInstruction::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNumber, false, false));
     return ParseValidateCmdOptions();
 }
@@ -677,8 +671,7 @@ CMICmdCmdExecNextInstruction::CreateSelf
 // Throws:  None.
 //--
 CMICmdCmdExecStepInstruction::CMICmdCmdExecStepInstruction()
-    : m_constStrArgThread("thread")
-    , m_constStrArgNumber("number")
+    : m_constStrArgNumber("number")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "exec-step-instruction";
@@ -710,7 +703,6 @@ CMICmdCmdExecStepInstruction::~CMICmdCmd
 bool
 CMICmdCmdExecStepInstruction::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgNumber, false, false));
     return ParseValidateCmdOptions();
 }
@@ -803,8 +795,6 @@ CMICmdCmdExecStepInstruction::CreateSelf
 // Throws:  None.
 //--
 CMICmdCmdExecFinish::CMICmdCmdExecFinish()
-    : m_constStrArgThread("thread")
-    , m_constStrArgFrame("frame")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "exec-finish";
@@ -836,8 +826,6 @@ CMICmdCmdExecFinish::~CMICmdCmdExecFinis
 bool
 CMICmdCmdExecFinish::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgFrame, false, false, CMICmdArgValListBase::eArgValType_Number, 1));
     return ParseValidateCmdOptions();
 }
 

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdExec.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdExec.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdExec.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdExec.h Thu Oct 29 11:30:47 2015
@@ -120,7 +120,6 @@ class CMICmdCmdExecNext : public CMICmdB
     // Attributes:
   private:
     lldb::SBCommandReturnObject m_lldbResult;
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option
 };
 
@@ -151,7 +150,6 @@ class CMICmdCmdExecStep : public CMICmdB
     // Attributes:
   private:
     lldb::SBCommandReturnObject m_lldbResult;
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option
 };
 
@@ -182,7 +180,6 @@ class CMICmdCmdExecNextInstruction : pub
     // Attributes:
   private:
     lldb::SBCommandReturnObject m_lldbResult;
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option
 };
 
@@ -213,7 +210,6 @@ class CMICmdCmdExecStepInstruction : pub
     // Attributes:
   private:
     lldb::SBCommandReturnObject m_lldbResult;
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgNumber; // Not specified in MI spec but Eclipse gives this option
 };
 
@@ -244,8 +240,6 @@ class CMICmdCmdExecFinish : public CMICm
     // Attributes:
   private:
     lldb::SBCommandReturnObject m_lldbResult;
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option
-    const CMIUtilString m_constStrArgFrame;  // Not specified in MI spec but Eclipse gives this option
 };
 
 // CODETAG_DEBUG_SESSION_RUNNING_PROG_RECEIVED_SIGINT_PAUSE_PROGRAM

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdFile.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdFile.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdFile.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdFile.cpp Thu Oct 29 11:30:47 2015
@@ -32,7 +32,6 @@
 //--
 CMICmdCmdFileExecAndSymbols::CMICmdCmdFileExecAndSymbols()
     : m_constStrArgNameFile("file")
-    , m_constStrArgThreadGrp("thread-group")
     , m_constStrArgNamedPlatformName("p")
     , m_constStrArgNamedRemotePath("r")
 {
@@ -66,8 +65,6 @@ CMICmdCmdFileExecAndSymbols::~CMICmdCmdF
 bool
 CMICmdCmdFileExecAndSymbols::ParseArgs()
 {
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
     m_setCmdArgs.Add(new CMICmdArgValFile(m_constStrArgNameFile, true, true));
     m_setCmdArgs.Add(new CMICmdArgValOptionShort(m_constStrArgNamedPlatformName, false, true,
                                                  CMICmdArgValListBase::eArgValType_String, 1));

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdFile.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdFile.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdFile.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdFile.h Thu Oct 29 11:30:47 2015
@@ -56,8 +56,6 @@ class CMICmdCmdFileExecAndSymbols : publ
     // Attributes:
   private:
     const CMIUtilString m_constStrArgNameFile;
-    const CMIUtilString
-        m_constStrArgThreadGrp; // Not handled by *this command. Not specified in MI spec but Eclipse gives this option sometimes
     const CMIUtilString m_constStrArgNamedPlatformName; // Added to support iOS platform selection
     const CMIUtilString m_constStrArgNamedRemotePath; // Added to support iOS device remote file location
 };

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.cpp Thu Oct 29 11:30:47 2015
@@ -35,8 +35,7 @@ const CMICmdCmdGdbSet::MapGdbOptionNameT
 // Throws:  None.
 //--
 CMICmdCmdGdbSet::CMICmdCmdGdbSet()
-    : m_constStrArgNamedThreadGrp("thread-group")
-    , m_constStrArgNamedGdbOption("option")
+    : m_constStrArgNamedGdbOption("option")
     , m_bGdbOptionRecognised(true)
     , m_bGdbOptionFnSuccessful(false)
     , m_bGbbOptionFnHasError(false)
@@ -73,8 +72,6 @@ bool
 CMICmdCmdGdbSet::ParseArgs()
 {
     m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
-    m_setCmdArgs.Add(
         new CMICmdArgValListOfN(m_constStrArgNamedGdbOption, true, true, CMICmdArgValListBase::eArgValType_StringAnything));
     return ParseValidateCmdOptions();
 }

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdGdbSet.h Thu Oct 29 11:30:47 2015
@@ -76,7 +76,6 @@ class CMICmdCmdGdbSet : public CMICmdBas
   private:
     const static MapGdbOptionNameToFnGdbOptionPtr_t ms_mapGdbOptionNameToFnGdbOptionPtr;
     //
-    const CMIUtilString m_constStrArgNamedThreadGrp;
     const CMIUtilString m_constStrArgNamedGdbOption;
     bool m_bGdbOptionRecognised;   // True = This command has a function with a name that matches the Print argument, false = not found
     bool m_bGdbOptionFnSuccessful; // True = The print function completed its task ok, false = function failed for some reason

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.cpp Thu Oct 29 11:30:47 2015
@@ -39,8 +39,7 @@ const CMICmdCmdGdbShow::MapGdbOptionName
 // Throws:  None.
 //--
 CMICmdCmdGdbShow::CMICmdCmdGdbShow()
-    : m_constStrArgNamedThreadGrp("thread-group")
-    , m_constStrArgNamedGdbOption("option")
+    : m_constStrArgNamedGdbOption("option")
     , m_bGdbOptionRecognised(true)
     , m_bGdbOptionFnSuccessful(false)
     , m_bGbbOptionFnHasError(false)
@@ -77,8 +76,6 @@ bool
 CMICmdCmdGdbShow::ParseArgs()
 {
     m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgNamedThreadGrp, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
-    m_setCmdArgs.Add(
         new CMICmdArgValListOfN(m_constStrArgNamedGdbOption, true, true, CMICmdArgValListBase::eArgValType_StringAnything));
     return ParseValidateCmdOptions();
 }

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdGdbShow.h Thu Oct 29 11:30:47 2015
@@ -74,8 +74,7 @@ class CMICmdCmdGdbShow : public CMICmdBa
     // Attributes:
   private:
     const static MapGdbOptionNameToFnGdbOptionPtr_t ms_mapGdbOptionNameToFnGdbOptionPtr;
-    //
-    const CMIUtilString m_constStrArgNamedThreadGrp;
+
     const CMIUtilString m_constStrArgNamedGdbOption;
     bool m_bGdbOptionRecognised;   // True = This command has a function with a name that matches the Print argument, false = not found
     bool m_bGdbOptionFnSuccessful; // True = The print function completed its task ok, false = function failed for some reason

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdStack.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdStack.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdStack.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdStack.cpp Thu Oct 29 11:30:47 2015
@@ -41,7 +41,6 @@
 //--
 CMICmdCmdStackInfoDepth::CMICmdCmdStackInfoDepth()
     : m_nThreadFrames(0)
-    , m_constStrArgThread("thread")
     , m_constStrArgMaxDepth("max-depth")
 {
     // Command factory matches this name with that received from the stdin stream
@@ -74,7 +73,6 @@ CMICmdCmdStackInfoDepth::~CMICmdCmdStack
 bool
 CMICmdCmdStackInfoDepth::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgMaxDepth, false, false));
     return ParseValidateCmdOptions();
 }
@@ -265,7 +263,6 @@ CMICmdCmdStackInfoFrame::CreateSelf()
 //--
 CMICmdCmdStackListFrames::CMICmdCmdStackListFrames()
     : m_nThreadFrames(0)
-    , m_constStrArgThread("thread")
     , m_constStrArgFrameLow("low-frame")
     , m_constStrArgFrameHigh("high-frame")
 {
@@ -446,7 +443,6 @@ CMICmdCmdStackListFrames::CreateSelf()
 CMICmdCmdStackListArguments::CMICmdCmdStackListArguments()
     : m_bThreadInvalid(false)
     , m_miValueList(true)
-    , m_constStrArgThread("thread")
     , m_constStrArgPrintValues("print-values")
     , m_constStrArgFrameLow("low-frame")
     , m_constStrArgFrameHigh("high-frame")
@@ -632,8 +628,6 @@ CMICmdCmdStackListArguments::CreateSelf(
 CMICmdCmdStackListLocals::CMICmdCmdStackListLocals()
     : m_bThreadInvalid(false)
     , m_miValueList(true)
-    , m_constStrArgThread("thread")
-    , m_constStrArgFrame("frame")
     , m_constStrArgPrintValues("print-values")
 {
     // Command factory matches this name with that received from the stdin stream
@@ -666,8 +660,6 @@ CMICmdCmdStackListLocals::~CMICmdCmdStac
 bool
 CMICmdCmdStackListLocals::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgFrame, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValPrintValues(m_constStrArgPrintValues, true, true));
     return ParseValidateCmdOptions();
 }
@@ -795,8 +787,6 @@ CMICmdCmdStackListLocals::CreateSelf()
 CMICmdCmdStackListVariables::CMICmdCmdStackListVariables()
     : m_bThreadInvalid(false)
     , m_miValueList(true)
-    , m_constStrArgThread("thread")
-    , m_constStrArgFrame("frame")
     , m_constStrArgPrintValues("print-values")
 {
     // Command factory matches this name with that received from the stdin stream
@@ -829,8 +819,6 @@ CMICmdCmdStackListVariables::~CMICmdCmdS
 bool
 CMICmdCmdStackListVariables::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgFrame, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValPrintValues(m_constStrArgPrintValues, true, true));
     return ParseValidateCmdOptions();
 }
@@ -956,7 +944,7 @@ CMICmdCmdStackListVariables::CreateSelf(
 //--
 CMICmdCmdStackSelectFrame::CMICmdCmdStackSelectFrame()
     : m_bFrameInvalid(false)
-    , m_constStrArgFrame("frame")
+    , m_constStrArgFrameId("frame_id")
 {
     // Command factory matches this name with that received from the stdin stream
     m_strMiCmd = "stack-select-frame";
@@ -988,7 +976,7 @@ CMICmdCmdStackSelectFrame::~CMICmdCmdSta
 bool
 CMICmdCmdStackSelectFrame::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgFrame, true, false));
+    m_setCmdArgs.Add(new CMICmdArgValNumber(m_constStrArgFrameId, true, false));
     return ParseValidateCmdOptions();
 }
 
@@ -1004,7 +992,7 @@ CMICmdCmdStackSelectFrame::ParseArgs()
 bool
 CMICmdCmdStackSelectFrame::Execute()
 {
-    CMICMDBASE_GETOPTION(pArgFrame, Number, m_constStrArgFrame);
+    CMICMDBASE_GETOPTION(pArgFrame, Number, m_constStrArgFrameId);
 
     CMICmnLLDBDebugSessionInfo &rSessionInfo(CMICmnLLDBDebugSessionInfo::Instance());
     lldb::SBThread sbThread = rSessionInfo.GetProcess().GetSelectedThread();

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdStack.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdStack.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdStack.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdStack.h Thu Oct 29 11:30:47 2015
@@ -57,7 +57,6 @@ class CMICmdCmdStackInfoDepth : public C
     // Attributes:
   private:
     MIuint m_nThreadFrames;
-    const CMIUtilString m_constStrArgThread;   // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgMaxDepth; // Not handled by *this command
 };
 
@@ -122,7 +121,6 @@ class CMICmdCmdStackListFrames : public
   private:
     MIuint m_nThreadFrames;
     VecMIValueResult_t m_vecMIValueResult;
-    const CMIUtilString m_constStrArgThread; // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgFrameLow;
     const CMIUtilString m_constStrArgFrameHigh;
 };
@@ -155,7 +153,6 @@ class CMICmdCmdStackListArguments : publ
   private:
     bool m_bThreadInvalid; // True = yes invalid thread, false = thread object valid
     CMICmnMIValueList m_miValueList;
-    const CMIUtilString m_constStrArgThread;      // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgPrintValues;
     const CMIUtilString m_constStrArgFrameLow;
     const CMIUtilString m_constStrArgFrameHigh;
@@ -189,8 +186,6 @@ class CMICmdCmdStackListLocals : public
   private:
     bool m_bThreadInvalid; // True = yes invalid thread, false = thread object valid
     CMICmnMIValueList m_miValueList;
-    const CMIUtilString m_constStrArgThread;      // Not specified in MI spec but Eclipse gives this option
-    const CMIUtilString m_constStrArgFrame;       // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgPrintValues;
 };
 
@@ -222,8 +217,6 @@ public:
 private:
     bool m_bThreadInvalid; // True = yes invalid thread, false = thread object valid
     CMICmnMIValueList m_miValueList;
-    const CMIUtilString m_constStrArgThread;
-    const CMIUtilString m_constStrArgFrame;
     const CMIUtilString m_constStrArgPrintValues;
 };
 
@@ -254,5 +247,5 @@ class CMICmdCmdStackSelectFrame : public
     // Attributes:
   private:
     bool m_bFrameInvalid; // True = yes invalid frame, false = ok
-    const CMIUtilString m_constStrArgFrame;
+    const CMIUtilString m_constStrArgFrameId;
 };

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdVar.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdVar.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdVar.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdVar.cpp Thu Oct 29 11:30:47 2015
@@ -51,9 +51,6 @@ CMICmdCmdVarCreate::CMICmdCmdVarCreate()
     , m_strType("??")
     , m_bValid(false)
     , m_strValue("??")
-    , m_constStrArgThread("thread")
-    , m_constStrArgThreadGroup("thread-group")
-    , m_constStrArgFrame("frame")
     , m_constStrArgName("name")
     , m_constStrArgFrameAddr("frame-addr")
     , m_constStrArgExpression("expression")
@@ -88,10 +85,6 @@ CMICmdCmdVarCreate::~CMICmdCmdVarCreate(
 bool
 CMICmdCmdVarCreate::ParseArgs()
 {
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgThread, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
-    m_setCmdArgs.Add(
-        new CMICmdArgValOptionLong(m_constStrArgThreadGroup, false, false, CMICmdArgValListBase::eArgValType_ThreadGrp, 1));
-    m_setCmdArgs.Add(new CMICmdArgValOptionLong(m_constStrArgFrame, false, true, CMICmdArgValListBase::eArgValType_Number, 1));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgName, false, true));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgFrameAddr, false, true));
     m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgExpression, true, true, true, true));

Modified: lldb/trunk/tools/lldb-mi/MICmdCmdVar.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdVar.h?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdCmdVar.h (original)
+++ lldb/trunk/tools/lldb-mi/MICmdCmdVar.h Thu Oct 29 11:30:47 2015
@@ -78,9 +78,6 @@ class CMICmdCmdVarCreate : public CMICmd
     bool m_bValid; // True = Variable is valid, false = not valid
     CMIUtilString m_strExpression;
     CMIUtilString m_strValue;
-    const CMIUtilString m_constStrArgThread;      // Not specified in MI spec but Eclipse gives this option
-    const CMIUtilString m_constStrArgThreadGroup; // Not specified in MI spec but Eclipse gives this option
-    const CMIUtilString m_constStrArgFrame;       // Not specified in MI spec but Eclipse gives this option
     const CMIUtilString m_constStrArgName;
     const CMIUtilString m_constStrArgFrameAddr;
     const CMIUtilString m_constStrArgExpression;

Modified: lldb/trunk/tools/lldb-mi/MICmdInvoker.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdInvoker.cpp?rev=251636&r1=251635&r2=251636&view=diff
==============================================================================
--- lldb/trunk/tools/lldb-mi/MICmdInvoker.cpp (original)
+++ lldb/trunk/tools/lldb-mi/MICmdInvoker.cpp Thu Oct 29 11:30:47 2015
@@ -189,16 +189,20 @@ CMICmdInvoker::CmdExecute(CMICmdBase &vC
 {
     bool bOk = CmdAdd(vCmd);
 
-    if (bOk && !vCmd.ParseArgs())
+    if (bOk)
     {
-        // Report command execution failed
-        const SMICmdData cmdData(vCmd.GetCmdData());
-        CmdStdout(cmdData);
-        CmdCauseAppExit(vCmd);
-        CmdDelete(cmdData.id);
+        vCmd.AddCommonArgs();
+        if (!vCmd.ParseArgs())
+        {
+            // Report command execution failed
+            const SMICmdData cmdData(vCmd.GetCmdData());
+            CmdStdout(cmdData);
+            CmdCauseAppExit(vCmd);
+            CmdDelete(cmdData.id);
 
-        // Proceed to wait or execute next command
-        return MIstatus::success;
+            // Proceed to wait or execute next command
+            return MIstatus::success;
+        }
     }
 
     if (bOk && !vCmd.Execute())




More information about the lldb-commits mailing list