it isn't valid to take the address of the entry block.
authorChris Lattner <sabre@nondot.org>
Fri, 30 Oct 2009 22:15:48 +0000 (22:15 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 30 Oct 2009 22:15:48 +0000 (22:15 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85621 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/Verifier.cpp

index 06eccc0ba45b7d042e4d22d92076bdb9bf544504..fc90148b8b5a98471f17e5f958952174ef807ad1 100644 (file)
@@ -658,6 +658,8 @@ void Verifier::visitFunction(Function &F) {
     BasicBlock *Entry = &F.getEntryBlock();
     Assert1(pred_begin(Entry) == pred_end(Entry),
             "Entry block to function must not have predecessors!", Entry);
+    Assert1(!Entry->hasAddressTaken(),
+            "blockaddress may not be used with the entry block!", Entry);
   }
   
   // If this function is actually an intrinsic, verify that it is only used in