[all-commits] [llvm/llvm-project] 0074ce: [ORC] Get rid of ObjectLinkingLayer::Plugin::getSy...
Lang Hames via All-commits
all-commits at lists.llvm.org
Sun Sep 22 01:59:11 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0074cea432e268ed126b12c6e7fd4df2e1707a77
https://github.com/llvm/llvm-project/commit/0074cea432e268ed126b12c6e7fd4df2e1707a77
Author: Lang Hames <lhames at gmail.com>
Date: 2024-09-22 (Sun, 22 Sep 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/COFFPlatform.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/lib/ExecutionEngine/Orc/COFFPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
Log Message:
-----------
[ORC] Get rid of ObjectLinkingLayer::Plugin::getSyntheticSymbolDependencies.
Instead, when a MaterializationResponsibility contains an initializer symbol,
the Platform classes (MachO, COFF, ELFNix) will now add a defined symbol with
the same name to an arbitary block within the initializer sections, and then
add keep-alive edges from that symbol to all other init section blocks.
ObjectLinkingLayer is updated to automatically discard symbols where the
corresponding MaterializationResponsibility entry has the
MaterializationSideEffecstsOnly flag. This change simplifies both the
ObjectLinkingLayer::Plugin interface and the dependence tracking algorithm,
which no longer needs a special case for "synthetic"
(MaterializationSideEffectsOnly) symbols.
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