llvm-project/llvm/lib/ExecutionEngine/Orc
Lang Hames 680845ec0d [ORC] Move MaterializationResponsibility methods to ExecutionSession.
MaterializationResponsibility, JITDylib, and ExecutionSession collectively
manage the OrcV2 core JIT state. Responsibility for maintaining and
updating this state has previously been spread among these classes, resulting
in implementations that are each non-trivial, but all tightly coupled. This has
in turn made reading the code and reasoning about state update and locking
rules difficult.

The core state model can be simplified by thinking of
MaterializationResponsibility and JITDylib as facets of ExecutionSession. This
commit is the first in a series intended to refactor Core.cpp to reflect this
model. Operations on MaterializationResponsibility and JITDylib will forward to
implementation methods inside ExecutionSession. Raw state will remain with the
original classes, but in most cases will only be modified by the
ExecutionSession.
2020-10-19 01:59:03 -07:00
..
CMakeLists.txt [ORC] Remove OrcV1 APIs. 2020-10-18 21:02:44 -07:00
CompileOnDemandLayer.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
CompileUtils.cpp [ORC] Add generic initializer/deinitializer support. 2020-02-19 13:59:32 -08:00
Core.cpp [ORC] Move MaterializationResponsibility methods to ExecutionSession. 2020-10-19 01:59:03 -07:00
DebugUtils.cpp [ORC] Introduce JITSymbolFlags::HasMaterializeSideEffectsOnly flag. 2020-03-27 11:02:54 -07:00
ExecutionUtils.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
IRCompileLayer.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
IRTransformLayer.cpp Re-apply "[ORC] Make MaterializationResponsibility immovable..." with fixes. 2020-09-11 14:09:05 -07:00
IndirectionUtils.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
JITTargetMachineBuilder.cpp [ORC] Add debugging output for LLJIT construction. 2020-05-28 20:31:50 -07:00
LLJIT.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
LLVMBuild.txt Break out OrcError and RPC 2019-10-29 17:31:28 -07:00
Layer.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
LazyReexports.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
MachOPlatform.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
Mangling.cpp [Object] Change uint32_t getSymbolFlags() to Expected<uint32_t> getSymbolFlags(). 2020-04-18 21:27:57 +08:00
ObjectLinkingLayer.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
ObjectTransformLayer.cpp Re-apply "[ORC] Make MaterializationResponsibility immovable..." with fixes. 2020-09-11 14:09:05 -07:00
OrcABISupport.cpp [ORC] Remove a spurious reinterpret_cast. 2020-07-13 12:39:24 -07:00
OrcV2CBindings.cpp [ORC] Add operations to create and lookup JITDylibs to OrcV2 C bindings. 2020-09-16 13:49:30 -07:00
RTDyldObjectLinkingLayer.cpp [ORC] Add support for resource tracking/removal (removable code). 2020-10-18 21:02:54 -07:00
SpeculateAnalyses.cpp [CFG/BasicBlock] Rename succ_const to const_succ. [NFC] 2020-03-25 12:40:55 -07:00
Speculation.cpp Re-apply "[ORC] Make MaterializationResponsibility immovable..." with fixes. 2020-09-11 14:09:05 -07:00
TPCDynamicLibrarySearchGenerator.cpp [ORC] Fix some bugs in TPCDynamicLibrarySearchGenerator, use in llvm-jitlink. 2020-09-04 13:23:52 -07:00
TPCIndirectionUtils.cpp [ORC][examples] Update Kaleidoscope and BuildingAJIT tutorial series to OrcV2. 2020-10-18 21:03:04 -07:00
TargetProcessControl.cpp [ORC] Fix some bugs in TPCDynamicLibrarySearchGenerator, use in llvm-jitlink. 2020-09-04 13:23:52 -07:00
ThreadSafeModule.cpp [ORC] cloneToNewContext() can work with a const-ref to ThreadSafeModule 2020-08-13 21:01:21 +02:00