summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2017-02-27 20:44:59 +0000
committerRui Ueyama <ruiu@google.com>2017-02-27 20:44:59 +0000
commit1720ef1343539e33b6d3a53de489d58deb07cb3e (patch)
treecc5f61526df581cff727855dc25a9f4f1a91c834 /lldb/packages/Python/lldbsuite/test/python_api
parent3ead2e73ee4a0be4ae3b102c80331456f6c63020 (diff)
downloadbcm5719-llvm-1720ef1343539e33b6d3a53de489d58deb07cb3e.tar.gz
bcm5719-llvm-1720ef1343539e33b6d3a53de489d58deb07cb3e.zip
Add terminator to .eh_frame sections
Patch by Mark Kettenis. Currenlty ld.lld does not add a terminator (a CIE with its length field set to zero) to the .eh_frame sections it generates. While the relevant standards (the AMD64 SysV ABI and the Linux LSB) are not explicit about this, such a terminator is expected by some unwinder implementations and seems to be always emitted by ld.bfd. In addition to that, the Linux LSB https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/ehframechpt.html#EHFRAME explicitly says that The .eh_frame section shall contain 1 or more Call Frame Information (CFI) records. Currently, if the .eh_frame sections of the input files only contain terminators, ld.lld emits a zero=sized .eh_frame section which clearly doesn't meet that requirement. The diff makes sure a terminator gets added to each .eh_frame section and adjusts all the relevant tests to account for that. An additional test isn't needed as these adjustments mean that the existence of the terminator is tested for by several tests already. Differential Revision: https://reviews.llvm.org/D30335 llvm-svn: 296378
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud