[llvm-dev] [SelectionDAG] DbgValue nodes aren't transferred
Se Jong Oh via llvm-dev
llvm-dev at lists.llvm.org
Fri Mar 9 11:04:48 PST 2018
Hi,
I have a problem that dbg_value nodes are not transferred when integer DAG nodes are promoted. For example, an i32 add node is promoted to a i64 add node by DAGTypeLegalizer::PromoteIntegerResult and its dbg_value node is not transferred to the new node.
t9: i32 = add nsw t5, t8 --> t31: i64 = add t30, t7 ; the dbg_value node is not transferred to the new i64 add node.
For expansion, DAGTypeLegalizer::SetExpandedInteger calls transferDbgValues() but I couldn't find any place to call trasnferDbgValues() for integer type promotion in DAGTypeLegalizer ::SetPromotedInteger and other places. I am wondering If I miss anything or the legalization needs to call transferDbgValues() for this case.
I found this problem because a recently added unittest, DebugInfo/Generic/linear-dbg-value.ll fails for my project, and the x86 and aarch64 backends don't have this problem since they don't promote i32 add nodes.
Thanks,
Sejong
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180309/aa0b9cdf/attachment.html>
More information about the llvm-dev
mailing list