[all-commits] [llvm/llvm-project] 0eba9d: [lldb/Dataformatter] Add support to CF{Dictionary, ...

Med Ismail Bennani via All-commits all-commits at lists.llvm.org
Fri May 15 13:15:06 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 0eba9de71e2add37dce165f3f3c9447772c3f65a
      https://github.com/llvm/llvm-project/commit/0eba9de71e2add37dce165f3f3c9447772c3f65a
  Author: Med Ismail Bennani <medismail.bennani at gmail.com>
  Date:   2020-05-15 (Fri, 15 May 2020)

  Changed paths:
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp
    M lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjCNSContainer.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-objc/main.m

  Log Message:
  -----------
  [lldb/Dataformatter] Add support to CF{Dictionary,Set}Ref types

This patch improves data formatting for CFDictionaryRef and CFSetRef.
It uses the same data-formatter as NSCFDictionaries and NSCFSets introduced
previously but did require some adjustments in Core::ValueObject.

Since the "Ref" types are opaque pointers to the actual CF containers, if the
value object has a synthetic value, lldb will use the opaque pointer's pointee
type to create the new ValueObjectChild needed to dereference the ValueObject.
This allows the "Ref" types to behaves the same as CF containers when used with
the `frame variable` command, the SBAPI or in Xcode's variable inspector.

This patch also adds support for incomplete types in ValueObject.

rdar://53104287

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

Signed-off-by: Med Ismail Bennani <medismail.bennani at gmail.com>


  Commit: 4e9e0488ab67c54be57e303ce3085466fbc8e886
      https://github.com/llvm/llvm-project/commit/4e9e0488ab67c54be57e303ce3085466fbc8e886
  Author: Med Ismail Bennani <medismail.bennani at gmail.com>
  Date:   2020-05-15 (Fri, 15 May 2020)

  Changed paths:
    M lldb/source/Commands/CommandObjectPlatform.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/test/API/commands/platform/basic/TestPlatformCommand.py

  Log Message:
  -----------
  [lldb/Commands] Add ability to run shell command on the host.

This patch introduces the `(-h|--host)` option to the `platform shell`
command. It allows the user to run shell commands from the host platform
(always available) without putting lldb in the background.

Since the default behaviour of `platform shell` is to run the command of
the selected platform, having such a choice can be quite handy when
debugging remote targets, for instances.

This patch also introduces a `shell` alias, to improve the command
discoverability and make it more convenient to use for the user.

rdar://62856024

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

Signed-off-by: Med Ismail Bennani <medismail.bennani at gmail.com>


Compare: https://github.com/llvm/llvm-project/compare/e8ea35e63f50...4e9e0488ab67


More information about the All-commits mailing list