OSDN Git Service

Cleanup after r230934 per Dave's suggestions.
authorOwen Anderson <resistor@mac.com>
Tue, 3 Mar 2015 05:39:27 +0000 (05:39 +0000)
committerOwen Anderson <resistor@mac.com>
Tue, 3 Mar 2015 05:39:27 +0000 (05:39 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231056 91177308-0d34-0410-b5e6-96231b3b80d8

lib/AsmParser/LLParser.cpp
test/Assembler/getelementptr_invalid_ptr.ll

index de566b6..925af4e 100644 (file)
@@ -5460,11 +5460,12 @@ int LLParser::ParseGetElementPtr(Instruction *&Inst, PerFunctionState &PFS) {
     return true;
 
   Type *PtrTy = Ptr->getType();
-  if (!isa<SequentialType>(PtrTy))
-    return Error(Loc, "pointer type is not valid");
   if (VectorType *VT = dyn_cast<VectorType>(PtrTy))
     PtrTy = VT->getElementType();
-  if (Ty != cast<SequentialType>(PtrTy)->getElementType())
+  SequentialType *SeqPtrTy = dyn_cast<SequentialType>(PtrTy);
+  if (!SeqPtrTy)
+    return Error(Loc, "pointer type is not valid");
+  if (Ty != SeqPtrTy->getElementType())
     return Error(ExplicitTypeLoc,
                  "explicit pointee type doesn't match operand's pointee type");
 
index 8296dd3..ff12deb 100644 (file)
@@ -1,5 +1,4 @@
-; RUN: not llvm-as < %s >/dev/null 2> %t
-; RUN: FileCheck %s < %t
+; RUN: not llvm-as < %s 2>&1 | FileCheck %s
 ; Test the case of an invalid pointer type on a GEP
 
 ; CHECK: pointer type is not valid