Simplify some GEP checks in the verifier.
authorDuncan Sands <baldrick@free.fr>
Fri, 3 Feb 2012 17:28:51 +0000 (17:28 +0000)
committerDuncan Sands <baldrick@free.fr>
Fri, 3 Feb 2012 17:28:51 +0000 (17:28 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149698 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/Verifier.cpp

index 642930352f4a18a9693b1192a0dcde899d86058f..066c2e76d6cf70fdad7a69651b4cabcd80b1fb92 100644 (file)
@@ -1315,11 +1315,9 @@ void Verifier::visitShuffleVectorInst(ShuffleVectorInst &SV) {
 }
 
 void Verifier::visitGetElementPtrInst(GetElementPtrInst &GEP) {
-  Type *TargetTy = GEP.getPointerOperandType();
-  if (VectorType *VTy = dyn_cast<VectorType>(TargetTy))
-    TargetTy = VTy->getElementType();
+  Type *TargetTy = GEP.getPointerOperandType()->getScalarType();
 
-  Assert1(dyn_cast<PointerType>(TargetTy),
+  Assert1(isa<PointerType>(TargetTy),
     "GEP base pointer is not a vector or a vector of pointers", &GEP);
   Assert1(cast<PointerType>(TargetTy)->getElementType()->isSized(),
           "GEP into unsized type!", &GEP);