fix a buggy assertion, CreateIntegerCast should allow
authorChris Lattner <sabre@nondot.org>
Sun, 10 Jan 2010 20:21:42 +0000 (20:21 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 10 Jan 2010 20:21:42 +0000 (20:21 +0000)
integer vectors as well as just integers.

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

lib/VMCore/Instructions.cpp

index 3733b6a776968fb13c1c67acbfe821f858a5520b..2619047cb3065bacda0bf37cb784fe61b8341494 100644 (file)
@@ -2285,7 +2285,8 @@ CastInst *CastInst::CreatePointerCast(Value *S, const Type *Ty,
 CastInst *CastInst::CreateIntegerCast(Value *C, const Type *Ty, 
                                       bool isSigned, const Twine &Name,
                                       Instruction *InsertBefore) {
-  assert(C->getType()->isInteger() && Ty->isInteger() && "Invalid cast");
+  assert(C->getType()->isIntOrIntVector() && Ty->isIntOrIntVector() &&
+         "Invalid integer cast");
   unsigned SrcBits = C->getType()->getScalarSizeInBits();
   unsigned DstBits = Ty->getScalarSizeInBits();
   Instruction::CastOps opcode =