aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-objdump/MachODump.cpp
diff options
context:
space:
mode:
authorFrederic Riss <friss@apple.com>2015-09-02 16:49:13 +0000
committerFrederic Riss <friss@apple.com>2015-09-02 16:49:13 +0000
commit24faade4b3f3bcbcd671e81c74db425b14b93c33 (patch)
tree1a66a7d2d5ff8978324be0fe0dbe1ea093794d88 /llvm/tools/llvm-objdump/MachODump.cpp
parent12004ebe2fd602f5b7a8eacae5cc125b7bb5c932 (diff)
downloadllvm-24faade4b3f3bcbcd671e81c74db425b14b93c33.zip
llvm-24faade4b3f3bcbcd671e81c74db425b14b93c33.tar.gz
llvm-24faade4b3f3bcbcd671e81c74db425b14b93c33.tar.bz2
Reapply r246012 [dsymutil] Emit real dSYM companion binaries.
With a fix for big endian machines. Thanks to Daniel Sanders for the debugging! Original commit message: The binaries containing the linked DWARF generated by dsymutil are not standard relocatable object files like emitted did previsously. They should be dSYM companion files, which means they have a different file type in the header, but also a couple other peculiarities: - they contain the segments and sections from the original binary in their load commands, but not the actual contents. This means they get an address and a size, but their offset is always 0 (but these are not virtual sections) - they also conatin all the defined symbols from the original binary This makes MC a really bad fit to emit these kind of binaries. The approach that was used in this patch is to leverage MC's section layout for the debug sections, but to use a replacement for MachObjectWriter that lives in MachOUtils.cpp. Some of the low-level helpers from MachObjectWriter were reused too. llvm-svn: 246673
Diffstat (limited to 'llvm/tools/llvm-objdump/MachODump.cpp')
0 files changed, 0 insertions, 0 deletions