[all-commits] [llvm/llvm-project] 1a3f88: [llvm-objdump] Add an llvm-otool tool

Nico Weber via All-commits all-commits at lists.llvm.org
Tue Apr 20 05:25:51 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1a3f88658a02be6be5224fca9d9123b79958f289
      https://github.com/llvm/llvm-project/commit/1a3f88658a02be6be5224fca9d9123b79958f289
  Author: Nico Weber <thakis at chromium.org>
  Date:   2021-04-20 (Tue, 20 Apr 2021)

  Changed paths:
    M llvm/docs/CommandGuide/index.rst
    M llvm/docs/CommandGuide/llvm-objdump.rst
    A llvm/docs/CommandGuide/llvm-otool.rst
    M llvm/test/CMakeLists.txt
    M llvm/test/lit.cfg.py
    M llvm/test/tools/llvm-objdump/MachO/AArch64/macho-link-opt-hints.test
    M llvm/test/tools/llvm-objdump/MachO/ARM/data-in-code.test
    M llvm/test/tools/llvm-objdump/MachO/ARM/mcpu-arm.test
    M llvm/test/tools/llvm-objdump/MachO/data-in-code.ll
    M llvm/test/tools/llvm-objdump/MachO/dis-no-leading-addr.test
    M llvm/test/tools/llvm-objdump/MachO/dis-symname.test
    M llvm/test/tools/llvm-objdump/MachO/dylib.test
    M llvm/test/tools/llvm-objdump/MachO/indirect-symbols.test
    M llvm/test/tools/llvm-objdump/MachO/info-plist.test
    M llvm/test/tools/llvm-objdump/MachO/macho-objc-meta-data.test
    M llvm/test/tools/llvm-objdump/MachO/private-headers.test
    M llvm/test/tools/llvm-objdump/MachO/relocations.test
    M llvm/test/tools/llvm-objdump/MachO/sections.test
    M llvm/test/tools/llvm-objdump/MachO/symbolized-disassembly.test
    M llvm/test/tools/llvm-objdump/MachO/universal-arm64.test
    A llvm/test/tools/llvm-objdump/tool-name.test
    M llvm/tools/llvm-objdump/CMakeLists.txt
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/tools/llvm-objdump/MachODump.h
    M llvm/tools/llvm-objdump/ObjdumpOptID.h
    A llvm/tools/llvm-objdump/OtoolOpts.td
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-objdump/BUILD.gn

  Log Message:
  -----------
  [llvm-objdump] Add an llvm-otool tool

This implements an LLVM tool that's flag- and output-compatible
with macOS's `otool` -- except for bugs, but from testing with both
`otool` and `xcrun otool-classic`, llvm-otool matches vanilla
otool's behavior very well already. It's not 100% perfect, but
it's a very solid start.

This uses the same approach as llvm-objcopy: llvm-objdump uses
a different OptTable when it's invoked as llvm-otool. This
is possible thanks to D100433.

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




More information about the All-commits mailing list