From: Chris Lattner Date: Wed, 12 Nov 2003 07:13:37 +0000 (+0000) Subject: Detect problems with PHI node operands! X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=579de71d08a8fd3ae95aa32e5ca89b01db978813;p=oota-llvm.git Detect problems with PHI node operands! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9916 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/VMCore/Verifier.cpp b/lib/VMCore/Verifier.cpp index 1362eaab0f6..d38ed1d5d2a 100644 --- a/lib/VMCore/Verifier.cpp +++ b/lib/VMCore/Verifier.cpp @@ -340,6 +340,12 @@ void Verifier::visitPHINode(PHINode &PN) { "PHI nodes not grouped at top of basic block!", &PN, PN.getParent()); + // Check that all of the operands of the PHI node have the same type as the + // result. + for (unsigned i = 0, e = PN.getNumIncomingValues(); i != e; ++i) + Assert1(PN.getType() == PN.getIncomingValue(i)->getType(), + "PHI node operands are not the same type as the result!", &PN); + // All other PHI node constraints are checked in the visitBasicBlock method. visitInstruction(PN);