summaryrefslogtreecommitdiffstats
path: root/polly
diff options
context:
space:
mode:
Diffstat (limited to 'polly')
-rw-r--r--polly/lib/Support/RegisterPasses.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/polly/lib/Support/RegisterPasses.cpp b/polly/lib/Support/RegisterPasses.cpp
index e2f33490162..2a59fd9f6cf 100644
--- a/polly/lib/Support/RegisterPasses.cpp
+++ b/polly/lib/Support/RegisterPasses.cpp
@@ -30,6 +30,7 @@
#include "polly/ScopInfo.h"
#include "llvm/Analysis/CFGPrinter.h"
#include "llvm/IR/LegacyPassManager.h"
+#include "llvm/Transforms/IPO.h"
#include "llvm/Transforms/IPO/PassManagerBuilder.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Vectorize.h"
@@ -226,6 +227,11 @@ void registerPollyPasses(llvm::legacy::PassManagerBase &PM) {
break;
}
+ // FIXME: This dummy ModulePass keeps some programs from miscompiling,
+ // probably some not correctly preserved analyses. It acts as a barrier to
+ // force all analysis results to be recomputed.
+ PM.add(createBarrierNoopPass());
+
if (CFGPrinter)
PM.add(llvm::createCFGPrinterPass());
}
OpenPOWER on IntegriCloud