aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/SelectionDAG
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2009-04-29 22:47:44 +0000
committerNate Begeman <natebegeman@mac.com>2009-04-29 22:47:44 +0000
commitec8eee2d3a402dd001daae3865bc5c10b41c323e (patch)
tree23ef4feb2d2917e632cae10e2d73878b8fba4f3b /lib/CodeGen/SelectionDAG
parenteb3948be16c37396fb3c50ef2c51f7f2da9c34d9 (diff)
downloadexternal_llvm-ec8eee2d3a402dd001daae3865bc5c10b41c323e.zip
external_llvm-ec8eee2d3a402dd001daae3865bc5c10b41c323e.tar.gz
external_llvm-ec8eee2d3a402dd001daae3865bc5c10b41c323e.tar.bz2
Fix infinite recursion in the C++ code which handles movddup by making it unnecessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70425 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG')
-rw-r--r--lib/CodeGen/SelectionDAG/LegalizeDAG.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
index f772f16..efa62be 100644
--- a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
@@ -3946,8 +3946,8 @@ SDValue SelectionDAGLegalize::LegalizeOp(SDValue Op) {
MVT TVT = MVT::getVectorVT(EVT, NumElems);
if (TLI.isTypeLegal(TVT)) {
// Turn this into a bit convert of the vector input.
- Result = DAG.getNode(ISD::BIT_CONVERT, dl, Node->getValueType(0),
- LegalizeOp(Node->getOperand(0)));
+ Tmp1 = LegalizeOp(Node->getOperand(0));
+ Result = DAG.getNode(ISD::BIT_CONVERT, dl, Node->getValueType(0), Tmp1);
break;
} else if (NumElems == 1) {
// Turn this into a bit convert of the scalar input.