diff options
author | Jeremy Morse <jeremy.morse.llvm@gmail.com> | 2019-08-21 09:22:31 +0000 |
---|---|---|
committer | Jeremy Morse <jeremy.morse.llvm@gmail.com> | 2019-08-21 09:22:31 +0000 |
commit | 67443c3c6ec2c9625183c2f48162894c57d239b8 (patch) | |
tree | 85fe8d019c872f27eafc61ffe032aaa3c01e6fc5 /lldb/packages/Python/lldbsuite/test/python_api/thread/main2.cpp | |
parent | 2d337fdc95f651b4b256bb1a73621ee2e737ca5e (diff) | |
download | bcm5719-llvm-67443c3c6ec2c9625183c2f48162894c57d239b8.tar.gz bcm5719-llvm-67443c3c6ec2c9625183c2f48162894c57d239b8.zip |
[DebugInfo] Avoid dropping location info across block boundaries
LiveDebugValues propagates variable locations between blocks by creating
new DBG_VALUE insts in the successors, then interpreting them when it
passes back through the block at a later time. However, this flushes out
any extra information about the location that LiveDebugValues holds: for
example, connections between variable locations such as discussed in
D65368. And as reported in PR42772 this causes us to lose track of the
fact that a spill-location is actually a spill, not a register location.
This patch fixes that by deferring the creation of propagated DBG_VALUEs
until after propagation has completed: instead location propagation occurs
only by sharing location ID numbers between blocks.
Differential Revision: https://reviews.llvm.org/D66412
llvm-svn: 369508
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/thread/main2.cpp')
0 files changed, 0 insertions, 0 deletions