[all-commits] [llvm/llvm-project] 92fd39: [dsymutil] Add reproducers to dsymutil

Jonas Devlieghere via All-commits all-commits at lists.llvm.org
Thu May 21 11:00:10 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 92fd3971e0db1d9faf2dbbcceb2b79b3192fd79d
      https://github.com/llvm/llvm-project/commit/92fd3971e0db1d9faf2dbbcceb2b79b3192fd79d
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2020-05-21 (Thu, 21 May 2020)

  Changed paths:
    M llvm/docs/CommandGuide/dsymutil.rst
    A llvm/test/tools/dsymutil/X86/reproducer.test
    M llvm/test/tools/dsymutil/cmdline.test
    M llvm/tools/dsymutil/CMakeLists.txt
    M llvm/tools/dsymutil/Options.td
    A llvm/tools/dsymutil/Reproducer.cpp
    A llvm/tools/dsymutil/Reproducer.h
    M llvm/tools/dsymutil/dsymutil.cpp

  Log Message:
  -----------
  [dsymutil] Add reproducers to dsymutil

Add support for generating a dsymutil reproducer. The result is a folder
containing all the object files for linking.

When --gen-reproducer is passed, dsymutil uses a FileCollectorFileSystem
which keeps track of all the files used by dsymutil. These files are
copied into a temporary directory when dsymutil exists.

When this path is passed to --use-reproducer, dsymutil uses a
RedirectingFileSystem that will use the files from the reproducer
directory instead of the actual paths. This means you don't need to mess
with the OSO path prefix.

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




More information about the All-commits mailing list