aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGExprConstant.cpp
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2010-01-02 23:43:59 +0000
committerEli Friedman <eli.friedman@gmail.com>2010-01-02 23:43:59 +0000
commit8ac5549e726f67c2d37647ecad6d543e71f82950 (patch)
tree4289ab667b8a5a96aa0eece5d5d142b5ad91c5d4 /lib/CodeGen/CGExprConstant.cpp
parent12c6d260d57e6baab4e329d73d9d97594eac6c24 (diff)
Get rid of some unnecessary code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92432 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGExprConstant.cpp')
-rw-r--r--lib/CodeGen/CGExprConstant.cpp29
1 files changed, 2 insertions, 27 deletions
diff --git a/lib/CodeGen/CGExprConstant.cpp b/lib/CodeGen/CGExprConstant.cpp
index d428983f01..3236d3950e 100644
--- a/lib/CodeGen/CGExprConstant.cpp
+++ b/lib/CodeGen/CGExprConstant.cpp
@@ -633,32 +633,6 @@ public:
return ConstStructBuilder::BuildStruct(CGM, CGF, ILE);
}
- llvm::Constant *EmitVectorInitialization(InitListExpr *ILE) {
- const llvm::VectorType *VType =
- cast<llvm::VectorType>(ConvertType(ILE->getType()));
- const llvm::Type *ElemTy = VType->getElementType();
- std::vector<llvm::Constant*> Elts;
- unsigned NumElements = VType->getNumElements();
- unsigned NumInitElements = ILE->getNumInits();
-
- unsigned NumInitableElts = std::min(NumInitElements, NumElements);
-
- // Copy initializer elements.
- unsigned i = 0;
- for (; i < NumInitableElts; ++i) {
- Expr *Init = ILE->getInit(i);
- llvm::Constant *C = CGM.EmitConstantExpr(Init, Init->getType(), CGF);
- if (!C)
- return 0;
- Elts.push_back(C);
- }
-
- for (; i < NumElements; ++i)
- Elts.push_back(llvm::Constant::getNullValue(ElemTy));
-
- return llvm::ConstantVector::get(VType, Elts);
- }
-
llvm::Constant *VisitImplicitValueInitExpr(ImplicitValueInitExpr* E) {
return CGM.EmitNullConstant(E->getType());
}
@@ -682,8 +656,9 @@ public:
if (ILE->getType()->isUnionType())
return EmitUnionInitialization(ILE);
+ // If ILE was a constant vector, we would have handled it already.
if (ILE->getType()->isVectorType())
- return EmitVectorInitialization(ILE);
+ return 0;
assert(0 && "Unable to handle InitListExpr");
// Get rid of control reaches end of void function warning.