aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
diff options
context:
space:
mode:
authorFrederic Riss <friss@apple.com>2015-08-26 05:10:04 +0000
committerFrederic Riss <friss@apple.com>2015-08-26 05:10:04 +0000
commitfae69e6d4be07b45117d0bbb0374bbe3ba4d9c45 (patch)
tree170ac8bfffff5722c2a99ff90844c42e70696816 /lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
parent2c69d36db1107bafabc5d139cb4314aeae36f150 (diff)
downloadllvm-fae69e6d4be07b45117d0bbb0374bbe3ba4d9c45.zip
llvm-fae69e6d4be07b45117d0bbb0374bbe3ba4d9c45.tar.gz
llvm-fae69e6d4be07b45117d0bbb0374bbe3ba4d9c45.tar.bz2
[dsymutil] Emit real dSYM companion binaries.
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: 246012
Diffstat (limited to 'lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp')
0 files changed, 0 insertions, 0 deletions