Flush out enough of llvm-objdump’s SymbolizerSymbolLookUp() for Mach-O files to
authorKevin Enderby <enderby@apple.com>
Wed, 24 Sep 2014 23:08:22 +0000 (23:08 +0000)
committerKevin Enderby <enderby@apple.com>
Wed, 24 Sep 2014 23:08:22 +0000 (23:08 +0000)
commite793862979e0222682356c280e9b63c65784202b
tree6b300cbca255b8d67f2519bebec9db2fc4d01910
parent0e9d1148656105a17365494044a0a82d547ee76f
Flush out enough of llvm-objdump’s SymbolizerSymbolLookUp() for Mach-O files to
get the literal string “Hello world” printed as a comment on the instruction
that loads the pointer to it. For now this is just for x86_64. So for object
files with relocation entries it produces things like:

leaq L_.str(%rip), %rax      ## literal pool for: "Hello world\n"

and similar for fully linked images like executables:

leaq 0x4f(%rip), %rax        ## literal pool for: "Hello world\n"

Also to allow testing against darwin’s otool(1), I hooked up the existing
-no-show-raw-insn option to the Mach-O parser code, added the new Mach-O
only -full-leading-addr option to match otool(1)'s printing of addresses and
also added the new -print-imm-hex option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218423 91177308-0d34-0410-b5e6-96231b3b80d8
test/tools/llvm-objdump/X86/macho-symbolized-disassembly.test
tools/llvm-objdump/MachODump.cpp
tools/llvm-objdump/llvm-objdump.cpp
tools/llvm-objdump/llvm-objdump.h