From 77454a2105404c972aa10322524b9ea08609cd9c Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Sun, 26 Jul 2009 05:09:50 +0000 Subject: [PATCH] Sort list of targets in --version. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77127 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Support/CommandLine.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/Support/CommandLine.cpp b/lib/Support/CommandLine.cpp index ed1ed2d5a09..b757b21c1a2 100644 --- a/lib/Support/CommandLine.cpp +++ b/lib/Support/CommandLine.cpp @@ -1144,19 +1144,22 @@ public: cout << "\n"; cout << " Registered Targets:\n"; + std::vector > Targets; size_t Width = 0; for (TargetRegistry::iterator it = TargetRegistry::begin(), - ie = TargetRegistry::end(); it != ie; ++it) + ie = TargetRegistry::end(); it != ie; ++it) { + Targets.push_back(std::make_pair(it->getName(), &*it)); Width = std::max(Width, ::strlen(it->getName())); + } + std::sort(Targets.begin(), Targets.end()); - unsigned NumTargets = 0; - for (TargetRegistry::iterator it = TargetRegistry::begin(), - ie = TargetRegistry::end(); it != ie; ++it, ++NumTargets) { - cout << " " << it->getName() - << std::string(Width - ::strlen(it->getName()), ' ') << " - " - << it->getShortDescription() << "\n"; + for (unsigned i = 0, e = Targets.size(); i != e; ++i) { + const Target *T = Targets[i].second; + cout << " " << T->getName() + << std::string(Width - ::strlen(T->getName()), ' ') << " - " + << T->getShortDescription() << "\n"; } - if (!NumTargets) + if (Targets.empty()) cout << " (none)\n"; } void operator=(bool OptionWasSpecified) { -- 2.34.1