[all-commits] [llvm/llvm-project] 688064: [ORC] Remove unused header. NFC.

Lang Hames via All-commits all-commits at lists.llvm.org
Mon Feb 24 18:54:42 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 688064498a015e833bd24f5cd429462ca9126a54
      https://github.com/llvm/llvm-project/commit/688064498a015e833bd24f5cd429462ca9126a54
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-25 (Tue, 25 Feb 2025)

  Changed paths:
    R llvm/include/llvm/ExecutionEngine/Orc/JITLinkLazyCallThroughManager.h

  Log Message:
  -----------
  [ORC] Remove unused header. NFC.


  Commit: 253e11695ba8d77e4339d0c43758f192b149db1e
      https://github.com/llvm/llvm-project/commit/253e11695ba8d77e4339d0c43758f192b149db1e
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-25 (Tue, 25 Feb 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/EPCDynamicLibrarySearchGenerator.h
    A llvm/include/llvm/ExecutionEngine/Orc/GetTapiInterface.h
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/lib/ExecutionEngine/Orc/EPCDynamicLibrarySearchGenerator.cpp
    A llvm/lib/ExecutionEngine/Orc/GetTapiInterface.cpp
    A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_Foo.tbd
    A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_main_ret_foo.s
    A llvm/test/ExecutionEngine/JITLink/AArch64/MachO_weak_link.test
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC][llvm-jitlink] Add support for emulating ld64 -weak-lx / -weak_library.

Linking libraries in ld64 with -weak-lx / -weak_library causes all references
to symbols in those libraries to be made weak, allowing the librarie to be
missing at runtime.

This patch extends EPCDynamicLibrarySearchGenerator with support for emulating
this behavior: If an instance is constructed with an Allow predicate but no
dylib handle then all symbols matching the predicate are immediately resolved
to null.

The llvm-jitlink tool is updated with -weak-lx / -weak_library options for
testing. Unlike their ld64 counterparts these options take a TBD file as input,
and always resolve all exports in the TBD file to null.


Compare: https://github.com/llvm/llvm-project/compare/28002dd50fb7...253e11695ba8

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list