From: Simon Pilgrim Date: Wed, 21 Mar 2018 17:57:21 +0000 (+0000) Subject: [SchedModel] Use CodeGenSchedClass::isKeyEqual instead of duplicating code. NFCI. X-Git-Tag: llvmorg-7.0.0-rc1~10021 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4cca3b190be93d8bc3b8feebfca9a2a57e6e53df;p=platform%2Fupstream%2Fllvm.git [SchedModel] Use CodeGenSchedClass::isKeyEqual instead of duplicating code. NFCI. llvm-svn: 328126 --- diff --git a/llvm/utils/TableGen/CodeGenSchedule.cpp b/llvm/utils/TableGen/CodeGenSchedule.cpp index 8f51df8b8c23..eafa7aead704 100644 --- a/llvm/utils/TableGen/CodeGenSchedule.cpp +++ b/llvm/utils/TableGen/CodeGenSchedule.cpp @@ -652,12 +652,9 @@ void CodeGenSchedModels::collectSchedClasses() { unsigned CodeGenSchedModels::findSchedClassIdx(Record *ItinClassDef, ArrayRef Writes, ArrayRef Reads) const { - for (SchedClassIter I = schedClassBegin(), E = schedClassEnd(); I != E; ++I) { - if (I->ItinClassDef == ItinClassDef && makeArrayRef(I->Writes) == Writes && - makeArrayRef(I->Reads) == Reads) { + for (SchedClassIter I = schedClassBegin(), E = schedClassEnd(); I != E; ++I) + if (I->isKeyEqual(ItinClassDef, Writes, Reads)) return I - schedClassBegin(); - } - } return 0; } diff --git a/llvm/utils/TableGen/CodeGenSchedule.h b/llvm/utils/TableGen/CodeGenSchedule.h index 59c084b1af3f..3265cfbc0f7e 100644 --- a/llvm/utils/TableGen/CodeGenSchedule.h +++ b/llvm/utils/TableGen/CodeGenSchedule.h @@ -141,7 +141,8 @@ struct CodeGenSchedClass { CodeGenSchedClass(): Index(0), ItinClassDef(nullptr) {} - bool isKeyEqual(Record *IC, ArrayRef W, ArrayRef R) { + bool isKeyEqual(Record *IC, ArrayRef W, + ArrayRef R) const { return ItinClassDef == IC && makeArrayRef(Writes) == W && makeArrayRef(Reads) == R; }