[Hexagon] Properly handle instruction selection of vsplat intrinsics
llvm-svn: 269312
diff --git a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
index c782638..6783ed3 100644
--- a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
@@ -1044,11 +1044,12 @@
return SelectCode(N);
}
- SDValue const &V = N->getOperand(1);
+ SDValue V = N->getOperand(1);
SDValue U;
if (isValueExtension(V, Bits, U)) {
SDValue R = CurDAG->getNode(N->getOpcode(), SDLoc(N), N->getValueType(0),
- N->getOperand(0), U);
+ N->getOperand(0), U);
+ ReplaceUses(N, R.getNode());
return SelectCode(R.getNode());
}
return SelectCode(N);