summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-03-14 20:02:51 +0000
committerChris Lattner <sabre@nondot.org>2006-03-14 20:02:51 +0000
commitf9228076409509dc8f6f3d41e05038391febda27 (patch)
treef24d4efb2f3024451e5529195f1581a631821bc6 /llvm
parentc9cf65c2f80e45b3007807aa03368c628cc30d66 (diff)
downloadbcm5719-llvm-f9228076409509dc8f6f3d41e05038391febda27.tar.gz
bcm5719-llvm-f9228076409509dc8f6f3d41e05038391febda27.zip
Update this to match the documentation in the GC doc and to match actual
practice. llvm-svn: 26766
Diffstat (limited to 'llvm')
-rw-r--r--llvm/docs/LangRef.html16
1 files changed, 10 insertions, 6 deletions
diff --git a/llvm/docs/LangRef.html b/llvm/docs/LangRef.html
index 0dd26bfee6d..160a3e251ad 100644
--- a/llvm/docs/LangRef.html
+++ b/llvm/docs/LangRef.html
@@ -2917,7 +2917,7 @@ the runtime to find the pointer at GC safe points.
<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 @@ barriers.</p>
<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 @@ garbage collector runtime, as needed.</p>
<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 @@ barriers (such as generational or reference counting collectors).</p>
<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>
OpenPOWER on IntegriCloud