summaryrefslogtreecommitdiff
path: root/docs/ReleaseNotes.html
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2009-03-02 16:58:00 +0000
committerDuncan Sands <baldrick@free.fr>2009-03-02 16:58:00 +0000
commit05c709517d2790acb4d6a3a630c3da78a87398ab (patch)
tree22774bdb767bd1e665fb6f5dd1b0e656877f194c /docs/ReleaseNotes.html
parentdd3e6722d90984f8911853622a5f2dfb47b9c308 (diff)
downloadllvm-05c709517d2790acb4d6a3a630c3da78a87398ab.tar.gz
llvm-05c709517d2790acb4d6a3a630c3da78a87398ab.tar.bz2
llvm-05c709517d2790acb4d6a3a630c3da78a87398ab.tar.xz
Try to make the meaning of 'nocapture' a bit clearer. I
commented out the line about simplifylibcalls because I think this doesn't work in the release (it was fixed in svn after the release branched). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65846 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/ReleaseNotes.html')
-rw-r--r--docs/ReleaseNotes.html17
1 files changed, 10 insertions, 7 deletions
diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html
index 3501c5f0d6..b40d2d414e 100644
--- a/docs/ReleaseNotes.html
+++ b/docs/ReleaseNotes.html
@@ -368,13 +368,16 @@ produces a .o file (thus they are invisible to the linker).</li>
<li>LLVM IR supports two new attributes for better alias analysis. The <a
href="LangRef.html#paramattrs">noalias</a> attribute can now be used on the
return value of a function to indicate that it returns new memory (e.g.
-'malloc', 'calloc', etc).</li>
-
-<li>The new <a href="LangRef.html#paramattrs">nocapture</a> attribute can be
-used on pointer arguments to functions that access through but do not return the
-pointer in a data structure that out lives the call (e.g. 'strlen', 'memcpy',
-and many others). The simplifylibcalls pass applies these attributes to
-standard libc functions.</li>
+'malloc', 'calloc', etc).
+The new <a href="LangRef.html#paramattrs">nocapture</a> attribute can be used
+on pointer arguments to indicate that the function does not return the pointer,
+store it in an object that outlives the call, or let the value of the pointer
+escape from the function in any other way.
+Note that it is the pointer itself that must not escape, not the value it
+points to: loading a value out of the pointer is perfectly fine.
+Many standard library functions (e.g. 'strlen', 'memcpy') have this property.
+<!-- The simplifylibcalls pass applies these attributes to standard libc functions. -->
+</li>
<li>The parser for ".ll" files in lib/AsmParser is now completely rewritten as a
recursive descent parser. This parser produces better error messages (including