[all-commits] [llvm/llvm-project] bef55a: [ORC] Introduce EPCGenericRTDyldMemoryManager.

lhames via All-commits all-commits at lists.llvm.org
Sat Sep 25 10:43:19 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bef55a2b47a938ef35cbd7b61a1e5fa74e68c9ed
      https://github.com/llvm/llvm-project/commit/bef55a2b47a938ef35cbd7b61a1e5fa74e68c9ed
  Author: Lang Hames <lhames at gmail.com>
  Date:   2021-09-25 (Sat, 25 Sep 2021)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/EPCGenericRTDyldMemoryManager.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/RegisterEHFrames.h
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/EPCGenericRTDyldMemoryManager.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/OrcRTBootstrap.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/RegisterEHFrames.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.cpp
    M llvm/tools/lli/ChildTarget/ChildTarget.cpp
    A llvm/tools/lli/ForwardingMemoryManager.h
    R llvm/tools/lli/RemoteJITUtils.h
    M llvm/tools/lli/lli.cpp

  Log Message:
  -----------
  [ORC] Introduce EPCGenericRTDyldMemoryManager.

EPCGenericRTDyldMemoryMnaager is an EPC-based implementation of the
RuntimeDyld::MemoryManager interface. It enables remote-JITing via EPC (backed
by a SimpleExecutorMemoryManager instance on the executor side) for RuntimeDyld
clients.

The lli and lli-child-target tools are updated to use SimpleRemoteEPC and
SimpleRemoteEPCServer (rather than OrcRemoteTargetClient/Server), and
EPCGenericRTDyldMemoryManager for MCJIT tests.

By enabling remote-JITing for MCJIT and RuntimeDyld-based ORC clients,
EPCGenericRTDyldMemoryManager allows us to deprecate older remote-JITing
support, including OrcTargetClient/Server, OrcRPCExecutorProcessControl, and the
Orc RPC system itself. These will be removed in future patches.




More information about the All-commits mailing list