[all-commits] [llvm/llvm-project] 775c28: [lld] enable fixup chains by default (#79894)

Richard Howell via All-commits all-commits at lists.llvm.org
Wed Jan 31 10:30:15 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 775c2856fb32868f357a3ce3f2b4139541e12578
      https://github.com/llvm/llvm-project/commit/775c2856fb32868f357a3ce3f2b4139541e12578
  Author: Richard Howell <rmaz at users.noreply.github.com>
  Date:   2024-01-31 (Wed, 31 Jan 2024)

  Changed paths:
    M lld/MachO/Driver.cpp
    M lld/test/MachO/arm64-32-stubs.s
    M lld/test/MachO/arm64-stubs.s
    M lld/test/MachO/dyld-stub-binder.s
    M lld/test/MachO/icf-safe.ll
    M lld/test/MachO/invalid/chained-fixups-incompatible.s
    M lld/test/MachO/objc-selrefs.s

  Log Message:
  -----------
  [lld] enable fixup chains by default (#79894)

Enable chained fixups in lld when all platform and version criteria are
met. This is an attempt at simplifying the logic used in ld 907:

https://github.com/apple-oss-distributions/ld64/blob/93d74eafc37c0558b4ffb88a8bc15c17bed44a20/src/ld/Options.cpp#L5458-L5549

Some changes were made to simplify the logic:
- only enable chained fixups for macOS from 13.0 to avoid the arch check
- only enable chained fixups for iphonesimulator from 16.0 to avoid the
arch check
- don't enable chained fixups for not specifically listed platforms
- don't enable chained fixups for arm64_32




More information about the All-commits mailing list