summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/section/TestSectionAPI.py
diff options
context:
space:
mode:
authorPavel Labath <pavel@labath.sk>2019-05-13 11:25:35 +0000
committerPavel Labath <pavel@labath.sk>2019-05-13 11:25:35 +0000
commit1211baa51c504173c58c7282fe60a0f1d4a78c08 (patch)
tree46cfef7d53450c9731eabfd2076e75e27f820a98 /lldb/packages/Python/lldbsuite/test/python_api/section/TestSectionAPI.py
parent6dcef8fc0c671002c017374b48b09be08bf516f1 (diff)
downloadbcm5719-llvm-1211baa51c504173c58c7282fe60a0f1d4a78c08.tar.gz
bcm5719-llvm-1211baa51c504173c58c7282fe60a0f1d4a78c08.zip
Breakpad: Generate unwind plans from STACK CFI records
Summary: This patch implements the GetUnwindPlan interface (added in the previous patch) for SymbolFileBreakpad, and uses it to generate unwind plans from STACK CFI records in breakpad files. We first perform a light-weight parse of the breakpad in order to build up a map of regions covered by the unwind info so that we can later jump to the right record when we need to unwind a specific function. The actual parsing is relatively straight-forward, as the STACK CFI records are just another (text) form of the eh_frame unwind instructions, and the same goes for lldb's UnwindPlans. The newly-introduced PostfixExpression API is used to convert the breakpad postfix expressions into DWARF. The generated dwarf expressions are stored in a BumpPtrAllocator, as the UnwindPlan does not take ownership of the expression data it references (usually this is static data in an object file, so special ownership is needed). At this moment the generated unwind plans aren't used in the actual unwind machinery (only in the image show-unwind command), but that is coming in a separate patch. Reviewers: amccarth, clayborg, markmentovai Subscribers: aprantl, jasonmolenda, lldb-commits Differential Revision: https://reviews.llvm.org/D61733 llvm-svn: 360574
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/section/TestSectionAPI.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud