[all-commits] [llvm/llvm-project] 20f51f: [lld-macho] Have --reproduce account for path rero...

Jez Ng via All-commits all-commits at lists.llvm.org
Wed May 5 11:42:31 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 20f51ffe67d12ab72c917dc4b371b55c80321393
      https://github.com/llvm/llvm-project/commit/20f51ffe67d12ab72c917dc4b371b55c80321393
  Author: Jez Ng <jezng at fb.com>
  Date:   2021-05-05 (Wed, 05 May 2021)

  Changed paths:
    M lld/MachO/Driver.cpp
    M lld/MachO/Driver.h
    M lld/MachO/DriverUtils.cpp
    M lld/test/MachO/reroot-path.s

  Log Message:
  -----------
  [lld-macho] Have --reproduce account for path rerooting

We need to account for path rerooting when generating the response
file. We could either reroot the paths before generating the file, or pass
through the original filenames and change just the syslibroot. I've opted for
the latter, in order that the reproduction run more closely mirrors the
original.

We must also be careful *not* to make an absolute path relative if it is
shadowed by a rerooted path. See repro6.tar in reroot-path.s for
details.

I've moved the call to `createResponseFile()` after the initialization of
`config->systemLibraryRoots`, since it now needs to know what those roots are.

Reviewed By: #lld-macho, oontvoo

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


  Commit: 8806df4778349dac4e8744b9ae50f43b80eedda3
      https://github.com/llvm/llvm-project/commit/8806df4778349dac4e8744b9ae50f43b80eedda3
  Author: Jez Ng <jezng at fb.com>
  Date:   2021-05-05 (Wed, 05 May 2021)

  Changed paths:
    M lld/MachO/Arch/ARM.cpp
    A lld/test/MachO/arm-branch-relocs.s

  Log Message:
  -----------
  [lld-macho] Preliminary support for ARM_RELOC_BR24

ARM_RELOC_BR24 is used for BL/BLX instructions from within ARM (i.e. not
Thumb) code. This diff just handles the basic case: branches from ARM to
ARM, or from ARM to Thumb where no shimming is required. (See comments
in ARM.cpp for why shims are required.)

Note: I will likely be deprioritizing ARM work for the near future to
focus on other parts of LLD. Apologies for the half-done state of this;
I'm just trying to wrap up what I've already worked on.

Reviewed By: #lld-macho, alexshap

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


Compare: https://github.com/llvm/llvm-project/compare/7907c46fe619...8806df477834


More information about the All-commits mailing list