aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2008-05-15 20:40:58 +0000
committerNate Begeman <natebegeman@mac.com>2008-05-15 20:40:58 +0000
commitb434513a20c2df00b8c1cceb4858786fc9baad9e (patch)
tree3ab939cb6d1049b02f98a6da8c4efcbc9064ce9a /lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
parent20a3ca6155c0c136dcc3821eeadfb8bab011754d (diff)
downloadexternal_llvm-b434513a20c2df00b8c1cceb4858786fc9baad9e.zip
external_llvm-b434513a20c2df00b8c1cceb4858786fc9baad9e.tar.gz
external_llvm-b434513a20c2df00b8c1cceb4858786fc9baad9e.tar.bz2
Actually scalarize the operand to BIT_CONVERT instead of asking someone to do
something with a v1 type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51160 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/LegalizeDAG.cpp')
-rw-r--r--lib/CodeGen/SelectionDAG/LegalizeDAG.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
index e8caea2..155b1a3 100644
--- a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
@@ -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),