[PATCH] D53576: [llvm-objdump] Add alias option `--full-contents` for `-s` (PR39404)

Xing via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 24 08:35:47 PDT 2018


Higuoxing updated this revision to Diff 170904.
Higuoxing added a comment.

Thanks, I am reading the ELF format these days. So, I may make some stupid mistakes, sorry for that .


https://reviews.llvm.org/D53576

Files:
  test/tools/llvm-objdump/full-contents.test
  tools/llvm-objdump/llvm-objdump.cpp


Index: tools/llvm-objdump/llvm-objdump.cpp
===================================================================
--- tools/llvm-objdump/llvm-objdump.cpp
+++ tools/llvm-objdump/llvm-objdump.cpp
@@ -116,7 +116,11 @@
              cl::aliasopt(DynamicRelocations));
 
 cl::opt<bool>
-llvm::SectionContents("s", cl::desc("Display the content of each section"));
+llvm::SectionContents("full-contents",
+  cl::desc("Display the content of each section"));
+static cl::alias
+SectionContentsShort("s", cl::desc("Alias for --full-contents"),
+             cl::aliasopt(SectionContents));
 
 cl::opt<bool>
 llvm::SymbolTable("t", cl::desc("Display the symbol table"));
Index: test/tools/llvm-objdump/full-contents.test
===================================================================
--- test/tools/llvm-objdump/full-contents.test
+++ test/tools/llvm-objdump/full-contents.test
@@ -0,0 +1,47 @@
+# RUN: yaml2obj %s > %t
+# RUN: llvm-objdump --full-contents %t > %t.out1
+# RUN: llvm-objdump -s %t > %t.out2
+# RUN: cmp %t.out1 %t.out2
+# RUN: FileCheck %s --input-file=%t.out1
+
+# CHECK:      .bss
+# CHECK-NEXT: <skipping contents of bss section at [0000, 0040)>
+# CHECK:      .text
+# CHECK-NEXT:  0000 01234567                             .#Eg
+# CHECK:      .user-defined
+# CHECK-NEXT:  0000 76543210                             vT2.
+# CHECK:      .empty-section
+# CHECK-NEXT: <skipping contents of bss section at [0000, 0020)>
+# CHECK:      .symtab
+# CHECK:      .strtab
+# CHECK:      .shstrtab
+
+!ELF
+FileHeader:
+  Class:           ELFCLASS64
+  Data:            ELFDATA2LSB
+  Type:            ET_EXEC
+  Machine:         EM_X86_64
+Sections:
+  - Name:            .bss
+    Type:            SHT_NOBITS
+    Flags:           [ SHF_ALLOC ]
+    AddressAlign:    0x0000000000000010
+    Size:            64
+  - Name:            .text
+    Type:            SHT_PROGBITS
+    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
+    AddressAlign:    0x0000000000000010
+    Content:         "01234567"
+    Size:            4
+  - Name:            .user-defined
+    Type:            SHT_PROGBITS
+    Flags:           [ SHF_ALLOC ]
+    AddressAlign:    0x0000000000000010
+    Content:         "76543210"
+    Size:            4
+  - Name:            .empty-section
+    Type:            SHT_NOBITS
+    Flags:           [ SHF_ALLOC ]
+    AddressAlign:    0x0000000000000010
+    Size:            32


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D53576.170904.patch
Type: text/x-patch
Size: 2405 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181024/ca202e70/attachment.bin>


More information about the llvm-commits mailing list