Fix PR2113 by verifying allocations.

llvm-svn: 47792
This commit is contained in:
Chris Lattner 2008-03-01 09:01:57 +00:00
parent 903ee68639
commit ffe0da0eb2
2 changed files with 14 additions and 3 deletions

View File

@ -1041,9 +1041,12 @@ void Verifier::visitStoreInst(StoreInst &SI) {
}
void Verifier::visitAllocationInst(AllocationInst &AI) {
const PointerType *Ptr = AI.getType();
Assert(Ptr->getAddressSpace() == 0,
"Allocation instruction pointer not in the generic address space!");
const PointerType *PTy = AI.getType();
Assert1(PTy->getAddressSpace() == 0,
"Allocation instruction pointer not in the generic address space!",
&AI);
Assert1(PTy->getElementType()->isSized(), "Cannot allocate unsized type",
&AI);
visitInstruction(AI);
}

View File

@ -0,0 +1,8 @@
; RUN: not llvm-as -f %s -o /dev/null |& grep {Cannot allocate unsized type}
; PR2113
define void @test() {
%A = alloca void()
ret void
}