From: Rui Ueyama Date: Wed, 15 Jan 2014 23:46:18 +0000 (+0000) Subject: llvm-objdump: Don't print "Import table:" header if there's no import table. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=d12cef82816190a5176d79108da1765da700d418;p=oota-llvm.git llvm-objdump: Don't print "Import table:" header if there's no import table. If a binary does not depend on any DLL, it does not contain import table at all. Printing the section title without contents looks wrong, so we shouldn't print it in that case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199340 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/llvm-objdump/COFFDump.cpp b/tools/llvm-objdump/COFFDump.cpp index 5f0bcbbc92d..9c380100e8c 100644 --- a/tools/llvm-objdump/COFFDump.cpp +++ b/tools/llvm-objdump/COFFDump.cpp @@ -230,11 +230,13 @@ static void printCOFFSymbolAddress(llvm::raw_ostream &Out, // Prints import tables. The import table is a table containing the list of // DLL name and symbol names which will be linked by the loader. static void printImportTables(const COFFObjectFile *Obj) { + import_directory_iterator i = Obj->import_directory_begin(); + import_directory_iterator e = Obj->import_directory_end(); + if (i == e) + return; outs() << "The Import Tables:\n"; error_code ec; - for (import_directory_iterator i = Obj->import_directory_begin(), - e = Obj->import_directory_end(); - i != e; i = i.increment(ec)) { + for (; i != e; i = i.increment(ec)) { if (ec) return;