diff options
author | Jason Molenda <jason@molenda.com> | 2022-05-05 14:13:23 -0700 |
---|---|---|
committer | Jason Molenda <jason@molenda.com> | 2022-05-05 14:18:21 -0700 |
commit | b6388e4a0050fa248f774f5dacfa3e566e8daef1 (patch) | |
tree | 04cc9ba1e26639e0b8c1c53dfd909fad74516072 /clang/lib/Frontend/FrontendActions.cpp | |
parent | 586802eb72907f2380e319a08fbe5728807544e3 (diff) | |
download | llvm-b6388e4a0050fa248f774f5dacfa3e566e8daef1.zip llvm-b6388e4a0050fa248f774f5dacfa3e566e8daef1.tar.gz llvm-b6388e4a0050fa248f774f5dacfa3e566e8daef1.tar.bz2 |
Decr return pc mid-stack when picking UnwindPlan row
When picking the UnwindPlan row to use to backtrace,
off of the zeroth frame, decrement the return pc so
we're in the address range of the call instruction.
If this is a noretrun function call, the instruction
at the "return address" is likely an entirely different
basic block with possibly very different unwind rules,
and this can cause the backtrace to be incorrect.
Differential Revision: https://reviews.llvm.org/D124957
rdar://84651805
Diffstat (limited to 'clang/lib/Frontend/FrontendActions.cpp')
0 files changed, 0 insertions, 0 deletions