llvm-project/lldb
Jason Molenda 4b2b8b96db Re-land Unwind past an interrupt handler correctly on arm or at pc==0
Updated the patch to only fetch $pc on a Return Address-using
target only if we're in a trap frame *and* if there is a saved
location for $pc in the trap frame's unwind rules.  If not,
we fall back to fetching the Return Address register (eg $lr).

Original commit msg:

    Unwind past an interrupt handler correctly on arm or at pc==0

    Fix RegisterContextLLDB::InitializeNonZerothFrame so that it
    will fetch a FullUnwindPlan instead of falling back to the
    architectural default unwind plan -- GetFullUnwindPlan knows
    how to spot a jmp 0x0 that results in a fault, which may be
    the case when we see a trap handler on the stack.

    Fix RegisterContextLLDB::SavedLocationForRegister so that when
    the pc value is requested from a trap handler frame, where we
    have a complete register context available to us, don't provide
    the Return Address register (lr) instead of the pc.  We have
    an actual pc value here, and it's pointing to the instruction
    that faulted.

    Differential revision: https://reviews.llvm.org/D75007
    <rdar://problem/59416588>
2020-02-25 14:58:20 -08:00
..
bindings [lldb/Plugins] Move SBTarget::GetExtendedCrashInformation to SBProcess 2020-02-24 23:37:04 +01:00
cmake Allow customized relative PYTHONHOME (Attemp 1) 2020-02-21 16:25:30 -08:00
docs [lldb]: fix typo in lldb-gdb-remote.txt 2020-02-20 14:30:12 +01:00
examples [lldb] Make gdbremote.py utility py2and3 compatible 2020-02-13 09:18:55 +01:00
include/lldb [lldb][NFC] Move NameSearchContext to own header/source files 2020-02-25 12:25:36 +01:00
packages/Python/lldbsuite [lldb] Disable auto fix-its when evaluating expressions in the test suite 2020-02-24 09:31:11 +01:00
resources
scripts [lldb/Scripts] Remove swig_bot_lib/__init__.py 2020-01-16 09:15:41 -08:00
source Re-land Unwind past an interrupt handler correctly on arm or at pc==0 2020-02-25 14:58:20 -08:00
test Fix a race between lldb's packet timeout and the profile thread's usleep. 2020-02-25 11:17:08 -08:00
third_party/Python/module Increase timeout in pexpect to lower chances of tests failing under ASAN. 2019-10-10 16:16:49 +00:00
tools Fix a race between lldb's packet timeout and the profile thread's usleep. 2020-02-25 11:17:08 -08:00
unittests [LLDB] Let DataExtractor deal with two-byte addresses 2020-02-25 16:27:38 +01:00
utils [lldb] Update header guards to be consistent and compliant with LLVM (NFC) 2020-02-17 23:15:40 -08:00
.clang-format
.gitignore Add .noindex to the gitignore 2019-04-05 17:57:42 +00:00
CMakeLists.txt [lldb/Cmake] Add a CMakeLists.txt to the utils directory... 2020-01-16 22:31:01 -08:00
CODE_OWNERS.txt [lldb][NFC] Cleanup mentions and code related to lldb-mi 2019-07-19 15:55:23 +00:00
LICENSE.TXT Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
use_lldb_suite_root.py