Make blockaddress(@func, null) be valid, and make 'deleting a basic
block with a blockaddress still referring to it' replace the invalid
blockaddress with a new blockaddress(@func, null) instead of a
inttoptr(1).
This changes the bitcode encoding format, and still needs codegen
support (this should produce a non-zero value, referring to the entry
block of the function would also be quite reasonable).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85678 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/docs/LangRef.html b/docs/LangRef.html
index af0e564..23c07c7 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -2176,11 +2176,13 @@
Blocks</a></div>
<div class="doc_text">
-<p><b><tt>blockaddress(@function, %block)</tt></b></p>
+<p><b><tt>blockaddress(@function, %block)</tt></b><br>
+ <b><tt>blockaddress(@function, null)</tt></b></p>
<p>The '<tt>blockaddress</tt>' constant computes the address of the specified
basic block in the specified function, and always has an i8* type. Taking
- the address of the entry block is illegal.</p>
+ the address of the entry block is illegal. The BasicBlock operand may also
+ be null.</p>
<p>This value only has defined behavior when used as an operand to the
'<a href="#i_indirectbr"><tt>indirectbr</tt></a>' instruction or for comparisons