[PATCH] D45484: [Polly][NewPM] Update pass registration for the LLVM plugin interface
Philip Pfaffe via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 10 05:50:41 PDT 2018
philip.pfaffe created this revision.
philip.pfaffe added reviewers: grosser, Meinersbur.
Herald added a reviewer: bollu.
Herald added a subscriber: bollu.
As of https://reviews.llvm.org/rL329273, LLVM has a mechanism to load new-pm plugins in opt. Use
this API in Polly.
Repository:
rPLO Polly
https://reviews.llvm.org/D45484
Files:
lib/Support/RegisterPasses.cpp
test/lit.site.cfg.in
Index: test/lit.site.cfg.in
===================================================================
--- test/lit.site.cfg.in
+++ test/lit.site.cfg.in
@@ -45,6 +45,8 @@
config.link_polly_into_tools.lower() == 'notfound' or \
config.link_polly_into_tools.lower() == 'link_polly_into_tools-notfound':
config.substitutions.append(('%loadPolly', '-load '
+ + config.polly_lib_dir + '/LLVMPolly at LLVM_SHLIBEXT@'
+ + ' -load-pass-plugin '
+ config.polly_lib_dir + '/LLVMPolly at LLVM_SHLIBEXT@'
+ ' -polly-process-unprofitable '
+ ' -polly-remarks-minimal '
Index: lib/Support/RegisterPasses.cpp
===================================================================
--- lib/Support/RegisterPasses.cpp
+++ lib/Support/RegisterPasses.cpp
@@ -42,6 +42,7 @@
#include "llvm/IR/LegacyPassManager.h"
#include "llvm/IR/Verifier.h"
#include "llvm/Passes/PassBuilder.h"
+#include "llvm/Passes/PassPlugin.h"
#include "llvm/Support/TargetSelect.h"
#include "llvm/Transforms/IPO.h"
#include "llvm/Transforms/IPO/PassManagerBuilder.h"
@@ -703,3 +704,10 @@
// FIXME else Error?
}
} // namespace polly
+
+// Plugin Entrypoint:
+extern "C" ::llvm::PassPluginLibraryInfo LLVM_ATTRIBUTE_WEAK LLVM_PLUGIN_EXPORT
+llvmGetPassPluginInfo() {
+ return {LLVM_PLUGIN_API_VERSION, "Polly", LLVM_VERSION_STRING,
+ polly::RegisterPollyPasses};
+}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45484.141830.patch
Type: text/x-patch
Size: 1501 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180410/3452951a/attachment.bin>
More information about the llvm-commits
mailing list