diff --git a/llvm/utils/TableGen/Common/CodeGenSchedule.cpp b/llvm/utils/TableGen/Common/CodeGenSchedule.cpp index a5ca060533bce..1eb74dc857cc4 100644 --- a/llvm/utils/TableGen/Common/CodeGenSchedule.cpp +++ b/llvm/utils/TableGen/Common/CodeGenSchedule.cpp @@ -1590,22 +1590,16 @@ bool PredTransitions::substituteVariants(const PredTransition &Trans) { // Visit each original write sequence. for (const auto &WriteSequence : Trans.WriteSequences) { // Push a new (empty) write sequence onto all partial Transitions. - for (std::vector::iterator I = TransVec.begin() + StartIdx, - E = TransVec.end(); - I != E; ++I) { - I->WriteSequences.emplace_back(); - } + for (auto &PT : drop_begin(TransVec, StartIdx)) + PT.WriteSequences.emplace_back(); Subst |= substituteVariantOperand(WriteSequence, /*IsRead=*/false, StartIdx); } // Visit each original read sequence. for (const auto &ReadSequence : Trans.ReadSequences) { // Push a new (empty) read sequence onto all partial Transitions. - for (std::vector::iterator I = TransVec.begin() + StartIdx, - E = TransVec.end(); - I != E; ++I) { - I->ReadSequences.emplace_back(); - } + for (auto &PT : drop_begin(TransVec, StartIdx)) + PT.ReadSequences.emplace_back(); Subst |= substituteVariantOperand(ReadSequence, /*IsRead=*/true, StartIdx); } return Subst;