[all-commits] [llvm/llvm-project] 1a22f1: [ORC] Add withResourceKeyDo method to ResourceTrac...
lhames via All-commits
all-commits at lists.llvm.org
Mon Dec 19 15:23:10 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 1a22f1b64679f6b6d83ba8d4e395908eee65773d
https://github.com/llvm/llvm-project/commit/1a22f1b64679f6b6d83ba8d4e395908eee65773d
Author: Lang Hames <lhames at gmail.com>
Date: 2022-12-19 (Mon, 19 Dec 2022)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/Core.h
Log Message:
-----------
[ORC] Add withResourceKeyDo method to ResourceTracker.
This method behaves the same as MaterializationResponsibility::withResourceKeyDo
(which now forwards to the new method): It locks the session while providing
access to the ResourceKey associated with the tracker.
Adding this method to ResourceTracker allows resources to be allocated and
tracked for a given MaterializationUnit prior to that MaterializationUnit being
materialized. E.g. Platforms can now track and remove initializers and other
symbols.
Commit: bf6d7ca9870beb66766e2c087f5109eeb538f530
https://github.com/llvm/llvm-project/commit/bf6d7ca9870beb66766e2c087f5109eeb538f530
Author: Lang Hames <lhames at gmail.com>
Date: 2022-12-19 (Mon, 19 Dec 2022)
Changed paths:
M llvm/examples/OrcV2Examples/LLJITWithObjectLinkingLayerPlugin/LLJITWithObjectLinkingLayerPlugin.cpp
M llvm/include/llvm/ExecutionEngine/Orc/COFFPlatform.h
M llvm/include/llvm/ExecutionEngine/Orc/Core.h
M llvm/include/llvm/ExecutionEngine/Orc/DebugObjectManagerPlugin.h
M llvm/include/llvm/ExecutionEngine/Orc/DebuggerSupportPlugin.h
M llvm/include/llvm/ExecutionEngine/Orc/ELFNixPlatform.h
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h
M llvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/DebuggerSupportPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
M llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/unittests/ExecutionEngine/Orc/ResourceTrackerTest.cpp
Log Message:
-----------
[ORC] Add JITDylib argument to ResourceManager notify-removing/transferring ops.
In some cases it's helpful to group trackers by JITDylib. E.g. Platform classes
may want to track initializer symbols with a `JITDylib -> Tracker -> [ Symbol ]`
map. This makes it easy to collect all symbols for the JITDylib, while still
allowing efficient removal of a single tracker. Passing the JITDylib as an
argument to ResourceManager::notifyRemovingResources and
ResourceManager::notifyTransferringResources supports such use-cases.
Compare: https://github.com/llvm/llvm-project/compare/77197b56512d...bf6d7ca9870b
More information about the All-commits
mailing list