[all-commits] [llvm/llvm-project] 0e5cdb: [lldb] Make ObjectFileJSON loadable as a module

Jonas Devlieghere via All-commits all-commits at lists.llvm.org
Thu Apr 13 14:08:37 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0e5cdbf07e6d45ca168a76b2bc19b6e385cfae17
      https://github.com/llvm/llvm-project/commit/0e5cdbf07e6d45ca168a76b2bc19b6e385cfae17
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2023-04-13 (Thu, 13 Apr 2023)

  Changed paths:
    M lldb/include/lldb/Core/Section.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/source/Core/Section.cpp
    M lldb/source/Plugins/ObjectFile/JSON/ObjectFileJSON.cpp
    M lldb/source/Plugins/ObjectFile/JSON/ObjectFileJSON.h
    M lldb/source/Symbol/ObjectFile.cpp
    A lldb/test/API/macosx/symbols/TestObjectFileJSON.py

  Log Message:
  -----------
  [lldb] Make ObjectFileJSON loadable as a module

This patch adds support for creating modules from JSON object files.
This is necessary for the crashlog use case where we don't have either a
module or a symbol file. In that case the ObjectFileJSON serves as both.

The patch adds support for an object file type (i.e. executable, shared
library, etc). It also adds the ability to specify sections, which is
necessary in order specify symbols by address. Finally, this patch
improves error handling and fixes a bug where we wouldn't read more than
the initial 512 bytes in GetModuleSpecifications.

Differential revision: https://reviews.llvm.org/D148062




More information about the All-commits mailing list