[llvm] cc2457c - [llvm-objdump] Set --print-imm-hex by default.
Daniel Thornburgh via llvm-commits
llvm-commits at lists.llvm.org
Sun Oct 30 13:36:25 PDT 2022
Author: Daniel Thornburgh
Date: 2022-10-30T13:36:18-07:00
New Revision: cc2457ca1bbdddefc09d72f889bc0389c90a831e
URL: https://github.com/llvm/llvm-project/commit/cc2457ca1bbdddefc09d72f889bc0389c90a831e
DIFF: https://github.com/llvm/llvm-project/commit/cc2457ca1bbdddefc09d72f889bc0389c90a831e.diff
LOG: [llvm-objdump] Set --print-imm-hex by default.
This was previously attempted in 2016 by colinl's D18770, but LLD tests
were missed, which caused the change to be reverted.
Setting --print-imm-hex by default brings llvm-objdump's behavior closer
in line with objdump, and it makes it easier to read addresses and
alignment from the disassembly. It may make non-address immediates
harder to interpret, but it still seems the better default, barring more
context-sensitive base selection logic.
Differential Revision: https://reviews.llvm.org/D136972
Added:
Modified:
llvm/docs/CommandGuide/llvm-objdump.rst
llvm/docs/ReleaseNotes.rst
llvm/test/tools/llvm-objdump/X86/print-imm-hex.s
llvm/tools/llvm-objdump/llvm-objdump.cpp
Removed:
################################################################################
diff --git a/llvm/docs/CommandGuide/llvm-objdump.rst b/llvm/docs/CommandGuide/llvm-objdump.rst
index 65a26bb3da84..0be440c2e360 100644
--- a/llvm/docs/CommandGuide/llvm-objdump.rst
+++ b/llvm/docs/CommandGuide/llvm-objdump.rst
@@ -196,7 +196,7 @@ OPTIONS
.. option:: --no-print-imm-hex
- Do not use hex format for immediate values in disassembly output (default).
+ Do not use hex format for immediate values in disassembly output.
.. option:: --no-show-raw-insn
@@ -219,7 +219,7 @@ OPTIONS
.. option:: --print-imm-hex
- Use hex format when printing immediate values in disassembly output.
+ Use hex format when printing immediate values in disassembly output (default).
.. option:: -S, --source
diff --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
index 9205d24346e0..0b9e08a3e830 100644
--- a/llvm/docs/ReleaseNotes.rst
+++ b/llvm/docs/ReleaseNotes.rst
@@ -200,6 +200,9 @@ Changes to the LLVM tools
that consume ``llvm-readobj``'s JSON output should update their parsers
accordingly.
+* ``llvm-objdump`` now uses ``--print-imm-hex`` by default, which brings its
+ default behavior closer in line with ``objdump``.
+
Changes to LLDB
---------------------------------
diff --git a/llvm/test/tools/llvm-objdump/X86/print-imm-hex.s b/llvm/test/tools/llvm-objdump/X86/print-imm-hex.s
index 8de49fd4c2a7..c4ae34639da4 100644
--- a/llvm/test/tools/llvm-objdump/X86/print-imm-hex.s
+++ b/llvm/test/tools/llvm-objdump/X86/print-imm-hex.s
@@ -1,6 +1,6 @@
# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t
-# RUN: llvm-objdump -d %t | FileCheck %s --check-prefix=NOPRINT
+# RUN: llvm-objdump -d %t | FileCheck %s --check-prefix=PRINT
# RUN: llvm-objdump -d --print-imm-hex --no-print-imm-hex %t | FileCheck %s --check-prefix=NOPRINT
# RUN: llvm-objdump -d --no-print-imm-hex --print-imm-hex %t | FileCheck %s --check-prefix=PRINT
diff --git a/llvm/tools/llvm-objdump/llvm-objdump.cpp b/llvm/tools/llvm-objdump/llvm-objdump.cpp
index efa64ede5071..9dab4a7477c5 100644
--- a/llvm/tools/llvm-objdump/llvm-objdump.cpp
+++ b/llvm/tools/llvm-objdump/llvm-objdump.cpp
@@ -3030,7 +3030,7 @@ static void parseObjdumpOptions(const llvm::opt::InputArgList &InputArgs) {
RawClangAST = InputArgs.hasArg(OBJDUMP_raw_clang_ast);
Relocations = InputArgs.hasArg(OBJDUMP_reloc);
PrintImmHex =
- InputArgs.hasFlag(OBJDUMP_print_imm_hex, OBJDUMP_no_print_imm_hex, false);
+ InputArgs.hasFlag(OBJDUMP_print_imm_hex, OBJDUMP_no_print_imm_hex, true);
PrivateHeaders = InputArgs.hasArg(OBJDUMP_private_headers);
FilterSections = InputArgs.getAllArgValues(OBJDUMP_section_EQ);
SectionHeaders = InputArgs.hasArg(OBJDUMP_section_headers);
More information about the llvm-commits
mailing list