diff options
author | Serge Guelton <sguelton@redhat.com> | 2020-06-25 05:57:01 -0400 |
---|---|---|
committer | serge-sans-paille <sguelton@redhat.com> | 2020-09-08 10:33:38 +0200 |
commit | 38778e1087b2825e91b07ce4570c70815b49dcdc (patch) | |
tree | f82e47e18921c7a3e64a030e46faf2939814c785 | |
parent | 2168dbf4cc766dfb552076d9b1e84b00122b7993 (diff) | |
download | llvm-38778e1087b2825e91b07ce4570c70815b49dcdc.zip llvm-38778e1087b2825e91b07ce4570c70815b49dcdc.tar.gz llvm-38778e1087b2825e91b07ce4570c70815b49dcdc.tar.bz2 |
Provide anchor for compiler extensions
This patch is cherry-picked from 04b0a4e22e3b4549f9d241f8a9f37eebecb62a31, and
amended to prevent an undefined reference to `llvm::EnableABIBreakingChecks'
-rw-r--r-- | llvm/lib/Extensions/Extensions.cpp | 15 | ||||
-rw-r--r-- | llvm/lib/Extensions/LLVMBuild.txt | 2 |
2 files changed, 16 insertions, 1 deletions
diff --git a/llvm/lib/Extensions/Extensions.cpp b/llvm/lib/Extensions/Extensions.cpp index e69de29..2fe537f 100644 --- a/llvm/lib/Extensions/Extensions.cpp +++ b/llvm/lib/Extensions/Extensions.cpp @@ -0,0 +1,15 @@ +#include "llvm/Passes/PassPlugin.h" +#define HANDLE_EXTENSION(Ext) \ + llvm::PassPluginLibraryInfo get##Ext##PluginInfo(); +#include "llvm/Support/Extension.def" + + +namespace llvm { + namespace details { + void extensions_anchor() { +#define HANDLE_EXTENSION(Ext) \ + static auto Ext = get##Ext##PluginInfo(); +#include "llvm/Support/Extension.def" + } + } +} diff --git a/llvm/lib/Extensions/LLVMBuild.txt b/llvm/lib/Extensions/LLVMBuild.txt index 2005830..7a98c8f 100644 --- a/llvm/lib/Extensions/LLVMBuild.txt +++ b/llvm/lib/Extensions/LLVMBuild.txt @@ -18,4 +18,4 @@ type = Library name = Extensions parent = Libraries -required_libraries = +required_libraries = Support |