From: Anton Korobeynikov Date: Thu, 8 May 2008 23:11:06 +0000 (+0000) Subject: Check for validity of aliasee pointer before dereference. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=018f77139892111d36ecf5580856dba4cc4b75d1;p=oota-llvm.git Check for validity of aliasee pointer before dereference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50878 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/VMCore/Verifier.cpp b/lib/VMCore/Verifier.cpp index 75636d0bdda..aec5974209b 100644 --- a/lib/VMCore/Verifier.cpp +++ b/lib/VMCore/Verifier.cpp @@ -367,9 +367,11 @@ void Verifier::visitGlobalAlias(GlobalAlias &GA) { Assert1(GA.hasExternalLinkage() || GA.hasInternalLinkage() || GA.hasWeakLinkage(), "Alias should have external or external weak linkage!", &GA); + Assert1(GA.getAliasee(), + "Aliasee cannot be NULL!", &GA); Assert1(GA.getType() == GA.getAliasee()->getType(), "Alias and aliasee types should match!", &GA); - + if (!isa(GA.getAliasee())) { const ConstantExpr *CE = dyn_cast(GA.getAliasee()); Assert1(CE && CE->getOpcode() == Instruction::BitCast &&