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 | f8b94812a15515efd5a9ddf422358bad5ebb4105 (patch) | |
tree | 848a092b7662d2a366f490858b7f7d8458c55096 /docs/LangRef.html | |
parent | 4a03775777785ef758cff8c0699a6bf571a1f2b9 (diff) | |
download | external_llvm-f8b94812a15515efd5a9ddf422358bad5ebb4105.zip external_llvm-f8b94812a15515efd5a9ddf422358bad5ebb4105.tar.gz external_llvm-f8b94812a15515efd5a9ddf422358bad5ebb4105.tar.bz2 |
Document function notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55808 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/LangRef.html')
-rw-r--r-- | docs/LangRef.html | 38 |
1 files changed, 37 insertions, 1 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html index 4d73aaa..5669114 100644 --- a/docs/LangRef.html +++ b/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> |