diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2008-11-24 03:41:24 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2008-11-24 03:41:24 +0000 |
commit | 02ff308aa1c165d37fcf35f618243180ee68eedd (patch) | |
tree | 063f9163cfe13c002a1c88b27aad8e4e0f493c4f /docs/LangRef.html | |
parent | 9f22a4aaaf2bdde843e0b32f85a1951f12f257d5 (diff) | |
download | external_llvm-02ff308aa1c165d37fcf35f618243180ee68eedd.zip external_llvm-02ff308aa1c165d37fcf35f618243180ee68eedd.tar.gz external_llvm-02ff308aa1c165d37fcf35f618243180ee68eedd.tar.bz2 |
Extend the 'noalias' attribute to function return values. This is intended to
indicate functions that allocate, such as operator new, or list::insert. The
actual definition is slightly less strict (for now).
No changes to the bitcode reader/writer, asm printer or verifier were needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59934 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/LangRef.html')
-rw-r--r-- | docs/LangRef.html | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html index b6ea8e9..bc3b40b 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -890,10 +890,11 @@ declare signext i8 @returns_signed_char() return values. </dd> <dt><tt>noalias</tt></dt> - <dd>This indicates that the parameter does not alias any global or any other - parameter. The caller is responsible for ensuring that this is the case, - usually by placing the value in a stack allocation. This is not a valid - attribute for return values.</dd> + <dd>This indicates that the pointer does not alias any global or any other + parameter. The caller is responsible for ensuring that this is the + case. Additionally, on a function return value <tt>noalias</tt> indicates + that the pointer does not alias the return value from other calls of + itself or other noalias functions.</dd> <dt><tt>nest</tt></dt> <dd>This indicates that the pointer parameter can be excised using the @@ -3155,7 +3156,7 @@ choose to align the allocation on any convenient boundary.</p> <h5>Semantics:</h5> <p>Memory is allocated using the system "<tt>malloc</tt>" function, and -a pointer is returned. The result of a zero byte allocattion is undefined. The +a pointer is returned. The result of a zero byte allocation is undefined. The result is null if there is insufficient memory available.</p> <h5>Example:</h5> |