[llvm] 9944ef4 - Omit "Contents of" headers when -no-leading-headers is specified.
Michael Trent via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 3 13:33:56 PST 2020
Author: Michael Trent
Date: 2020-02-03T13:33:50-08:00
New Revision: 9944ef42696ea048de6727c544eaebb897749113
URL: https://github.com/llvm/llvm-project/commit/9944ef42696ea048de6727c544eaebb897749113
DIFF: https://github.com/llvm/llvm-project/commit/9944ef42696ea048de6727c544eaebb897749113.diff
LOG: Omit "Contents of" headers when -no-leading-headers is specified.
Summary:
llvm-objdump -macho will no longer print "Contents of" headers when
disassembling section contents when -no-leading-headers is specified.
For historical reasons, this flag is independent of -no-leading-addr.
Reviewers: ab, pete, jhenderson
Reviewed By: jhenderson
Subscribers: rupprecht, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D73574
Added:
Modified:
llvm/test/tools/llvm-objdump/X86/macho-cstring-dump.test
llvm/tools/llvm-objdump/MachODump.cpp
Removed:
################################################################################
diff --git a/llvm/test/tools/llvm-objdump/X86/macho-cstring-dump.test b/llvm/test/tools/llvm-objdump/X86/macho-cstring-dump.test
index ae472076cdfe..9ced9c60121c 100644
--- a/llvm/test/tools/llvm-objdump/X86/macho-cstring-dump.test
+++ b/llvm/test/tools/llvm-objdump/X86/macho-cstring-dump.test
@@ -1,5 +1,6 @@
RUN: llvm-objdump -m -section __TEXT,__cstring %p/Inputs/hello.obj.macho-x86_64 2>&1 | FileCheck %s --implicit-check-not="warning:"
RUN: llvm-objdump -m -section __TEXT,__cstring -no-leading-addr %p/Inputs/hello.obj.macho-x86_64 | FileCheck %s -check-prefix=NO_ADDR --implicit-check-not="warning:"
+RUN: llvm-objdump -m -section __TEXT,__cstring -no-leading-headers %p/Inputs/hello.obj.macho-x86_64 | FileCheck %s -check-prefix=NO_HEADERS --implicit-check-not="warning:"
RUN: llvm-objdump -m -section __TEXT,__cstring -non-verbose %p/Inputs/hello.obj.macho-x86_64 | FileCheck %s -check-prefix=NON_VERBOSE --implicit-check-not="warning:"
CHECK: Contents of (__TEXT,__cstring) section
@@ -9,5 +10,9 @@ NO_ADDR: Contents of (__TEXT,__cstring) section
NO_ADDR: Hello world\n
NO_ADDR-NOT: 000000000000003b
+NO_HEADERS-NOT: Inputs/hello.obj.macho-x86_64:
+NO_HEADERS-NOT: Contents of (__TEXT,__cstring) section
+NO_HEADERS: 000000000000003b Hello world\n
+
NON_VERBOSE: Contents of (__TEXT,__cstring) section
-NON_VERBOSE: 000000000000003b 48 65 6c 6c 6f 20 77 6f 72 6c 64 0a 00
+NON_VERBOSE: 000000000000003b 48 65 6c 6c 6f 20 77 6f 72 6c 64 0a 00
diff --git a/llvm/tools/llvm-objdump/MachODump.cpp b/llvm/tools/llvm-objdump/MachODump.cpp
index 354aa1ba156b..fe46133eda89 100644
--- a/llvm/tools/llvm-objdump/MachODump.cpp
+++ b/llvm/tools/llvm-objdump/MachODump.cpp
@@ -1782,8 +1782,9 @@ static void DumpSectionContents(StringRef Filename, MachOObjectFile *O,
uint32_t sect_size = BytesStr.size();
uint64_t sect_addr = Section.getAddress();
- outs() << "Contents of (" << SegName << "," << SectName
- << ") section\n";
+ if (!NoLeadingHeaders)
+ outs() << "Contents of (" << SegName << "," << SectName
+ << ") section\n";
if (verbose) {
if ((section_flags & MachO::S_ATTR_PURE_INSTRUCTIONS) ||
More information about the llvm-commits
mailing list