This patch adds support for removal of JITDylibs with notification to registered
clients to enable resources (including allocated memory) to be freed.
It is currently unsafe if any symbols in the module are currently being
materialized.
Paths
| Differential D79312
[ORC] Preliminary support for removable code. AbandonedPublic Authored by lhames on May 4 2020, 12:23 AM.
Details
Diff Detail
Event Timeline
Comment Actions Update for changes in 41379f1ec46. Adds an 'Open' state flag to JITDylib. Adds error plumbing for 'JITDylibDestroyed' errors to JITDylib and
Revision Contents
Diff 261746 llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/KaleidoscopeJIT.h
llvm/examples/OrcV2Examples/CMakeLists.txt
llvm/examples/OrcV2Examples/ExampleModules.h
llvm/examples/OrcV2Examples/LLJITRemoveCode/CMakeLists.txt
llvm/examples/OrcV2Examples/LLJITRemoveCode/LLJITRemoveCode.cpp
llvm/include/llvm/ExecutionEngine/Orc/Core.h
llvm/include/llvm/ExecutionEngine/Orc/IRCompileLayer.h
llvm/include/llvm/ExecutionEngine/Orc/Layer.h
llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h
llvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h
llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
llvm/lib/ExecutionEngine/Orc/Core.cpp
llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp
llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp
llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
llvm/lib/ExecutionEngine/Orc/Layer.cpp
llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp
llvm/unittests/ExecutionEngine/Orc/OrcTestCommon.h
llvm/unittests/ExecutionEngine/Orc/RTDyldObjectLinkingLayerTest.cpp
|
= default, maybe? (no functional difference, but I like that it at least has the potential to give the frontend a little more information it could use at some point)