@@ -946,7 +946,7 @@ static VPValue *optimizeLatchExitInductionUser(
946946 VPlan &Plan, VPTypeAnalysis &TypeInfo, VPBlockBase *PredVPBB, VPValue *Op,
947947 DenseMap<VPValue *, VPValue *> &EndValues, ScalarEvolution &SE) {
948948 VPValue *Incoming;
949- if (!match (Op, m_ExtractFinalLane (m_VPValue (Incoming))))
949+ if (!match (Op, m_ExtractLastLaneOfLastPart (m_VPValue (Incoming))))
950950 return nullptr ;
951951
952952 auto *WideIV = getOptimizableIVOf (Incoming, SE);
@@ -3764,7 +3764,7 @@ void VPlanTransforms::handleUncountableEarlyExit(VPBasicBlock *EarlyExitingVPBB,
37643764 if (ExitIRI->getNumOperands () != 1 ) {
37653765 // The first of two operands corresponds to the latch exit, via MiddleVPBB
37663766 // predecessor. Extract its final lane.
3767- ExitIRI->extractFinalLaneOfFirstOperand (MiddleBuilder);
3767+ ExitIRI->extractLastLaneOfLastPartOfFirstOperand (MiddleBuilder);
37683768 }
37693769
37703770 VPValue *IncomingFromEarlyExit = ExitIRI->getOperand (EarlyExitIdx);
@@ -5093,7 +5093,7 @@ void VPlanTransforms::addExitUsersForFirstOrderRecurrences(VPlan &Plan,
50935093 // the VPIRInstruction modeling the phi.
50945094 for (VPRecipeBase &R : make_early_inc_range (
50955095 make_range (MiddleVPBB->getFirstNonPhi (), MiddleVPBB->end ()))) {
5096- if (!match (&R, m_ExtractFinalLane (m_Specific (FOR))))
5096+ if (!match (&R, m_ExtractLastLaneOfLastPart (m_Specific (FOR))))
50975097 continue ;
50985098
50995099 // For VF vscale x 1, if vscale = 1, we are unable to extract the
0 commit comments