summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/lang/cpp/exceptions/exceptions.cpp
diff options
context:
space:
mode:
authorMomchil Velikov <momchil.velikov@arm.com>2017-07-24 09:19:32 +0000
committerMomchil Velikov <momchil.velikov@arm.com>2017-07-24 09:19:32 +0000
commit81806c5d4d554a94b4e3db10a616ec51b1841d49 (patch)
tree6c5b029c27c5e37e8253b5e42d1a066a92d7930c /lldb/packages/Python/lldbsuite/test/lang/cpp/exceptions/exceptions.cpp
parentf7face4bc435ee608f9e3d2322781d3298ff59b3 (diff)
downloadbcm5719-llvm-81806c5d4d554a94b4e3db10a616ec51b1841d49.tar.gz
bcm5719-llvm-81806c5d4d554a94b4e3db10a616ec51b1841d49.zip
[libunwind] Handle .ARM.exidx tables without sentinel last entry
UnwindCursor<A, R>::getInfoFromEHABISection assumes the last entry in the index table never corresponds to a real function. Indeed, GNU ld always inserts an EXIDX_CANTUNWIND entry, containing the end of the .text section. However, the EHABI specification (http://infocenter.arm.com/help/topic/com.arm.doc.ihi0038b/IHI0038B_ehabi.pdf) does not seem to contain text that requires the presence of a sentinel entry. In that sense the libunwind implementation isn't compliant with the specification. This patch makes getInfoFromEHABISection examine the last entry in the index table if upper_bound returns the end iterator. Fixes https://bugs.llvm.org/show_bug.cgi?id=31091 Differential revision: https://reviews.llvm.org/D35265 llvm-svn: 308871
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/lang/cpp/exceptions/exceptions.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud