File tree 1 file changed +6
-1
lines changed
llvm/lib/Transforms/Vectorize
1 file changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -180,6 +180,7 @@ static bool isVPIRInstructionPhi(const VPRecipeBase &R) {
180
180
auto *VPIRI = dyn_cast<VPIRInstruction>(&R);
181
181
return VPIRI && isa<PHINode>(VPIRI->getInstruction ());
182
182
}
183
+
183
184
bool VPlanVerifier::verifyVPBasicBlock (const VPBasicBlock *VPBB) {
184
185
if (!verifyPhiRecipes (VPBB))
185
186
return false ;
@@ -251,8 +252,12 @@ bool VPlanVerifier::verifyVPBasicBlock(const VPBasicBlock *VPBB) {
251
252
" Unexpected recipe with 2 or more predecessors" );
252
253
Incoming = UserVPBB->getPredecessors ()[1 ];
253
254
}
254
- if (auto *R = dyn_cast<VPRegionBlock>(Incoming))
255
+ if (auto *R = dyn_cast<VPRegionBlock>(Incoming)) {
256
+ assert (isa<VPWidenPHIRecipe>(UI) &&
257
+ " Should only have a region as predecessor for "
258
+ " VPWidenPHIRecipe" );
255
259
Incoming = R->getExiting ();
260
+ }
256
261
if (Incoming != VPBB && !VPDT.dominates (VPBB, Incoming)) {
257
262
errs () << " Use before def!\n " ;
258
263
return false ;
You can’t perform that action at this time.
0 commit comments