[JITLink] Add JITLinkDylib type, thread through JITLinkMemoryManager APIs.
authorLang Hames <lhames@gmail.com>
Mon, 14 Dec 2020 00:14:25 +0000 (11:14 +1100)
committerLang Hames <lhames@gmail.com>
Mon, 14 Dec 2020 01:29:16 +0000 (12:29 +1100)
commit8904ee8ac7ebcc50a60de0914abc6862e28b6664
tree92466a14bfce2960c56982caffb5abc0e8143677
parent77bb3c1ac200079abf4eec57a81a2f6cb14a6eae
[JITLink] Add JITLinkDylib type, thread through JITLinkMemoryManager APIs.

JITLinkDylib represents a target dylib for a JITLink link. By representing this
explicitly we can:
  - Enable JITLinkMemoryManagers to manage allocations on a per-dylib basis
    (e.g by maintaining a seperate allocation pool for each JITLinkDylib).
  - Enable new features and diagnostics that require information about the
    target dylib (not implemented in this patch).
llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h
llvm/include/llvm/ExecutionEngine/Orc/Core.h
llvm/include/llvm/ExecutionEngine/Orc/OrcRPCTargetProcessControl.h
llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp
llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp
llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
llvm/lib/ExecutionEngine/Orc/TPCIndirectionUtils.cpp
llvm/tools/llvm-jitlink/llvm-jitlink.cpp