diff --git a/llvm/utils/TableGen/Common/CodeGenSchedule.cpp b/llvm/utils/TableGen/Common/CodeGenSchedule.cpp index a5ca060533bce..1d1de88499085 100644 --- a/llvm/utils/TableGen/Common/CodeGenSchedule.cpp +++ b/llvm/utils/TableGen/Common/CodeGenSchedule.cpp @@ -809,18 +809,6 @@ void CodeGenSchedModels::expandRWSeqForProc( } } -// Find the existing SchedWrite that models this sequence of writes. -unsigned CodeGenSchedModels::findRWForSequence(ArrayRef Seq, - bool IsRead) { - std::vector &RWVec = IsRead ? SchedReads : SchedWrites; - - auto I = find_if(RWVec, [Seq](CodeGenSchedRW &RW) { - return ArrayRef(RW.Sequence) == Seq; - }); - // Index zero reserved for invalid RW. - return I == RWVec.end() ? 0 : std::distance(RWVec.begin(), I); -} - /// Add this ReadWrite if it doesn't already exist. unsigned CodeGenSchedModels::findOrInsertRW(ArrayRef Seq, bool IsRead) { @@ -828,11 +816,14 @@ unsigned CodeGenSchedModels::findOrInsertRW(ArrayRef Seq, if (Seq.size() == 1) return Seq.back(); - unsigned Idx = findRWForSequence(Seq, IsRead); - if (Idx) - return Idx; - std::vector &RWVec = IsRead ? SchedReads : SchedWrites; + + auto I = find_if(RWVec, [Seq](CodeGenSchedRW &RW) { + return ArrayRef(RW.Sequence) == Seq; + }); + if (I != RWVec.end()) + return std::distance(RWVec.begin(), I); + unsigned RWIdx = RWVec.size(); CodeGenSchedRW SchedRW(RWIdx, IsRead, Seq, genRWName(Seq, IsRead)); RWVec.push_back(SchedRW); diff --git a/llvm/utils/TableGen/Common/CodeGenSchedule.h b/llvm/utils/TableGen/Common/CodeGenSchedule.h index f43c856b274ce..d47c03514b155 100644 --- a/llvm/utils/TableGen/Common/CodeGenSchedule.h +++ b/llvm/utils/TableGen/Common/CodeGenSchedule.h @@ -592,7 +592,6 @@ class CodeGenSchedModels { void collectSchedRW(); std::string genRWName(ArrayRef Seq, bool IsRead); - unsigned findRWForSequence(ArrayRef Seq, bool IsRead); void collectSchedClasses();