@@ -2492,7 +2492,6 @@ BasicBlock *InnerLoopVectorizer::createVectorizedLoopSkeleton() {
2492
2492
// to the scalar loop.
2493
2493
emitIterationCountCheck (LoopScalarPreHeader);
2494
2494
2495
- replaceVPBBWithIRVPBB (Plan.getScalarPreheader (), LoopScalarPreHeader);
2496
2495
replaceVPBBWithIRVPBB (VectorPHVPBB, LoopVectorPreHeader);
2497
2496
return LoopVectorPreHeader;
2498
2497
}
@@ -7335,6 +7334,8 @@ DenseMap<const SCEV *, Value *> LoopVectorizationPlanner::executePlan(
7335
7334
BasicBlock *EntryBB =
7336
7335
cast<VPIRBasicBlock>(BestVPlan.getEntry ())->getIRBasicBlock ();
7337
7336
State.CFG .PrevBB = ILV.createVectorizedLoopSkeleton ();
7337
+ replaceVPBBWithIRVPBB (BestVPlan.getScalarPreheader (),
7338
+ State.CFG .PrevBB ->getSingleSuccessor ());
7338
7339
VPlanTransforms::removeDeadRecipes (BestVPlan);
7339
7340
7340
7341
assert (verifyVPlanIsValid (BestVPlan, true /* VerifyLate*/ ) &&
@@ -7466,7 +7467,6 @@ BasicBlock *EpilogueVectorizerMainLoop::createEpilogueVectorizedLoopSkeleton() {
7466
7467
EPI.MainLoopIterationCountCheck =
7467
7468
emitIterationCountCheck (LoopScalarPreHeader, false );
7468
7469
7469
- replaceVPBBWithIRVPBB (Plan.getScalarPreheader (), LoopScalarPreHeader);
7470
7470
return LoopVectorPreHeader;
7471
7471
}
7472
7472
@@ -7601,7 +7601,6 @@ EpilogueVectorizerEpilogueLoop::createEpilogueVectorizedLoopSkeleton() {
7601
7601
Phi->removeIncomingValue (MemCheckBlock);
7602
7602
}
7603
7603
7604
- replaceVPBBWithIRVPBB (Plan.getScalarPreheader (), LoopScalarPreHeader);
7605
7604
return LoopVectorPreHeader;
7606
7605
}
7607
7606
0 commit comments