diff options
author | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2016-05-12 17:21:40 +0000 |
---|---|---|
committer | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2016-05-12 17:21:40 +0000 |
commit | e60e5fee0a16e1792f336bf4ae97d2f5ec7abb4a (patch) | |
tree | df39661ffc6108ea4aaf4d6b5b699cba04d4f305 /llvm/lib | |
parent | 7a947b6c6d4e4502aab21f51fa2be7144bcb757f (diff) | |
download | bcm5719-llvm-e60e5fee0a16e1792f336bf4ae97d2f5ec7abb4a.tar.gz bcm5719-llvm-e60e5fee0a16e1792f336bf4ae97d2f5ec7abb4a.zip |
[Hexagon] Properly handle instruction selection of vsplat intrinsics
llvm-svn: 269312
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp index c782638123b..6783ed3b3ad 100644 --- a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp +++ b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp @@ -1044,11 +1044,12 @@ SDNode *HexagonDAGToDAGISel::SelectIntrinsicWOChain(SDNode *N) { 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); |