@@ -1456,27 +1456,27 @@ class LoopVectorizationCostModel {
1456
1456
// iteration in scalar form.
1457
1457
if (TheLoop->getExitingBlock () != TheLoop->getLoopLatch ()) {
1458
1458
LLVM_DEBUG (dbgs () << " LV: Loop with VF = " << VF
1459
- << " requires scalar epilogue: multiple exists \n " );
1459
+ << " requires scalar epilogue: multiple exits \n " );
1460
1460
return true ;
1461
1461
}
1462
1462
if (VF.isVector ()) {
1463
1463
if (InterleaveInfo.requiresScalarEpilogue ()) {
1464
1464
// Make sure interleaved groups that require scalar epilogue will be
1465
1465
// widened.
1466
- for ( auto *G : InterleaveInfo.getInterleaveGroups ()) {
1467
- if (!G ->requiresScalarEpilogue ())
1468
- continue ;
1469
-
1470
- Instruction *I = G ->getMember (0 );
1471
- InstWidening Decision = getWideningDecision (I, VF);
1472
- if ( Decision == CM_Interleave ||
1473
- (Decision == CM_Unknown &&
1474
- interleavedAccessCanBeWidened (G-> getMember ( 0 ) , VF))) {
1475
- LLVM_DEBUG ( dbgs () << " LV: Loop with VF = " << VF
1476
- << " requires scalar epilogue: interleaved group "
1477
- " requires scalar epilogue\n " );
1478
- return true ;
1479
- }
1466
+ if ( any_of ( InterleaveInfo.getInterleaveGroups (), [&]( auto *Group ) {
1467
+ if (!Group ->requiresScalarEpilogue ())
1468
+ return false ;
1469
+
1470
+ Instruction *I = Group ->getMember (0 );
1471
+ InstWidening Decision = getWideningDecision (I, VF);
1472
+ return Decision == CM_Interleave ||
1473
+ (Decision == CM_Unknown &&
1474
+ interleavedAccessCanBeWidened (I , VF));
1475
+ })) {
1476
+ LLVM_DEBUG ( dbgs () << " LV: Loop with VF = " << VF
1477
+ << " requires scalar epilogue: interleaved group "
1478
+ " requires scalar epilogue \n " ) ;
1479
+ return true ;
1480
1480
}
1481
1481
}
1482
1482
}
0 commit comments