From: Chris Lattner Date: Thu, 12 Apr 2007 04:44:28 +0000 (+0000) Subject: Fix weirdness handling single element vectors. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=c2941779c3ed1ffbe66716c6f6b2a9fc38a5ea7b;p=oota-llvm.git Fix weirdness handling single element vectors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35941 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/lib/CodeGen/SelectionDAG/TargetLowering.cpp index f1cd9a58a2f..d72c6eb01d4 100644 --- a/lib/CodeGen/SelectionDAG/TargetLowering.cpp +++ b/lib/CodeGen/SelectionDAG/TargetLowering.cpp @@ -303,12 +303,9 @@ unsigned TargetLowering::getVectorTypeBreakdown(const VectorType *PTy, NumVectorRegs <<= 1; } - MVT::ValueType VT; - if (NumElts == 1) { + MVT::ValueType VT = getVectorType(EltTy, NumElts); + if (!isTypeLegal(VT)) VT = EltTy; - } else { - VT = getVectorType(EltTy, NumElts); - } PTyElementVT = VT; MVT::ValueType DestVT = getTypeToTransformTo(VT);