summaryrefslogtreecommitdiffstats
path: root/polly/lib/CodeGen/CodeGeneration.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'polly/lib/CodeGen/CodeGeneration.cpp')
-rw-r--r--polly/lib/CodeGen/CodeGeneration.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/polly/lib/CodeGen/CodeGeneration.cpp b/polly/lib/CodeGen/CodeGeneration.cpp
index b434144a686..ce1098fa444 100644
--- a/polly/lib/CodeGen/CodeGeneration.cpp
+++ b/polly/lib/CodeGen/CodeGeneration.cpp
@@ -191,12 +191,7 @@ public:
} else {
NodeBuilder.addParameters(S.getContext());
- SplitBlock = Builder.GetInsertBlock();
- Builder.SetInsertPoint(&StartBlock->front());
- NodeBuilder.create(AstRoot);
-
- Builder.SetInsertPoint(SplitBlock->getTerminator());
ExprBuilder.setTrackOverflow(true);
Value *RTC = buildRTC(Builder, ExprBuilder);
Value *OverflowHappened = Builder.CreateNot(
@@ -204,7 +199,10 @@ public:
RTC = Builder.CreateAnd(RTC, OverflowHappened, "polly.rtc.result");
ExprBuilder.setTrackOverflow(false);
- SplitBlock->getTerminator()->setOperand(0, RTC);
+ Builder.GetInsertBlock()->getTerminator()->setOperand(0, RTC);
+ Builder.SetInsertPoint(&StartBlock->front());
+
+ NodeBuilder.create(AstRoot);
NodeBuilder.finalizeSCoP(S);
fixRegionInfo(EnteringBB->getParent(), R->getParent());
OpenPOWER on IntegriCloud