From d12cef82816190a5176d79108da1765da700d418 Mon Sep 17 00:00:00 2001 From: Rui Ueyama Date: Wed, 15 Jan 2014 23:46:18 +0000 Subject: [PATCH] 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 --- tools/llvm-objdump/COFFDump.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) 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; -- 2.34.1