[all-commits] [llvm/llvm-project] 7565b2: [ORC] Switch ObjectLinkingLayer::Plugins to shared...
Lang Hames via All-commits
all-commits at lists.llvm.org
Wed May 1 01:40:34 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7565b20b50b254a72efa9d505e92be65c664b1b2
https://github.com/llvm/llvm-project/commit/7565b20b50b254a72efa9d505e92be65c664b1b2
Author: Lang Hames <lhames at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
Log Message:
-----------
[ORC] Switch ObjectLinkingLayer::Plugins to shared ownership, copy pipeline.
Previously ObjectLinkingLayer held unique ownership of Plugins, and links
always used the Layer's plugin list at each step. This can cause problems if
plugins are added while links are in progress however, as the newly added
plugin may receive only some of the callbacks for links that are already
running.
In this patch each link gets its own copy of the pipeline that remains
consistent throughout the link's lifetime, and it is guaranteed that Plugin
objects (now with shared ownership) will remain valid until the link completes.
Coding my way home: 9.80469S, 139.03167W
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list