diff options
| author | Colin LeMahieu <colinl@codeaurora.org> | 2015-06-07 21:07:17 +0000 |
|---|---|---|
| committer | Colin LeMahieu <colinl@codeaurora.org> | 2015-06-07 21:07:17 +0000 |
| commit | 14ec76eb63abda926fdfc0b1ad330a30cc238b4c (patch) | |
| tree | 07786eceec10be250fd079f717e946eb9aff7531 /llvm | |
| parent | 856fc94a2fcf99046bc46e95602a287c07485700 (diff) | |
| download | bcm5719-llvm-14ec76eb63abda926fdfc0b1ad330a30cc238b4c.tar.gz bcm5719-llvm-14ec76eb63abda926fdfc0b1ad330a30cc238b4c.zip | |
[objdump] Moving PrintImmHex out of MachODump and in to llvm-objdump and setting instprinter appropriately.
llvm-svn: 239265
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/test/MC/X86/hex-immediates.s | 10 | ||||
| -rw-r--r-- | llvm/tools/llvm-objdump/MachODump.cpp | 4 | ||||
| -rw-r--r-- | llvm/tools/llvm-objdump/llvm-objdump.cpp | 5 | ||||
| -rw-r--r-- | llvm/tools/llvm-objdump/llvm-objdump.h | 1 |
4 files changed, 16 insertions, 4 deletions
diff --git a/llvm/test/MC/X86/hex-immediates.s b/llvm/test/MC/X86/hex-immediates.s new file mode 100644 index 00000000000..03f30423ae0 --- /dev/null +++ b/llvm/test/MC/X86/hex-immediates.s @@ -0,0 +1,10 @@ +# RUN: llvm-mc -filetype=obj %s -triple=x86_64-apple-darwin9 | llvm-objdump -d --print-imm-hex - | FileCheck %s + +# CHECK: movabsq $0x7fffffffffffffff, %rcx +movabsq $0x7fffffffffffffff, %rcx +# CHECK: leaq 0x3e2(%rip), %rdi +leaq 0x3e2(%rip), %rdi +# CHECK: subq $0x40, %rsp +subq $0x40, %rsp +# CHECK: leal (,%r14,4), %eax +leal (,%r14,4), %eax diff --git a/llvm/tools/llvm-objdump/MachODump.cpp b/llvm/tools/llvm-objdump/MachODump.cpp index f5e39fc073d..bf7451eb86d 100644 --- a/llvm/tools/llvm-objdump/MachODump.cpp +++ b/llvm/tools/llvm-objdump/MachODump.cpp @@ -67,10 +67,6 @@ static cl::opt<bool> FullLeadingAddr("full-leading-addr", static cl::opt<bool> NoLeadingAddr("no-leading-addr", cl::desc("Print no leading address")); -static cl::opt<bool> - PrintImmHex("print-imm-hex", - cl::desc("Use hex format for immediate values")); - cl::opt<bool> llvm::UniversalHeaders("universal-headers", cl::desc("Print Mach-O universal headers " "(requires -macho)")); diff --git a/llvm/tools/llvm-objdump/llvm-objdump.cpp b/llvm/tools/llvm-objdump/llvm-objdump.cpp index 58f6db0465d..1460fb0f0ab 100644 --- a/llvm/tools/llvm-objdump/llvm-objdump.cpp +++ b/llvm/tools/llvm-objdump/llvm-objdump.cpp @@ -149,6 +149,10 @@ static cl::alias PrivateHeadersShort("p", cl::desc("Alias for --private-headers"), cl::aliasopt(PrivateHeaders)); +cl::opt<bool> + llvm::PrintImmHex("print-imm-hex", + cl::desc("Use hex format for immediate values")); + static StringRef ToolName; static int ReturnValue = EXIT_SUCCESS; @@ -743,6 +747,7 @@ static void DisassembleObject(const ObjectFile *Obj, bool InlineRelocs) { << '\n'; return; } + IP->setPrintImmHex(PrintImmHex); PrettyPrinter &PIP = selectPrettyPrinter(Triple(TripleName)); StringRef Fmt = Obj->getBytesInAddress() > 4 ? "\t\t%016" PRIx64 ": " : diff --git a/llvm/tools/llvm-objdump/llvm-objdump.h b/llvm/tools/llvm-objdump/llvm-objdump.h index 276bdffb9f4..b4d34f4033b 100644 --- a/llvm/tools/llvm-objdump/llvm-objdump.h +++ b/llvm/tools/llvm-objdump/llvm-objdump.h @@ -51,6 +51,7 @@ extern cl::opt<bool> SectionHeaders; extern cl::opt<bool> SectionContents; extern cl::opt<bool> SymbolTable; extern cl::opt<bool> UnwindInfo; +extern cl::opt<bool> PrintImmHex; // Various helper functions. bool error(std::error_code ec); |

