From: Craig Topper Date: Sat, 9 Sep 2017 05:57:19 +0000 (+0000) Subject: [X86] Use ReplaceNode instead of ReplaceUses when converting X86ISD::SHRUNKBLEND... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=97293278fdc7082a7612ff075ff73abc9eb7b064;p=llvm [X86] Use ReplaceNode instead of ReplaceUses when converting X86ISD::SHRUNKBLEND to ISD::VSELECT during isel. This ensures that the SHRUNKBLEND node gets erased immediately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@312856 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/X86ISelDAGToDAG.cpp b/lib/Target/X86/X86ISelDAGToDAG.cpp index 1b02cbb1699..48c987a2891 100644 --- a/lib/Target/X86/X86ISelDAGToDAG.cpp +++ b/lib/Target/X86/X86ISelDAGToDAG.cpp @@ -2326,7 +2326,7 @@ void X86DAGToDAGISel::Select(SDNode *Node) { SDValue VSelect = CurDAG->getNode( ISD::VSELECT, SDLoc(Node), Node->getValueType(0), Node->getOperand(0), Node->getOperand(1), Node->getOperand(2)); - ReplaceUses(SDValue(Node, 0), VSelect); + ReplaceNode(Node, VSelect.getNode()); SelectCode(VSelect.getNode()); // We already called ReplaceUses. return;