aboutsummaryrefslogtreecommitdiff
path: root/docs/GarbageCollection.html
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-09-12 17:53:10 +0000
committerChris Lattner <sabre@nondot.org>2007-09-12 17:53:10 +0000
commit36597a5ddb11d9f84638a8e1e8cfa28292eeced0 (patch)
treed6a0bbbdc7bea7f15aa635128f2a5fddb4c6ae1f /docs/GarbageCollection.html
parentea58310496531693ff58563906330480548378bb (diff)
Change llvm.gcroot to not init the root to null at runtime, this prevents
using it for live-in values etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41879 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/GarbageCollection.html')
-rw-r--r--docs/GarbageCollection.html7
1 files changed, 4 insertions, 3 deletions
diff --git a/docs/GarbageCollection.html b/docs/GarbageCollection.html
index 0accd0c78a..e39e85ce3c 100644
--- a/docs/GarbageCollection.html
+++ b/docs/GarbageCollection.html
@@ -166,9 +166,7 @@ interface that front-end authors should generate code for.
The <tt>llvm.gcroot</tt> intrinsic is used to inform LLVM of a pointer variable
on the stack. The first argument contains the address of the variable on the
stack, and the second contains a pointer to metadata that should be associated
-with the pointer (which <b>must</b> be a constant or global value address). At
-runtime, the <tt>llvm.gcroot</tt> intrinsic stores a null pointer into the
-specified location to initialize the pointer.</p>
+with the pointer (which <b>must</b> be a constant or global value address).</p>
<p>
Consider the following fragment of Java code:
@@ -193,6 +191,9 @@ Entry:
%X = alloca %Object*
...
+ ;; Java null-initializes pointers.
+ store %Object* null, %Object** %X
+
;; "CodeBlock" is the block corresponding to the start
;; of the scope above.
CodeBlock: