[all-commits] [llvm/llvm-project] 1e82b2: [lldb/Target] Add ability to set a label to targets

Med Ismail Bennani via All-commits all-commits at lists.llvm.org
Tue Jun 6 10:58:56 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1e82b20118e31bd6c3844a84e03f701997a9b7ed
      https://github.com/llvm/llvm-project/commit/1e82b20118e31bd6c3844a84e03f701997a9b7ed
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2023-06-06 (Tue, 06 Jun 2023)

  Changed paths:
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Target/TargetList.h
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/TargetList.cpp
    A lldb/test/Shell/Target/target-label.test

  Log Message:
  -----------
  [lldb/Target] Add ability to set a label to targets

This patch add the ability for the user to set a label for a target.

This can be very useful when debugging targets with the same executables
in the same session.

Labels can be set either at the target creation in the command
interpreter or at any time using the SBAPI.

Target labels show up in the `target list` output, following the target
index, and they also allow the user to switch targets using them.

rdar://105016191

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

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 6a9c3e611505b7637b46fbaacaf50362c97a263d
      https://github.com/llvm/llvm-project/commit/6a9c3e611505b7637b46fbaacaf50362c97a263d
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2023-06-06 (Tue, 06 Jun 2023)

  Changed paths:
    M lldb/docs/python_api_enums.rst
    M lldb/examples/python/crashlog.py
    M lldb/include/lldb/Interpreter/CommandCompletions.h
    M lldb/include/lldb/Interpreter/CommandObject.h
    M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
    M lldb/include/lldb/Interpreter/OptionValueFileColonLine.h
    M lldb/include/lldb/Interpreter/OptionValueFileSpec.h
    M lldb/include/lldb/Utility/OptionDefinition.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectCommands.cpp
    M lldb/source/Commands/CommandObjectDWIMPrint.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectPlatform.cpp
    M lldb/source/Commands/CommandObjectPlugin.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/CommandObjectRegexCommand.cpp
    M lldb/source/Commands/CommandObjectRegister.cpp
    M lldb/source/Commands/CommandObjectSession.cpp
    M lldb/source/Commands/CommandObjectSettings.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/CommandObjectTrace.cpp
    M lldb/source/Commands/CommandObjectType.cpp
    M lldb/source/Commands/CommandObjectWatchpoint.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/IOHandler.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Interpreter/OptionValueArch.cpp
    M lldb/source/Interpreter/OptionValueFileColonLine.cpp
    M lldb/source/Interpreter/OptionValueFileSpec.cpp
    M lldb/source/Interpreter/Options.cpp
    M lldb/test/API/functionalities/completion/TestCompletion.py
    A lldb/test/API/functionalities/completion/my_test_cmd.py
    M lldb/utils/TableGen/LLDBOptionDefEmitter.cpp

  Log Message:
  -----------
  [lldb/Commands] Add support to auto-completion for user commands

This patch should allow the user to set specific auto-completion type
for their custom commands.

To do so, we had to hoist the `CompletionType` enum so the user can
access it and add a new completion type flag to the CommandScriptAdd
Command Object.

So now, the user can specify which completion type will be used with
their custom command, when they register it.

This also makes the `crashlog` custom commands use disk-file completion
type, to browse through the user file system and load the report.

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

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 3bc0baf9d43967d828e2d311f6c0863e79158f07
      https://github.com/llvm/llvm-project/commit/3bc0baf9d43967d828e2d311f6c0863e79158f07
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2023-06-06 (Tue, 06 Jun 2023)

  Changed paths:
    M lldb/examples/python/crashlog.py

  Log Message:
  -----------
  [lldb/crashlog] Expand crash report file path before parsing

This patch should fix a crash in the opening a crash report that was
passed with a relative path.

This patch expands the crash report path before parsing it and raises a
`FileNotFoundError` exception if the file doesn't exist.

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

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: e8966125e2812f08bf0f548bf576981025d44cbd
      https://github.com/llvm/llvm-project/commit/e8966125e2812f08bf0f548bf576981025d44cbd
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2023-06-06 (Tue, 06 Jun 2023)

  Changed paths:
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/test/API/functionalities/completion/TestCompletion.py

  Log Message:
  -----------
  [lldb/Commands] Fix disk completion from root directory

This patch should fix path completion starting from the root directory.

To do so, this patch adds a special case when setting the search
directory when the completion buffer points to the root directory.

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

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


Compare: https://github.com/llvm/llvm-project/compare/b95ed8b6d935...e8966125e281


More information about the All-commits mailing list