diff options
author | Devang Patel <dpatel@apple.com> | 2008-09-04 23:05:13 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2008-09-04 23:05:13 +0000 |
commit | caacdbab3da51e713c17c83d432dd412660f3c5c (patch) | |
tree | df2dc355e5af51e2254bd5a0089deacb3d20714d | |
parent | 6c94b99c6285f6f7156edd20fabf4c0918013600 (diff) | |
download | bcm5719-llvm-caacdbab3da51e713c17c83d432dd412660f3c5c.tar.gz bcm5719-llvm-caacdbab3da51e713c17c83d432dd412660f3c5c.zip |
Document function notes.
llvm-svn: 55808
-rw-r--r-- | llvm/docs/LangRef.html | 38 |
1 files changed, 37 insertions, 1 deletions
diff --git a/llvm/docs/LangRef.html b/llvm/docs/LangRef.html index 4d73aaafe8d..56691145273 100644 --- a/llvm/docs/LangRef.html +++ b/llvm/docs/LangRef.html @@ -750,7 +750,8 @@ an optional <a href="#linkage">linkage type</a>, an optional <a href="#paramattrs">parameter attribute</a> for the return type, a function name, a (possibly empty) argument list (each with optional <a href="#paramattrs">parameter attributes</a>), an optional section, an -optional alignment, an optional <a href="#gc">garbage collector name</a>, an +optional alignment, an optional <a href="#gc">garbage collector name</a>, +an optional <a href="#notes">function notes</a>, an opening curly brace, a list of basic blocks, and a closing curly brace. LLVM function declarations consist of the "<tt>declare</tt>" keyword, an @@ -912,6 +913,41 @@ the named garbage collection algorithm.</p> <!-- ======================================================================= --> <div class="doc_subsection"> + <a name="notes">Function Notes</a> +</div> + +<div class="doc_text"> +<p>Each function may specify function notes.</p> + +<div class="doc_code"> +<pre>define void @f() notes(inline=Always) { ... }</pre> +<pre>define void @f() notes(inline=Always,opt-size) { ... }</pre> +<pre>define void @f() notes(inline=Never,opt-size) { ... }</pre> +<pre>define void @f() notes(opt-size) { ... }</pre> +</div> + +<p> +<li>inline=Always +<p> +This note requests inliner to inline this function irrespective of +inlining size threshold for this function. +</p></li> +<li>inline=Never +<p> +This note requests inliner to never inline this function in any situation. +This note may not be used together with inline=Always note. +</p></li> +<li>opt-size +<p> +This note suggests optimization passes and code generator passes to make +choices that help reduce code size. +</p></li> +<p> +The notes that are not documented here are considered invalid notes. +</div> + +<!-- ======================================================================= --> +<div class="doc_subsection"> <a name="moduleasm">Module-Level Inline Assembly</a> </div> |