diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2018-04-18 14:41:47 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2018-04-18 14:41:47 +0000 |
commit | fef7adae1d5ed7aadc317515b7aefeaf7f5936b8 (patch) | |
tree | 6fa21233936e29fcd9c5104c4706ebae1a2a7216 /llvm/tools/llvm-link/llvm-link.cpp | |
parent | 01e8c4e8c1883828cca1d358eb0475532260de1b (diff) | |
download | bcm5719-llvm-fef7adae1d5ed7aadc317515b7aefeaf7f5936b8.tar.gz bcm5719-llvm-fef7adae1d5ed7aadc317515b7aefeaf7f5936b8.zip |
[llvm-link] Use WithColor for printing errors
Use convenience helpers in WithColor to print errors and warnings.
Differential revision: https://reviews.llvm.org/D45667
llvm-svn: 330261
Diffstat (limited to 'llvm/tools/llvm-link/llvm-link.cpp')
-rw-r--r-- | llvm/tools/llvm-link/llvm-link.cpp | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/llvm/tools/llvm-link/llvm-link.cpp b/llvm/tools/llvm-link/llvm-link.cpp index 73cb779c8f6..a50b26da731 100644 --- a/llvm/tools/llvm-link/llvm-link.cpp +++ b/llvm/tools/llvm-link/llvm-link.cpp @@ -31,6 +31,7 @@ #include "llvm/Support/SourceMgr.h" #include "llvm/Support/SystemUtils.h" #include "llvm/Support/ToolOutputFile.h" +#include "llvm/Support/WithColor.h" #include "llvm/Transforms/IPO/FunctionImport.h" #include "llvm/Transforms/IPO/Internalize.h" #include "llvm/Transforms/Utils/FunctionImportUtils.h" @@ -118,7 +119,8 @@ static std::unique_ptr<Module> loadFile(const char *argv0, LLVMContext &Context, bool MaterializeMetadata = true) { SMDiagnostic Err; - if (Verbose) errs() << "Loading '" << FN << "'\n"; + if (Verbose) + errs() << "Loading '" << FN << "'\n"; std::unique_ptr<Module> Result; if (DisableLazyLoad) Result = parseIRFile(FN, Err, Context); @@ -186,12 +188,12 @@ struct LLVMLinkDiagnosticHandler : public DiagnosticHandler { unsigned Severity = DI.getSeverity(); switch (Severity) { case DS_Error: - errs() << "ERROR: "; + WithColor::error(); break; case DS_Warning: if (SuppressWarnings) return true; - errs() << "WARNING: "; + WithColor::warning(); break; case DS_Remark: case DS_Note: @@ -236,8 +238,8 @@ static bool importFunctions(const char *argv0, Module &DestModule) { auto &SrcModule = ModuleLoaderCache(argv0, FileName); if (verifyModule(SrcModule, &errs())) { - errs() << argv0 << ": " << FileName - << ": error: input module is broken!\n"; + errs() << argv0 << ": " << FileName; + WithColor::error() << "input module is broken!\n"; return false; } @@ -281,7 +283,8 @@ static bool linkFiles(const char *argv0, LLVMContext &Context, Linker &L, for (const auto &File : Files) { std::unique_ptr<Module> M = loadFile(argv0, File, Context); if (!M.get()) { - errs() << argv0 << ": error loading file '" << File << "'\n"; + errs() << argv0 << ": "; + WithColor::error() << " loading file '" << File << "'\n"; return false; } @@ -289,7 +292,8 @@ static bool linkFiles(const char *argv0, LLVMContext &Context, Linker &L, // doing that debug metadata in the src module might already be pointing to // the destination. if (DisableDITypeMap && verifyModule(*M, &errs())) { - errs() << argv0 << ": " << File << ": error: input module is broken!\n"; + errs() << argv0 << ": " << File << ": "; + WithColor::error() << "input module is broken!\n"; return false; } @@ -374,21 +378,24 @@ int main(int argc, char **argv) { if (!importFunctions(argv[0], *Composite)) return 1; - if (DumpAsm) errs() << "Here's the assembly:\n" << *Composite; + if (DumpAsm) + errs() << "Here's the assembly:\n" << *Composite; std::error_code EC; ToolOutputFile Out(OutputFilename, EC, sys::fs::F_None); if (EC) { - errs() << EC.message() << '\n'; + WithColor::error() << EC.message() << '\n'; return 1; } if (verifyModule(*Composite, &errs())) { - errs() << argv[0] << ": error: linked module is broken!\n"; + errs() << argv[0] << ": "; + WithColor::error() << "linked module is broken!\n"; return 1; } - if (Verbose) errs() << "Writing bitcode...\n"; + if (Verbose) + errs() << "Writing bitcode...\n"; if (OutputAssembly) { Composite->print(Out.os(), nullptr, PreserveAssemblyUseListOrder); } else if (Force || !CheckBitcodeOutputToConsole(Out.os(), true)) |