summaryrefslogtreecommitdiffstats
path: root/polly/lib/CodeGen/CodeGeneration.cpp
diff options
context:
space:
mode:
authorJohannes Doerfert <doerfert@cs.uni-saarland.de>2015-11-08 16:34:17 +0000
committerJohannes Doerfert <doerfert@cs.uni-saarland.de>2015-11-08 16:34:17 +0000
commit1dd6e37af45753e8e2980896a7240dd502f471e7 (patch)
tree31ff2384ce6f926e11729db00f13d97d38a5c38d /polly/lib/CodeGen/CodeGeneration.cpp
parent02d97aa74e78c288a0ea9d5eb590b2c7f0e44770 (diff)
downloadbcm5719-llvm-1dd6e37af45753e8e2980896a7240dd502f471e7.tar.gz
bcm5719-llvm-1dd6e37af45753e8e2980896a7240dd502f471e7.zip
Verify IR after we bail out
The bail out in r252412 left the code generation without verifying the (so far) generated IR. This will change now and ensure we always run the verifier. Suggested-by: Tobias Grosser <tobias@grosser.es> llvm-svn: 252419
Diffstat (limited to 'polly/lib/CodeGen/CodeGeneration.cpp')
-rw-r--r--polly/lib/CodeGen/CodeGeneration.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/polly/lib/CodeGen/CodeGeneration.cpp b/polly/lib/CodeGen/CodeGeneration.cpp
index 95ddbfbbfd6..2b04f838dbc 100644
--- a/polly/lib/CodeGen/CodeGeneration.cpp
+++ b/polly/lib/CodeGen/CodeGeneration.cpp
@@ -150,22 +150,24 @@ public:
// If the hoisting fails we have to bail and execute the original code.
Builder.SetInsertPoint(SplitBlock->getTerminator());
if (!NodeBuilder.preloadInvariantLoads()) {
+
auto *FalseI1 = Builder.getFalse();
Builder.GetInsertBlock()->getTerminator()->setOperand(0, FalseI1);
isl_ast_node_free(AstRoot);
- return true;
- }
- NodeBuilder.addParameters(S.getContext());
+ } else {
- Value *RTC = buildRTC(Builder, NodeBuilder.getExprBuilder());
- Builder.GetInsertBlock()->getTerminator()->setOperand(0, RTC);
- Builder.SetInsertPoint(&StartBlock->front());
+ NodeBuilder.addParameters(S.getContext());
- NodeBuilder.create(AstRoot);
+ Value *RTC = buildRTC(Builder, NodeBuilder.getExprBuilder());
+ Builder.GetInsertBlock()->getTerminator()->setOperand(0, RTC);
+ Builder.SetInsertPoint(&StartBlock->front());
- NodeBuilder.finalizeSCoP(S);
- fixRegionInfo(EnteringBB->getParent(), R->getParent());
+ NodeBuilder.create(AstRoot);
+
+ NodeBuilder.finalizeSCoP(S);
+ fixRegionInfo(EnteringBB->getParent(), R->getParent());
+ }
assert(!verifyGeneratedFunction(S, *EnteringBB->getParent()) &&
"Verification of generated function failed");
OpenPOWER on IntegriCloud