diff options
| author | Vedant Kumar <vsk@apple.com> | 2018-06-25 17:06:18 +0000 |
|---|---|---|
| committer | Vedant Kumar <vsk@apple.com> | 2018-06-25 17:06:18 +0000 |
| commit | b725c69f123a8c7b437d8508d43c0d5d5244ed50 (patch) | |
| tree | 1fbede4707d66d8696675d199cf2756160145580 /llvm/lib | |
| parent | dea343d2b3248901e51cd5cbbd7584969f308b3f (diff) | |
| download | bcm5719-llvm-b725c69f123a8c7b437d8508d43c0d5d5244ed50.tar.gz bcm5719-llvm-b725c69f123a8c7b437d8508d43c0d5d5244ed50.zip | |
[SelectionDAG] Remove debug locations from ConstantSD(FP)Nodes
This removes debug locations from ConstantSDNode and ConstantSDFPNode.
When this kind of node is materialized we no longer create a line table
entry which jumps back to the constant's first point of use. This makes
single-stepping behavior smoother, and it matches the model used by IR,
where Constants have no locations. See this thread for more context:
http://lists.llvm.org/pipermail/llvm-dev/2018-June/124164.html
I'd like to handle constant BuildVectorSDNodes and to try to eliminate
passing SDLocs to SelectionDAG::getConstant*() in follow-up commits.
Differential Revision: https://reviews.llvm.org/D48468
llvm-svn: 335497
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index 4fdd3de0ebc..20c0c35332e 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -1243,7 +1243,7 @@ SDValue SelectionDAG::getConstant(const ConstantInt &Val, const SDLoc &DL, return SDValue(N, 0); if (!N) { - N = newSDNode<ConstantSDNode>(isT, isO, Elt, DL.getDebugLoc(), EltVT); + N = newSDNode<ConstantSDNode>(isT, isO, Elt, EltVT); CSEMap.InsertNode(N, IP); InsertNode(N); NewSDValueDbgMsg(SDValue(N, 0), "Creating constant: ", this); @@ -1286,7 +1286,7 @@ SDValue SelectionDAG::getConstantFP(const ConstantFP &V, const SDLoc &DL, return SDValue(N, 0); if (!N) { - N = newSDNode<ConstantFPSDNode>(isTarget, &V, DL.getDebugLoc(), EltVT); + N = newSDNode<ConstantFPSDNode>(isTarget, &V, EltVT); CSEMap.InsertNode(N, IP); InsertNode(N); } |

