diff --git a/lib/Support/CommandLine.cpp b/lib/Support/CommandLine.cpp index 631d0871afb..839ec799d80 100644 --- a/lib/Support/CommandLine.cpp +++ b/lib/Support/CommandLine.cpp @@ -23,7 +23,6 @@ #include "llvm/Support/ManagedStatic.h" #include "llvm/Support/raw_ostream.h" #include "llvm/Support/system_error.h" -#include "llvm/Target/TargetRegistry.h" #include "llvm/Support/Host.h" #include "llvm/Support/Path.h" #include "llvm/ADT/OwningPtr.h" @@ -1358,12 +1357,7 @@ public: << " Built " << __DATE__ << " (" << __TIME__ << ").\n" #endif << " Host: " << sys::getHostTriple() << '\n' - << " Host CPU: " << CPU << '\n' - << '\n'; - - // FIXME: This needs to be moved into each commandline tool to remove the - // layer violation. - TargetRegistry::printRegisteredTargetsForVersion(); + << " Host CPU: " << CPU << '\n'; } void operator=(bool OptionWasSpecified) { if (!OptionWasSpecified) return; @@ -1377,6 +1371,7 @@ public: // Iterate over any registered extra printers and call them to add further // information. if (ExtraVersionPrinters != 0) { + outs() << '\n'; for (std::vector::iterator I = ExtraVersionPrinters->begin(), E = ExtraVersionPrinters->end(); I != E; ++I) diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp index f2c4c27f7d6..9fe113f186e 100644 --- a/tools/llc/llc.cpp +++ b/tools/llc/llc.cpp @@ -238,6 +238,9 @@ int main(int argc, char **argv) { InitializeAllAsmPrinters(); InitializeAllAsmParsers(); + // Register the target printer for --version. + cl::AddExtraVersionPrinter(TargetRegistry::printRegisteredTargetsForVersion); + cl::ParseCommandLineOptions(argc, argv, "llvm system compiler\n"); // Load the module to be compiled... diff --git a/tools/llvm-mc/llvm-mc.cpp b/tools/llvm-mc/llvm-mc.cpp index f365972561d..5d4f015547a 100644 --- a/tools/llvm-mc/llvm-mc.cpp +++ b/tools/llvm-mc/llvm-mc.cpp @@ -463,6 +463,10 @@ int main(int argc, char **argv) { llvm::InitializeAllAsmParsers(); llvm::InitializeAllDisassemblers(); + // Register the target printer for --version. + // FIXME: Remove when we stop initializing the Target(Machine)s above. + cl::AddExtraVersionPrinter(TargetRegistry::printRegisteredTargetsForVersion); + cl::ParseCommandLineOptions(argc, argv, "llvm machine code playground\n"); TripleName = Triple::normalize(TripleName); diff --git a/tools/llvm-objdump/llvm-objdump.cpp b/tools/llvm-objdump/llvm-objdump.cpp index 21df7ccd9db..2efdc0de036 100644 --- a/tools/llvm-objdump/llvm-objdump.cpp +++ b/tools/llvm-objdump/llvm-objdump.cpp @@ -313,6 +313,10 @@ int main(int argc, char **argv) { llvm::InitializeAllAsmParsers(); llvm::InitializeAllDisassemblers(); + // Register the target printer for --version. + // FIXME: Remove when we stop initializing the Target(Machine)s above. + cl::AddExtraVersionPrinter(TargetRegistry::printRegisteredTargetsForVersion); + cl::ParseCommandLineOptions(argc, argv, "llvm object file dumper\n"); TripleName = Triple::normalize(TripleName);