From: Dylan Noblesmith Date: Sun, 24 Aug 2014 19:10:49 +0000 (+0000) Subject: TableGen: use auto and for-range X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=025ab7fe60e53cc6b53442759604f5aa258ed658;p=oota-llvm.git TableGen: use auto and for-range git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216348 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/TableGen/Record.cpp b/lib/TableGen/Record.cpp index cb21be7b762..5ee28c9370a 100644 --- a/lib/TableGen/Record.cpp +++ b/lib/TableGen/Record.cpp @@ -2014,16 +2014,14 @@ void RecordKeeper::dump() const { errs() << *this; } raw_ostream &llvm::operator<<(raw_ostream &OS, const RecordKeeper &RK) { OS << "------------- Classes -----------------\n"; - const std::map &Classes = RK.getClasses(); - for (std::map::const_iterator I = Classes.begin(), - E = Classes.end(); I != E; ++I) - OS << "class " << *I->second; + const auto &Classes = RK.getClasses(); + for (const auto &C : Classes) + OS << "class " << *C.second; OS << "------------- Defs -----------------\n"; - const std::map &Defs = RK.getDefs(); - for (std::map::const_iterator I = Defs.begin(), - E = Defs.end(); I != E; ++I) - OS << "def " << *I->second; + const auto &Defs = RK.getDefs(); + for (const auto &D : Defs) + OS << "def " << *D.second; return OS; } @@ -2038,10 +2036,9 @@ RecordKeeper::getAllDerivedDefinitions(const std::string &ClassName) const { PrintFatalError("ERROR: Couldn't find the `" + ClassName + "' class!\n"); std::vector Defs; - for (std::map::const_iterator I = getDefs().begin(), - E = getDefs().end(); I != E; ++I) - if (I->second->isSubClassOf(Class)) - Defs.push_back(I->second); + for (const auto &D : getDefs()) + if (D.second->isSubClassOf(Class)) + Defs.push_back(D.second); return Defs; } diff --git a/utils/TableGen/CTagsEmitter.cpp b/utils/TableGen/CTagsEmitter.cpp index 5d6d6da9cf2..072dcb5dd61 100644 --- a/utils/TableGen/CTagsEmitter.cpp +++ b/utils/TableGen/CTagsEmitter.cpp @@ -69,19 +69,15 @@ SMLoc CTagsEmitter::locate(const Record *R) { } void CTagsEmitter::run(raw_ostream &OS) { - const std::map &Classes = Records.getClasses(); - const std::map &Defs = Records.getDefs(); + const auto &Classes = Records.getClasses(); + const auto &Defs = Records.getDefs(); std::vector Tags; // Collect tags. Tags.reserve(Classes.size() + Defs.size()); - for (std::map::const_iterator I = Classes.begin(), - E = Classes.end(); - I != E; ++I) - Tags.push_back(Tag(I->first, locate(I->second))); - for (std::map::const_iterator I = Defs.begin(), - E = Defs.end(); - I != E; ++I) - Tags.push_back(Tag(I->first, locate(I->second))); + for (const auto &C : Classes) + Tags.push_back(Tag(C.first, locate(C.second))); + for (const auto &D : Defs) + Tags.push_back(Tag(D.first, locate(D.second))); // Emit tags. std::sort(Tags.begin(), Tags.end()); OS << "!_TAG_FILE_FORMAT\t1\t/original ctags format/\n"; diff --git a/utils/TableGen/PseudoLoweringEmitter.cpp b/utils/TableGen/PseudoLoweringEmitter.cpp index 3b74ac41e9b..e8933b4fac4 100644 --- a/utils/TableGen/PseudoLoweringEmitter.cpp +++ b/utils/TableGen/PseudoLoweringEmitter.cpp @@ -277,11 +277,10 @@ void PseudoLoweringEmitter::run(raw_ostream &o) { assert(InstructionClass && "Instruction class definition missing!"); std::vector Insts; - for (std::map::const_iterator I = - Records.getDefs().begin(), E = Records.getDefs().end(); I != E; ++I) { - if (I->second->isSubClassOf(ExpansionClass) && - I->second->isSubClassOf(InstructionClass)) - Insts.push_back(I->second); + for (const auto &D : Records.getDefs()) { + if (D.second->isSubClassOf(ExpansionClass) && + D.second->isSubClassOf(InstructionClass)) + Insts.push_back(D.second); } // Process the pseudo expansion definitions, validating them as we do so.