[llvm-commits] [llvm] r172538 - /llvm/trunk/lib/IR/Instructions.cpp
Evgeniy Stepanov
eugeni.stepanov at gmail.com
Tue Jan 15 08:43:01 PST 2013
Author: eugenis
Date: Tue Jan 15 10:43:00 2013
New Revision: 172538
URL: http://llvm.org/viewvc/llvm-project?rev=172538&view=rev
Log:
Allow vectors in CreatePointerCast.
Both underlying IR operations support vectors of pointers already.
Modified:
llvm/trunk/lib/IR/Instructions.cpp
Modified: llvm/trunk/lib/IR/Instructions.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/Instructions.cpp?rev=172538&r1=172537&r2=172538&view=diff
==============================================================================
--- llvm/trunk/lib/IR/Instructions.cpp (original)
+++ llvm/trunk/lib/IR/Instructions.cpp Tue Jan 15 10:43:00 2013
@@ -2386,11 +2386,11 @@
CastInst *CastInst::CreatePointerCast(Value *S, Type *Ty,
const Twine &Name,
Instruction *InsertBefore) {
- assert(S->getType()->isPointerTy() && "Invalid cast");
- assert((Ty->isIntegerTy() || Ty->isPointerTy()) &&
+ assert(S->getType()->isPtrOrPtrVectorTy() && "Invalid cast");
+ assert((Ty->isIntOrIntVectorTy() || Ty->isPtrOrPtrVectorTy()) &&
"Invalid cast");
- if (Ty->isIntegerTy())
+ if (Ty->isIntOrIntVectorTy())
return Create(Instruction::PtrToInt, S, Ty, Name, InsertBefore);
return Create(Instruction::BitCast, S, Ty, Name, InsertBefore);
}
More information about the llvm-commits
mailing list