diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2018-07-30 16:33:32 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2018-07-30 16:33:32 +0000 |
commit | 51315c45ff5643a27f9c84b816db54ee870ba29b (patch) | |
tree | 1d87443fa0e53d3e6b315ce25787e64be0906bf7 /contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp | |
parent | 6dfd050075216be8538ae375a22d30db72916f7e (diff) | |
parent | eb11fae6d08f479c0799db45860a98af528fa6e7 (diff) |
Merge llvm trunk r338150, and resolve conflicts.
Notes
Notes:
svn path=/projects/clang700-import/; revision=336916
Diffstat (limited to 'contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp')
-rw-r--r-- | contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp | 40 |
1 files changed, 25 insertions, 15 deletions
diff --git a/contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp b/contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp index 3b546b3ef508..18010c34f0f3 100644 --- a/contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp +++ b/contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp @@ -8,41 +8,51 @@ //===----------------------------------------------------------------------===// /// /// \file -/// \brief This file implements the COFF import library dumper for llvm-readobj. +/// This file implements the COFF import library dumper for llvm-readobj. /// //===----------------------------------------------------------------------===// #include "llvm/BinaryFormat/COFF.h" #include "llvm/Object/COFF.h" #include "llvm/Object/COFFImportFile.h" +#include "llvm/Support/ScopedPrinter.h" using namespace llvm::object; namespace llvm { -void dumpCOFFImportFile(const COFFImportFile *File) { - outs() << '\n'; - outs() << "File: " << File->getFileName() << "\n"; - outs() << "Format: COFF-import-file\n"; +void dumpCOFFImportFile(const COFFImportFile *File, ScopedPrinter &Writer) { + Writer.startLine() << '\n'; + Writer.printString("File", File->getFileName()); + Writer.printString("Format", "COFF-import-file"); const coff_import_header *H = File->getCOFFImportHeader(); switch (H->getType()) { - case COFF::IMPORT_CODE: outs() << "Type: code\n"; break; - case COFF::IMPORT_DATA: outs() << "Type: data\n"; break; - case COFF::IMPORT_CONST: outs() << "Type: const\n"; break; + case COFF::IMPORT_CODE: Writer.printString("Type", "code"); break; + case COFF::IMPORT_DATA: Writer.printString("Type", "data"); break; + case COFF::IMPORT_CONST: Writer.printString("Type", "const"); break; } switch (H->getNameType()) { - case COFF::IMPORT_ORDINAL: outs() << "Name type: ordinal\n"; break; - case COFF::IMPORT_NAME: outs() << "Name type: name\n"; break; - case COFF::IMPORT_NAME_NOPREFIX: outs() << "Name type: noprefix\n"; break; - case COFF::IMPORT_NAME_UNDECORATE: outs() << "Name type: undecorate\n"; break; + case COFF::IMPORT_ORDINAL: + Writer.printString("Name type", "ordinal"); + break; + case COFF::IMPORT_NAME: + Writer.printString("Name type", "name"); + break; + case COFF::IMPORT_NAME_NOPREFIX: + Writer.printString("Name type", "noprefix"); + break; + case COFF::IMPORT_NAME_UNDECORATE: + Writer.printString("Name type", "undecorate"); + break; } for (const object::BasicSymbolRef &Sym : File->symbols()) { - outs() << "Symbol: "; - Sym.printName(outs()); - outs() << "\n"; + raw_ostream &OS = Writer.startLine(); + OS << "Symbol: "; + Sym.printName(OS); + OS << "\n"; } } |