Actually scalarize the operand to BIT_CONVERT instead of asking someone to do
authorNate Begeman <natebegeman@mac.com>
Thu, 15 May 2008 20:40:58 +0000 (20:40 +0000)
committerNate Begeman <natebegeman@mac.com>
Thu, 15 May 2008 20:40:58 +0000 (20:40 +0000)
something with a v1 type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51160 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

index e8caea2e4918dbb27a314e94d768bf2a0d26869e..155b1a33acc4e7a483d8aabb6eff5044b85d1a2d 100644 (file)
@@ -7110,7 +7110,8 @@ SDOperand SelectionDAGLegalize::ScalarizeVectorOp(SDOperand Op) {
     assert(Result.getValueType() == NewVT);
     break;
   case ISD::BIT_CONVERT:
-    Result = DAG.getNode(ISD::BIT_CONVERT, NewVT, Op.getOperand(0));
+    Result = DAG.getNode(ISD::BIT_CONVERT, NewVT,
+                         ScalarizeVectorOp(Op.getOperand(0)));
     break;
   case ISD::SELECT:
     Result = DAG.getNode(ISD::SELECT, NewVT, Op.getOperand(0),