summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-readobj/llvm-readobj.cpp
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>2016-05-04 03:09:40 +0000
committerJason Molenda <jmolenda@apple.com>2016-05-04 03:09:40 +0000
commit955dcf2dbc5085a657051cb388809d6f4df6b432 (patch)
tree88a957ba84731e8db1c2397e14281f8055ec877a /llvm/tools/llvm-readobj/llvm-readobj.cpp
parent8195f696e493508b4784fbf94471e966457931b1 (diff)
downloadbcm5719-llvm-955dcf2dbc5085a657051cb388809d6f4df6b432.tar.gz
bcm5719-llvm-955dcf2dbc5085a657051cb388809d6f4df6b432.zip
Add a way for an ObjectFile to indicate that assembly emulation
should not be used for this module -- for use when an ObjectFile knows that it does not have meaningful or accurate function start addresses. More commonly, it is not clear that function start addresses are missing in a module. There are certain cases on Mac OS X where we can tell that a Mach-O binary has been stripped of this essential information, and the unwinder can end up emulating many megabytes of instructions for a single "function" in the binary. When a Mach-O binary is missing both an LC_FUNCTION_STARTS load command (very unusual) and an eh_frame section, then we will assume it has also been stripped of symbols and that instruction emulation will not be useful on this module. <rdar://problem/25988067> llvm-svn: 268475
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud