diff options
author | Vedant Kumar <vsk@apple.com> | 2018-12-15 00:03:33 +0000 |
---|---|---|
committer | Vedant Kumar <vsk@apple.com> | 2018-12-15 00:03:33 +0000 |
commit | fbf6864d1a804d6db312c6f22670caa5fe14564e (patch) | |
tree | 56ea8484c880b0a63b9af6979a2356cc2e8d27cc /lldb/source/Symbol/ClangASTContext.cpp | |
parent | 1b06ee821dbe97caa55ed1aea77cbd4d9ab40467 (diff) |
[Util] Refer to [s|z]exts of args when converting dbg.declares (fix PR35400)
When converting dbg.declares, if the described value is a [s|z]ext,
refer to the ext directly instead of referring to its operand.
This fixes a narrowing bug (the debugger got the sign of a variable
wrong, see llvm.org/PR35400).
The main reason to refer to the ext's operand was that an optimization
may remove the ext itself, leading to a dropped variable. Now that
InstCombine has been taught to use replaceAllDbgUsesWith (r336451), this
is less of a concern. Other passes can/should adopt this API as needed
to fix dropped variable bugs.
Differential Revision: https://reviews.llvm.org/D51813
Diffstat (limited to 'lldb/source/Symbol/ClangASTContext.cpp')
0 files changed, 0 insertions, 0 deletions