Update this to match the documentation in the GC doc and to match actual
practice.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26766 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/docs/LangRef.html b/docs/LangRef.html
index 0dd26bf..160a3e2 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -2917,7 +2917,7 @@
<h5>Syntax:</h5>
<pre>
- declare sbyte* %llvm.gcread(sbyte** %Ptr)
+ declare sbyte* %llvm.gcread(sbyte* %ObjPtr, sbyte** %Ptr)
</pre>
<h5>Overview:</h5>
@@ -2928,8 +2928,10 @@
<h5>Arguments:</h5>
-<p>The argument is the address to read from, which should be an address
-allocated from the garbage collector.</p>
+<p>The second argument is the address to read from, which should be an address
+allocated from the garbage collector. The first object is a pointer to the
+start of the referenced object, if needed by the language runtime (otherwise
+null).</p>
<h5>Semantics:</h5>
@@ -2950,7 +2952,7 @@
<h5>Syntax:</h5>
<pre>
- declare void %llvm.gcwrite(sbyte* %P1, sbyte** %P2)
+ declare void %llvm.gcwrite(sbyte* %P1, sbyte* %Obj, sbyte** %P2)
</pre>
<h5>Overview:</h5>
@@ -2961,8 +2963,10 @@
<h5>Arguments:</h5>
-<p>The first argument is the reference to store, and the second is the heap
-location to store to.</p>
+<p>The first argument is the reference to store, the second is the start of the
+object to store it to, and the third is the address of the field of Obj to
+store to. If the runtime does not require a pointer to the object, Obj may be
+null.</p>
<h5>Semantics:</h5>