[llvm] r371826 - [llvm-objdump] Fix llvm-objdump --all-headers output order

George Rimar via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 13 01:56:28 PDT 2019


Author: grimar
Date: Fri Sep 13 01:56:28 2019
New Revision: 371826

URL: http://llvm.org/viewvc/llvm-project?rev=371826&view=rev
Log:
[llvm-objdump] Fix llvm-objdump --all-headers output order

Patch by Justice Adams!

Made llvm-objdump --all-headers output match the order of GNU objdump for compatibility reasons.

Old order of the headers output:
* file header
* section header table
* symbol table
* program header table
* dynamic section

New order of the headers output (GNU compatible):
* file header information
* program header table
* dynamic section
* section header table
* symbol table

(Relevant BugZilla Bug: https://bugs.llvm.org/show_bug.cgi?id=41830)

Differential revision: https://reviews.llvm.org/D67357

Modified:
    llvm/trunk/test/tools/llvm-objdump/all-headers.test
    llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp

Modified: llvm/trunk/test/tools/llvm-objdump/all-headers.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-objdump/all-headers.test?rev=371826&r1=371825&r2=371826&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-objdump/all-headers.test (original)
+++ llvm/trunk/test/tools/llvm-objdump/all-headers.test Fri Sep 13 01:56:28 2019
@@ -9,10 +9,10 @@
 # CHECK-NEXT:  architecture: x86_64
 # CHECK-NEXT:  start address: 0x0000000000000000
 # CHECK-EMPTY:
-# CHECK-NEXT:  Sections:
-# CHECK: SYMBOL TABLE:
-# CHECK: Program Header:
+# CHECK-NEXT: Program Header:
 # CHECK: Dynamic Section:
+# CHECK: Sections:
+# CHECK: SYMBOL TABLE:
 
 ## Check how we dump the archives.
 ## Check we dump the appropriate headers for each file in the archive.
@@ -26,18 +26,18 @@
 # ARCHIVE: architecture: x86_64
 # ARCHIVE: start address: 0x0000000000000000
 # ARCHIVE: rw-r--r--
-# ARCHIVE: Sections:
-# ARCHIVE: SYMBOL TABLE:
 # ARCHIVE: Program Header:
 # ARCHIVE: Dynamic Section:
+# ARCHIVE: Sections:
+# ARCHIVE: SYMBOL TABLE:
 # ARCHIVE: {{.*}}.a({{.*}}2):   file format ELF64-x86-64
 # ARCHIVE: architecture: x86_64
 # ARCHIVE: start address: 0x0000000000000000
 # ARCHIVE: rw-r--r--
-# ARCHIVE: Sections:
-# ARCHIVE: SYMBOL TABLE:
 # ARCHIVE: Program Header:
 # ARCHIVE: Dynamic Section:
+# ARCHIVE: Sections:
+# ARCHIVE: SYMBOL TABLE:
 
 !ELF
 FileHeader:

Modified: llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp?rev=371826&r1=371825&r2=371826&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp (original)
+++ llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp Fri Sep 13 01:56:28 2019
@@ -2087,6 +2087,8 @@ static void dumpObject(ObjectFile *O, co
     printRelocations(O);
   if (DynamicRelocations)
     printDynamicRelocations(O);
+  if (PrivateHeaders || FirstPrivateHeader)
+    printPrivateFileHeaders(O, FirstPrivateHeader);
   if (SectionHeaders)
     printSectionHeaders(O);
   if (SectionContents)
@@ -2095,8 +2097,6 @@ static void dumpObject(ObjectFile *O, co
     printSymbolTable(O, ArchiveName);
   if (UnwindInfo)
     printUnwindInfo(O);
-  if (PrivateHeaders || FirstPrivateHeader)
-    printPrivateFileHeaders(O, FirstPrivateHeader);
   if (ExportsTrie)
     printExportsTrie(O);
   if (Rebase)




More information about the llvm-commits mailing list